ETW频道提供商 - 频道名称

时间:2014-07-22 15:41:47

标签: c# etw

我正在使用最新的EventSource Nuget-Package来创建事件日志,其中每个应用程序都为不同类型的日志获取自己的文件夹。

随着游戏的进行,我发现我无法简单地更改日志名称。 我尝试在清单文件中更改它并注册新通道,显示其新名称。不幸的是,每次向这些日志发起的事件都不会再出现,直到我注册了一个具有预定义频道名称的新频道。

有机会改变吗?由于我必须在每台机器上创建清单文件,我必须以编程方式更改它,因为通道名称是由预定义值(管理员,操作等等)创建的。

要明确:我想更改以下名称并将所有日志写入这些频道。

Channels

自动生成的Sample-manifest:

<instrumentationManifest xmlns="http://schemas.microsoft.com/win/2004/08/events">
 <instrumentation xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:win="http://manifests.microsoft.com/win/2004/08/windows/events">
  <events xmlns="http://schemas.microsoft.com/win/2004/08/events">
<provider name="Samples-EventSourceDemos-EventLog" guid="{d89ec17d-ee69-5275-eb6f-0c826bb76bd8}" resourceFileName="E:\EventlogTest\bin\Debug\EventlogTest.Samples-EventSourceDemos-EventLog.etwManifest.dll" messageFileName="E:\EventlogTest\bin\Debug\EventlogTest.Samples-EventSourceDemos-EventLog.etwManifest.dll" symbol="SamplesEventSourceDemosEventLog">
 <channels>
  <channel chid="Admin" name="Samples-EventSourceDemos-EventLog/Admin" value="16" type="Admin" enabled="true"/>
  <channel chid="Analytic" name="Samples-EventSourceDemos-EventLog/Analytic" value="18" type="Analytic" enabled="false"/>
  <channel chid="Debug" name="Samples-EventSourceDemos-EventLog/Debug" value="19" type="Debug" enabled="false"/>
 </channels>
 <tasks>
  <task name="Request" message="$(string.task_Request)" value="1"/>
  <task name="DebugTrace" message="$(string.task_DebugTrace)" value="65530"/>
 </tasks>
 <opcodes>
 </opcodes>
 <keywords>
  <keyword name="Requests" message="$(string.keyword_Requests)" mask="0x1"/>
  <keyword name="Debug" message="$(string.keyword_Debug)" mask="0x2"/>
  <keyword name="Session3" message="$(string.keyword_Session3)" mask="0x100000000000"/>
  <keyword name="Session2" message="$(string.keyword_Session2)" mask="0x200000000000"/>
  <keyword name="Session1" message="$(string.keyword_Session1)" mask="0x400000000000"/>
  <keyword name="Session0" message="$(string.keyword_Session0)" mask="0x800000000000"/>
 </keywords>
 <events>
  <event value="1" version="0" level="win:Error" symbol="RequestStart" message="$(string.event_RequestStart)" keywords="Requests" opcode="win:Start" task="Request" channel="Admin" template="RequestStartArgs"/>
  <event value="2" version="0" level="win:Error" symbol="RequestPhase" message="$(string.event_RequestPhase)" keywords="Requests" task="Request" channel="Analytic" template="RequestPhaseArgs"/>
  <event value="3" version="0" level="win:Error" symbol="RequestStop" message="$(string.event_RequestStop)" keywords="Requests" opcode="win:Stop" task="Request" channel="Admin" template="RequestStopArgs"/>
  <event value="4" version="0" level="win:Error" symbol="DebugTrace" message="$(string.event_DebugTrace)" keywords="Debug" task="DebugTrace" channel="Debug" template="DebugTraceArgs"/>
 </events>
 <templates>
  <template tid="RequestStartArgs">
   <data name="RequestID" inType="win:Int32"/>
   <data name="Url" inType="win:UnicodeString"/>
  </template>
  <template tid="RequestPhaseArgs">
   <data name="RequestID" inType="win:Int32"/>
   <data name="PhaseName" inType="win:UnicodeString"/>
  </template>
  <template tid="RequestStopArgs">
   <data name="RequestID" inType="win:Int32"/>
  </template>
  <template tid="DebugTraceArgs">
   <data name="Message" inType="win:UnicodeString"/>
  </template>
 </templates>
</provider>
</events>
</instrumentation>
<localization>
 <resources culture="de-DE">
  <stringTable>
   <string id="event_DebugTrace" value="DebugMessage: %1"/>
   <string id="event_RequestPhase" value="Entering Phase %2 for request %1"/>
   <string id="event_RequestStart" value="Start processing request%n%t*** %1 ***%nfor URL%n%t=== %2 ==="/>
   <string id="event_RequestStop" value="Stop processing request%n%t*** %1 ***"/>
   <string id="keyword_Debug" value="Debug"/>
   <string id="keyword_Requests" value="Requests"/>
   <string id="keyword_Session0" value="Session0"/>
   <string id="keyword_Session1" value="Session1"/>
   <string id="keyword_Session2" value="Session2"/>
   <string id="keyword_Session3" value="Session3"/>
   <string id="task_DebugTrace" value="DebugTrace"/>
   <string id="task_Request" value="Request"/>
  </stringTable>
 </resources>
</localization>
</instrumentationManifest>

感谢您的帮助。

0 个答案:

没有答案