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…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營

發表評論

您的電子郵箱地址不會被公開。 必填項已用*標註