簡體   English   中英

在單個服務器上沒有向SemanticLogging服務注冊任何事件

[英]No events registered with SemanticLogging service on single server

我正在嘗試從企業庫語義記錄應用程序塊中獲取SemanticLogging-svc.exe,以偵聽自定義事件源的事件並將其轉儲到控制台。

這對於我的本地主機和開發服務器都很好,但是對於生產服務器卻沒有任何輸出。 因此,我正在尋找可能的答案。

控制台輸出很簡單:

Event Trace Session prefix: Microsoft-SemanticLogging-Etw

Sink name: ConsoleEventSink
Event sources:
Name: b3b81ce4-1cb6-512c-f02f-46aefff0344d
INNOMATE-HR-Security, Level: LogAlways, MatchAnyKeyword: None

Service started.

我的SemanticLogging-svc.xml看起來像這樣:

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns="http://schemas.microsoft.com/practices/2013/entlib/semanticlogging/etw"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://schemas.microsoft.com/practices/2013/entlib/semanticlogging/etw SemanticLogging-svc.xsd">
  <traceEventService/>
  <sinks>
    <consoleSink name="ConsoleEventSink">
      <sources>
        <eventSource name="INNOMATE-HR-Security" level="LogAlways"/>
      </sources>
      <eventTextFormatter header="+=========================================+"/>
    </consoleSink>
  </sinks>
</configuration>

Windows事件日志中沒有事件。

我也嘗試過rollingFlatFileSink。 這將導致生產服務器上的文件為空,但可在其他系統上使用。

在PerfMon>數據收集器集>事件跟蹤會話中查看,我看到Microsoft-SemanticLogging-Etw-ConsoleEventSink正在運行。

使用PerfView,可以正確收集我的事件。

有問題的服務器是運行Windows Server 2008 R2的較舊服務器。

我是否缺少某些設置,或者有人對為什么它不起作用有其他解釋嗎?

提前致謝。

看來,SemanticLogging-svc服務的標識沒有創建ETW會話,注冊提供程序或從ETW會話中讀取事件所需的權限。

將SemanticLogging-svc服務實例的標識添加到Performance Log Users Windows組。

您是否嘗試過使用與PerfView相同的帳戶或具有管理員權限來運行SemanticLogging-svc服務?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM