2017-11-02 14 views
1

필자는 serilog logger를 통해 splunk에 기록하는 C# 프로그램을 작성하려고했습니다.Serilog/.Net에서 로깅을 수신하도록 Splunk를 설정하는 방법은 무엇입니까?

로깅을 수신하도록 splunk를 설정하려고했습니다.

내 로컬 컴퓨터에서 모두 실행 중입니다.

Splunk을 올바르게 구성하지 않았을 것입니다.

  Log.Logger = new LoggerConfiguration() 
      .WriteTo 
      .SplunkViaTcp(
       new Serilog.Sinks.Splunk.SplunkTcpSinkConnectionInfo("127.0.0.1", 19000) 
       ) 
      .CreateLogger(); 

     while (true) 
     { 
      Log.Logger.Debug("Hello world"); 
      Thread.Sleep(1000); 
     } 

인 Splunk 설정 (인 Splunk 모니터링과 잘 윈도우 이벤트를 보여주는) : 데이터 입력, 추가 된 'TCP', '설정 소스 유형'= 설명서, '소스 유형'나 '= log4net_xml

행운이없는 '소스 유형'의 변형을 시도했습니다.

제안 사항? 감사합니다, Anders

+0

어떤 종류의 프로그램입니까? Asp.Net 핵심? 콘솔? –

+0

위의 poc는 .net framwork로 작성된 콘솔 응용 프로그램에서입니다. 4.6.1 –

답변

0

로깅을위한 최소 레벨 설정을 시도 했습니까? Debug 메시지를 쓰지 만 최소 수준이 지정되지 않은 경우 정보 (see Docs)가 기본값입니다. 다음이 효과가 있습니까?

Log.Logger = new LoggerConfiguration() 
    .MinimumLevel.Debug() 
    .WriteTo 
    .SplunkViaTcp(
     new Serilog.Sinks.Splunk.SplunkTcpSinkConnectionInfo("127.0.0.1", 19000) 
    ) 
    .CreateLogger(); 
+0

레벨에서 로깅을 시도했는데 정확하게이 문제를 방지하려고했지만 게시물을 따라 가면서 나도 제안을 시도했습니다. 또한 어떤 것도 스플래시로 생산하지 못했습니다. –

+0

Console Logger를 추가하여 문제가 Splunk 끝에 있는지 테스트 할 수 있습니다. 메시지가 콘솔에 도착하지 않으면 문제는 다른 곳에서 발생할 수 있습니다. –

+0

필자는 그것을 수행했으며 serilog는 콘솔에 잘 기록합니다. –