2011-04-26 75 views
0

我有許多應用程序想要記錄到Splunk。我將通過UDP監聽器以XML格式發送數據。正在被髮送的數據是這樣的:Splunk錯誤地重寫xml輸入

<log4j:event logger="ASP.global_asax" level="INFO" timestamp="1303830487907" thread="15"> 
    <log4j:message>New session started</log4j:message> 
    <log4j:properties> 
    <log4j:data name="log4japp" value="4ef113dd-9-129483040292873753(4644)" /> 
    <log4j:data name="log4jmachinename" value="W7-SUN-JSTANTON" /> 
    </log4j:properties> 
</log4j:event> 

然而,當它是由Splunk的處理看來像:

Apr 26 16:18:09 127.0.0.1 <log4j:message>New session started</log4j:message><log4j:properties><log4j:data name="log4japp" value="4ef113dd-9-129483040292873753(4644)"/><log4j:data name="log4jmachinename" value="W7-SUN-JSTANTON"/></log4j:properties></log4j:event> 

基本上它看起來像的Splunk看起來有覆蓋開口節點,並且如導致日誌級別數據丟失的結果以及它接收到的日期時間。發送它的應用程序使用nLog和log4j類型的目標(使用Log4JXmlEventLayout佈局)。我已經將源類型配置爲log4jxml(自定義名稱),但我認爲我需要告訴它不要在props.conf文件中使用日期/時間字段(但不太確定這是什麼)。

我也使用Splunk的Windows版本,因此文件路徑與在線手冊略有不同。

任何幫助將是最受歡迎的。

回答

0

事實證明我錯了(也許更多,但我還沒有發現尚未放入系統) 做兩件事情在inputs.conf文件,我需要添加以下到我的輸入定義:

no_priority_stripping = true 
no_appending_timestamp = true 

我做了錯事的第二件事是把這些文件

C:\Program Files\Splunk\etc\system\local\ 

時,他們應該已經投入

C:\Program Files\Splunk\etc\apps\search\local\ 

我希望這可以幫助別人出去