DRDA 服务支持多个并发跟踪侦听器,包括默认文本编码器、默认控制台编码器和可选的自定义编码器。 drdaServiceTraceListeners 元素包含一个或多个 drdaServiceTraceListener 元素,以指示 DRDA 服务器将跟踪输出发送到可选的自定义文本跟踪侦听器。
系统诊断
DRDA 服务支持一组共享侦听器,以将信息记录到文本、控制台和事件日志。 MsDrdaService.exe.config 文件的 hostIntegration.drdaAs.drdaService 节的 system.diagnostics 元素定义和控制各种侦听器。
应用配置
用于启用文本和控制台跟踪侦听器的 MsDrdaService.exe.config 元素、属性和值的示例。
<system.diagnostics>
<sources>
<source name="DrdaAs" switchName="sourceSwitch" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<!--<add name="DrdaAsTextListener" />
<add name="DrdaAsConsoleListener" />
<add name="DrdaETWListener"/>
<add name="EventLog" />
-->
<remove name="Default" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="DrdaAsTextListener"
type="Microsoft.HostIntegration.Drda.Common.DrdaTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"
initializeData="MsDrdaService.DSTF"
traceOutputOptions="None"
autoFlush="true"
traceLevel="0"
maxTraceEntries="1000000"
maxTraceFiles="10"
/>
<add name="DrdaAsConsoleListener"
type="Microsoft.HostIntegration.Drda.Common.DrdaConsoleTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"
traceOutputOptions="None"
traceLevel="3"
/>
<add name="EventLog"
type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
initializeData="DrdaService1" >
<filter type="System.Diagnostics.EventTypeFilter"
initializeData="Error,Warning,Information"/>
</add>
<add name="DrdaETWListener"
type="Microsoft.HostIntegration.Drda.Common.DrdaEventProviderTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"
initializeData="{3B4388CE-50E0-404C-A62B-E9C87D4F3BC4}"
traceLevel="0"/>
</sharedListeners>
</system.diagnostics>
启用跟踪
默认情况下,DRDA 服务跟踪侦听器处于禁用状态。 若要启用 DRDA 服务的跟踪侦听器,请取消注释 MsDrdaService.exe.config 文件中 system.diagnostics 部分的源元素中的一个或多个元素。 此外,为了启用跟踪,请在 MsDrdaService.exe.config 文件的 system.diagnostics 部分的 sharedListeners 元素中,为每个目标跟踪侦听器的 traceLevel 属性设置一个介于 1 到 4 之间的正值。
<sources>
<source name="DrdaAs" switchName="sourceSwitch" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<!--<add name="DrdaAsTextListener" />-->
<!--<add name="DrdaAsConsoleListener" />-->
<add name="DrdaETWListener"/>
<add name="EventLog" />
<remove name="Default" />
</listeners>
</source>
</sources>
MsDrdaService.exe.config 文件的 system.diagnostics 节中的 sources 元素示例
文本跟踪监听器
DRDA 服务文本跟踪侦听器将跟踪数据输出到磁盘文件。
跟踪侦听器名称
名称属性定义 DRDA 服务文本跟踪侦听器的名称。 此 必需 属性 仅接受一个字符串,其值仅限 DrdaAsTextListener 。
跟踪侦听器类型
类型属性定义 DRDA 服务文本跟踪侦听器的类型。 此 必需 属性接受一个 字符串,其值为 Microsoft.HostIntegration.Drda.Common.DrdaTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL。
跟踪侦听器初始化
initializeData 属性定义要创建的磁盘文件类型。 此 必需 属性仅接受字符串,其值只能为 MsDrdaService.DSTF。
跟踪文件文件夹
traceFileFolder 属性指示 DRDA 服务在何处写入文本侦听器跟踪输出文件。 此 可选 属性接受 字符串 值。 默认值为 C:\Program Files\Microsoft Host Integration Server 2013\traces。
注释
每个用户帐户必须具有跟踪文件夹的写入访问权限,才能在文本跟踪文件中插入行。 每个用户帐户都需要与 HIS 运行时用户本地组关联的文件夹访问控制列表设置。 有关详细信息,请参阅标题为“安全和保护”的部分。
自动冲洗
autoFlush 属性指示 DRDA 服务自动将数据刷新到跟踪侦听器。 此可选属性接受 布尔 值。 默认值为 true。
注释
DRDA 服务可以自动将跟踪数据刷新到跟踪侦听器,这可以确保捕获跟踪数据,但会增加磁盘 I/O 并降低整体系统性能。 若要提高性能,请将 autoFlush=false 设置为禁用自动跟踪刷新。
最大跟踪条目数
maxTraceEntries 属性指示 DRDA 服务跟踪最大条目数,然后停止跟踪。 此 可选 属性接受 整数。 默认值为 1000000。
跟踪输出选项
DRDA 服务不使用 traceOutputOptions 属性。 此 可选 属性接受 字符串 值。 默认值为 none。
跟踪级别
traceLevel 属性指示 DRDA 服务跟踪定义的信息集合,从最小到最大跟踪级别。 此 可选 属性接受 整数 值。 默认值为 0,用于禁用跟踪。
| 价值 | DESCRIPTION |
|---|---|
| 0 | 输出无跟踪消息。 |
| 1 | 输出错误消息。 |
| 2 | 输出警告消息和错误消息。 |
| 3 | 输出信息消息、警告消息和错误消息。 |
| 4 | 输出所有消息。 |
DRDA 服务跟踪侦听器级别。
控制台追踪侦听器
DRDA 服务控制台跟踪侦听器将跟踪数据输出到命令控制台窗口。
跟踪侦听器名称
名称属性定义 DRDA 服务文本跟踪侦听器的名称。 此 必需 属性接受一个 字符串,其值只能为 DrdaAsConsoleListener。
跟踪侦听器类型
类型属性定义 DRDA 服务文本跟踪侦听器的类型。 此必需属性接收一个字符串,其值为 Microsoft.HostIntegration.Drda.Common.DrdaConsoleTraceListener、Microsoft.HostIntegration.Drda.Common、Version=9.0.1000.0、Culture=neutral、PublicKeyToken=31bf3856ad364e35、processorArchitecture=MSIL。
跟踪输出选项
DRDA 服务不使用 traceOutputOptions 属性。 此 可选 属性接受 字符串 值。 默认值为 none。
跟踪级别
traceLevel 属性指示 DRDA 服务跟踪定义的信息集合,从最小到最大跟踪级别。 此 可选 属性接受 整数 值。 默认值 为 3,用于禁用跟踪。
ETW 跟踪侦听器
DRDA 服务 ETW(Windows 事件跟踪)跟踪侦听器作为 ETW 提供程序,通过 ETW 会话将跟踪数据输出到 Windows作系统 ETW 控制器。 管理员可以使用 ProviderId GUID“3B4388CE-50E0-404C-A62B-E9C87D4F3BC4”注册 ETW 提供程序。 ETW 使用者可以读取 ETW 日志文件或侦听 ETW 会话以获取实时事件。
跟踪侦听器名称
名称属性定义 DRDA 服务文本跟踪侦听器的名称。 必需 的此属性接受一个字符串,其值为DrdaETWListener。
跟踪侦听器类型
类型属性定义 DRDA 服务 ETW 跟踪侦听器的类型。 此 必需 属性接受一个 字符串,其值为 Microsoft.HostIntegration.Drda.Common。 DrdaEventProviderTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL.
跟踪侦听器初始化
initializeData 属性定义用于将 ETW 提供程序注册到 ETW 控制器的 ETW ProviderID GUID。 此 必需 属性 接受字符串,值为 3B4388CE-50E0-404C-A62B-E9C87D4F3BC4。
跟踪级别
traceLevel 属性指示 DRDA 服务跟踪定义的信息集合,从最小到最大跟踪级别。 此 可选 属性接受 整数 值。 默认值为 0,用于禁用跟踪。
事件日志侦听器
DRDA 服务事件日志侦听器将日志数据输出到 Windows 事件日志。
事件日志侦听器名称
名称属性定义 DRDA 服务事件日志侦听器的名称。 此必需属性接受包含 EventLog 值的字符串。
事件日志侦听器类型
类型属性定义 DRDA 服务事件日志侦听器的类型。 此 必需 属性 接受字符串,值为 System.Diagnostics.EventLogTraceListener、System、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089。
事件日志侦听器初始化
initializeData 属性定义 DRDA 服务器服务实例。 此 必需 属性 接受一个字符串,其值为 DrdaService1。
事件日志侦听器筛选器
筛选器元素指示 DRDA 服务按筛选器类型记录数据。 此必需元素包含两个属性:类型;和 initializData。
事件日志筛选器类型
筛选器元素的 type 属性定义筛选器类型。 此 必需 属性 接受字符串值 ,值为 System.Diagnostics.EventTypeFilter。
事件日志筛选器级别
initializeData 属性指示 DRDA 服务记录定义的信息集合。 此 可选 属性接受 字符串 值。 默认值为 Error,Warning,Information,其中包括所有事件日志级别。
| 价值 | DESCRIPTION |
|---|---|
| 错误 | 此值指示 DRDA 服务仅记录错误级别数据。 |
| 警告 | 此值指示 DRDA 服务仅记录警告级别数据。 |
| 信息 | 此值指示 DRDA 服务仅记录信息级别数据 |
DRDA 服务事件日志侦听器的级别。
自定义跟踪侦听器
DRDA 服务以 .NET Framework 自定义侦听器的形式支持自定义跟踪侦听器。 有关自定义跟踪侦听器示例的信息,请参阅程序员指南和参考。 drdaServiceTraceListeners 元素包含一个或多个 drdaServiceTraceListener 元素,以指示 DRDA 服务器将跟踪输出发送到可选的自定义文本跟踪侦听器。 drdaServiceTraceListener 元素包含一组用于定义自定义跟踪侦听器的属性。 该类型是 Microsoft.HostIntegration.Drda.Common.BaseDrdaTraceListener,定义了一个 DRDA 服务器自定义跟踪侦听器。
DRDA 服务将把文本跟踪输出处理后发送到 MsDrdaService.exe.config 中引用的自定义跟踪侦听器,如下所示。
<drdaServiceTraceListeners>
<drdaServiceTraceListener type="Microsoft.HostIntegration.Drda.Common.BaseDrdaTraceListener, Microsoft.HostIntegration.Drda.Common, Version=9.0.1000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"
traceLevel="4"/>
</drdaServiceTraceListeners>
DRDA 服务应用程序配置文件中自定义跟踪侦听器的默认值。
跟踪级别
traceLevel 属性指示 DRDA 服务跟踪定义的信息集合,从最小到最大跟踪级别。 此 可选 属性接受 整数 值。 默认值为 0,用于禁用跟踪。
设置
设置属性指示 DRDA 服务将信息传递给自定义绑定侦听器。 此 可选 属性接受 字符串 值。 默认值为 none。