WMB_NOTE_学习笔记4

 

 

填好各项数据,需要注意的是这里的端口是队列管理器的侦听端口,然后可以填入我们想入队的消息,也可以选择已有的文件内容作为消息入队。这里有一个问题,需要把对应的队列管理器的CCSID改成819,方法如下:

queue manager CCSID 参数的方法:

 

1. strmqm qmgr_name #启动queue manager

2. runmqsc qmgr_name #进入MQSC交互模式

3. DISPLAY QMGR CCSID #显示queue manager的CCSID

4. ALTER QMGR CCSID(819) #修改queue manager的CCSID =1208

5. END #结束MQSC交互模式

 

 

五、WMB调试

在WMB中要调试需要安装RAC,为需要调试的项目新建调试

 

 

流引擎名即为代理名加上执行组名称。

可以再节点连线上打断点,也可以在ESQL中打上断点:

 

 

如果调试过程中有问题,可以简单的参看”事件日志”:

 

还可以进行trace跟踪:

跟踪分为user trace 和 service trace ,user trace 对代理、执行组、消息流提供详细记录。后者更详细,还包括工作台、配置管理器、用户名服务器的详细工作记录。

跟踪开关缺省时关闭的,可以再WMBT视图中打开,(用户跟踪)也可以通过控制台命令打开。

 

控制台命令: mqsichangetrace 代理名 -u -e 执行组名 -l normal(debug) -c 500

-l 表示记录级别, -c表示记录文件大小,以KB为单位。

运行完一次消息流后用mqsireadlog命令将trace 内容输出到文件:

Mqsireadlog 代理名 -u -e 执行组名 -o trace.xml

再格式化trace文件:

Mqsiformatlog -i trace.xml -o trace.txt

通常用完跟踪后需关闭跟踪开关,因为跟踪的系统开销比较大:

Mqsichangetrace 代理名 -u -e 执行组名 -l none -r

-r 表示清空 trace从头记录。

Trace输出文件可以到\IBM\MQSI 目录下查看。

 

 

六、逻辑树

消息流中输入节点把消息从比特流解析成逻辑树形式,而输出接点相反,逻辑树是消息流中表达消息组织形式的唯一方式,可在ESQL中直接引用操作。

WMB中有4个逻辑树:Message、Environment、LocalEnvironment、Exceptionlist。

(1)Message树中根为root,其下有多个分支, propertis分支用于存放消息属性,如消息集、类型、格式、编码、字符集等等。Body分支用于存放消息体。

(2)Environment用来存放各种数据,贯穿整个消息流执行过程,它是唯一的全局逻辑树。

 

如果要建立上面Environment的内容,使用下面ESQL语句:

SET Environment.Variables = ROW(‘granary’ AS bread, ‘riesling’ AS wine, ‘stilton’ AS cheese);

SET Environment.Variables.Colors[] =

LIST{‘yellow’, ‘green’, ‘blue’, ‘red’, ‘black’};

SET Environment.Variables.Country[] = LIST{ROW(‘UK’ AS name, ‘pound’ AS currency),

ROW(‘USA’ AS name, ‘dollar’ AS currency)};

 

(3)LocalEnvironment下的Variables相当于一块共享空间。可以存放任何临时数据。还可以使用 LocalEnvironment 树来定义消息可以送达的目的地。

 

Variables

此子树是可选的。如果创建本地环境变量,建议您将这些变量存储在名为 Variables 的子树中。

Destination

此子树由许多子代组成,这些子代表明将消息导向哪种消息传输类型(”传输”标 识),或是 RouteToLabel 节点使用的目标 Label 节点。

WrittenDestination

此子树包含已写入消息的地址。其名称是固定的。

 

 

 

 

(4)Exceptionlist:在消息流正常执行过程中Exceptionlist始终为空,当有异常情况时WMB构建Exceptionlist。

 

十.ESQL

1、对常量名、模式名、标号大小写敏感,除此之外大小写不敏感。

2、五种基本类型:boolean, datetime, numric, string, reference.

3、变量种类:normal, external, shared.

Normal为普通变量,在定义范围内可见,不可被多个并发线程实例共享。

External实际上是数据常量,只能读不能改,可以被消息流的所有线程实例共享。

Shared变量可以被单个消息流所有线程实例共享。

4、访问数据库:

可创建并配置消息流中的 ESQL 以访问用户数据库。

可使用多个 ESQL 语句和函数以访问数据库:

INSERT 语句

INSERT 语句将行添加到数据库表

UPDATE 语句

UPDATE 语句更改一个或多个存储在零或多行中的值

DELETE FROM 语句

DELETE FROM 语句除去零或多行

SELECT 函数

SELECT 函数检索来自表的数据

CALL 语句

CALL 语句调用存储过程

PASSTHRU 语句

PASSTHRU 语句可用于调用创建表等管理操作

PASSTHRU 函数

PASSTHRU 函数可用于调用复杂选择

以下文章点击率最高

Loading…


发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注