0

我正在通过以下链接尝试 BizTalk 的一项功能 https://masteringbiztalkserver.wordpress.com/category/pipelines/

到现在为止,我从来不需要去事件日志来检查任何条目。现在,当我尝试从 BizTalk 应用程序获取事件日志中记录的自定义消息时,当我重新启动 BizTalk 主机实例时,除了 2 个条目外,我没有看到来自 BizTalk 的任何相关条目。

根据我的研究,我在应用程序编排中以表达式形状写下了以下代码:

xmlMessage = InputMessage;
stringMessage = xmlMessage.OuterXml;
System.Diagnostics.EventLog.WriteEntry("BizTalk Server", stringMessage);

这里的InputMessage是在我创建的示例模式的编排中定义的消息。

我的应用程序已正确构建和部署,并且它也在正确处理消息。只是当我故意停止发送端口时,我没有看到我的代码或暂停消息的任何登录事件查看器。

下面链接的讨论也没有帮助 没有来自 BizTalk 的事件日志 我在我的 Windows 7 Ultimate 机器上配置了 BizTalk Server。我是机器的管理员。

4

2 回答 2

2

对此有几点看法:

  • BizTalk 服务器不会记录挂起消息的事件,这就是您看不到的原因。
  • 您永远不应使用 BizTalk Server 事件源,因为 BizTalk 产品拥有它
  • 您可以使用 PowerShell 轻松创建自己的自定义事件源。

要创建自定义事件源,请使用以下内容:

new-eventlog -logname "Application" -Source "MyApplicationThatLogs"

要使用此事件源编写,请使用以下内容:

System.Diagnostics.EventLog.WriteEntry("MyApplicationThatLogs", "Some Error Occured!", System.Diagnostics.EventLogEntryType.Error, 100, 0);

于 2016-05-29T14:56:58.420 回答
0

System.Diagnostics.EventLog我建议您使用BizTalk CAT Instrumentation Framework ,而不是用于调试目的。

对于管道

TraceManager.PipelineComponent.TraceInfo(stringMessage);

对于编排

Microsoft.BizTalk.CAT.BestPractices.Framework.Instrumentation.TraceManager.WorkflowComponent.TraceInfo(stringMessage);

它允许在需要时进行实时跟踪,“您可以在生产服务器上启用跟踪,而对性能的影响可以忽略不计(当跟踪到文件时)。”

于 2016-05-29T23:09:48.227 回答