SQL 适配器中的诊断跟踪和消息日志记录

诊断跟踪有助于有效地诊断使用适配器时可能遇到的问题。 适配器客户端可以在两个级别激活诊断跟踪:

  • 在适配器客户端和适配器之间

  • 在适配器内

    本部分提供有关在这些级别激活跟踪的信息。

适配器客户端和适配器之间的跟踪

适配器客户端可以启用 WCF 跟踪来跟踪适配器客户端和适配器之间的问题。 WCF 跟踪用于使用 WCF 服务模型跟踪来自适配器客户端的输入 XML,可用于诊断序列化问题。 WCF 跟踪不用于 WCF 通道模型,也不用于从适配器到适配器客户端的输出消息。 可以通过将摘录添加到相应的配置文件来激活 BizTalk 应用程序和 WCF 服务模型应用程序的 WCF 跟踪。 此外,还可以在设计时和运行时启用跟踪。

  • 在设计时跟踪。 对于设计时体验,可以使用“添加适配器服务引用插件”、“使用适配器服务加载项”或“添加适配器元数据向导”。 所有这些工具都可以从 Visual Studio 中使用。 因此,若要启用设计时体验跟踪,必须将摘录添加到安装驱动器>:\Program Files\Microsoft Visual Studio version\Common7\IDE 中的< devenv.exe.config 文件。><

  • 运行时跟踪。 对于运行时跟踪,必须根据所使用的应用程序添加摘录。

    • 对于BizTalk Server应用程序,必须将摘录添加到 BizTalk 配置文件中,通常 BTSNTSvc.exe.config。对于BizTalk Server,此文件通常在安装驱动器>:\Program Files\Microsoft BizTalk Server 下<提供。

    • 对于 WCF 服务模型 .NET 应用程序,必须将摘录添加到项目的 app.config 文件中。

    若要启用 WCF 跟踪,请在 标记中添加 <configuration> 以下摘录。

<system.diagnostics>  
    <sources>  
      <source name ="System.ServiceModel" switchValue="Verbose">  
        <listeners>  
          <add name="xml" />  
        </listeners>  
      </source>  
      <source name ="System.ServiceModel.MessageLogging"   
              switchValue="Verbose, ActivityTracing">          
        <listeners>  
          <add name="xml" />  
        </listeners>  
      </source>  
      <source name ="System.Runtime.Serialization" switchValue="Verbose">  
        <listeners>  
          <add name="xml" />  
        </listeners>  
      </source>  
   </sources>  
   <sharedListeners>  
      <add name="xml" type="System.Diagnostics.XmlWriterTraceListener"                
           traceOutputOptions="LogicalOperationStack"   
           initializeData="C:\log\WCFTrace.svclog" />  
   </sharedListeners>  
   <trace autoflush="true" />  
  </system.diagnostics>  
  <system.serviceModel>  
    <diagnostics>  
      <messageLogging   
           logEntireMessage="true"   
           logMalformedMessages="false"  
           logMessagesAtServiceLevel="true"   
           logMessagesAtTransportLevel="false"/>  
    </diagnostics>      
  </system.serviceModel>  

这会将 WCF 跟踪保存到 C:\log\WCFTrace.svclog。 有关 WCF 跟踪的详细信息,请参阅 跟踪

重要

确保通过启用跟踪来缓解暴露敏感业务数据的潜在安全威胁。 有关建议,请参阅 保护 SQL 适配器的最佳做法

适配器中的跟踪

适配器将不同类别的有用信息记录到跟踪文件中,例如错误、警告和信息消息。 这些信息有助于了解适配器中的进程流和诊断适配器的问题。 可以通过将摘录添加到相应的配置文件来激活 BizTalk 应用程序和 WCF 服务模型应用程序的 WCF LOB 适配器 SDK 和适配器跟踪。 此外,还可以在设计时和运行时启用跟踪。

  • 在设计时跟踪。 对于设计时体验,可以使用“添加适配器服务引用插件”、“使用适配器服务加载项”或“添加适配器元数据向导”。 所有这些工具都可以从 Visual Studio 中使用。 因此,若要启用设计时体验跟踪,必须将摘录添加到安装驱动器>:\Program Files\Microsoft Visual Studio version\Common7\IDE 中的< devenv.exe.config 文件。><

  • 运行时跟踪。 对于运行时跟踪,必须根据所使用的应用程序添加摘录。

    • 对于BizTalk Server应用程序,必须将摘录添加到 BizTalk 配置文件中,通常 BTSNTSvc.exe.config。对于BizTalk Server,此文件通常在安装驱动器>:\Program Files\Microsoft BizTalk Server 下<提供。

    • 对于 WCF 服务模型 .NET 应用程序,必须将摘录添加到项目的 app.config 文件中。

    若要启用 WCF LOB 适配器 SDK 和适配器跟踪,请在 标记中添加 <configuration> 以下摘录。

<system.diagnostics>  
    <sources>  
      <source name="Microsoft.ServiceModel.Channels" switchValue="Error">  
        <listeners>  
          <add name="xml" />  
        </listeners>  
      </source>  
      <source name="Microsoft.Adapters.Sql" switchValue="Information">  
        <listeners>  
          <add name="xml" />  
        </listeners>  
      </source>  
    </sources>  
    <sharedListeners>  
      <add name="xml" type="System.Diagnostics.XmlWriterTraceListener"   
   traceOutputOptions="LogicalOperationStack"   
          initializeData="C:\log\AdapterTrace.svclog" />  
    </sharedListeners>  
    <trace autoflush="true" />  
  </system.diagnostics>  

这会将 WCF 跟踪保存到 C:\log\AdapterTrace.svclog。

查看跟踪

可以使用 Windows Communication Foundation (WCF) Service 跟踪查看器工具查看跟踪。 有关该工具的详细信息,请参阅 使用服务跟踪查看器查看相关跟踪和问题

配置 BizTalk 应用程序的跟踪

BizTalk Server管理控制台允许你为项目配置各种跟踪选项,例如发送端口和接收端口。 跟踪配置设置使你能够跟踪入站和出站事件数据、消息属性、消息正文和业务流程。 有关为 BizTalk 应用程序配置跟踪的详细信息,请参阅 管理项目

还可以使用运行状况和活动跟踪 (HAT) 查看历史数据或跟踪的数据。 有关详细信息,请参阅 查看历史和跟踪的数据

另请参阅

SQL 适配器疑难解答