如何在代理日志中打印消息

时间:2015-06-23 14:53:41

标签: ibm-mq messagebroker

我一直在搜索Internet和ESQL / WebSphere MessageBroker文档,以找到打印变量值的方法,以便我可以在Broker Logs中跟踪它。与java中的System.out.println()一样。

由于某些技术问题,我无法调试消息流,因此您可以建议我如何操作或任何变通方法。

3 个答案:

答案 0 :(得分:1)

用户跟踪应该满足您的需要,将跟踪节点放在您要记录的位置,选择文件跟踪并提供文件路径, 模式给出:

${CURRENT_TIMESTAMP}
${Root}
${Environment}
${LocalEnvironment}
${ExceptionList}

所以它会记录所有内容。

如果它位于较高的环境中,则必须使用mqsichangetrace命令启用流程跟踪。

答案 1 :(得分:0)

可能最简单的方法是:

1)在Environment中将临时位置设置为变量的值:SET Environment.temp = yourVar;

2)随后,在Trace节点中,将Trace节点的Basic选项卡上的Pattern设置为该临时位置:$ {Environment.temp}

3)配置Trace节点以打印到文件,用户跟踪或本地错误日志。

4)部署并运行流程。然后查看Trace节点的输出。

答案 2 :(得分:0)

UserTrace应该为ESQL实现这个角色,但如果UserTrace没有帮助,那么我看到很多人使用从ESQL到java的静态调用,然后记录。

java代码可以像写入stdout一样简单(它将放在/ var / mqsi / components // stdout中),但更常见的是我看到这种模式与现有的java日志框架如log4J一起使用。

这种方法的优点是可以统一JCN和ESQL计算节点之间的日志记录。