.NET Fx 使用 log4net 接入 ELK


一、引入NuGet包

接入ELK首先需要引入 log4netlog4net.ElasticSearch 兩個包。

直接使用程序包管理器控制檯

Install-Package log4net
Install-Package log4net.ElasticSearch

二、配置 log4net

log4net.config 配置文件如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <!-- This section contains the log4net configuration settings -->
  <log4net>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Log/" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <staticLogFileName value="false" />
      <datePattern value="yyyyMMdd'.log'" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="50MB" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date  [%thread]  %-5level  %message%newline" />
      </layout>
    </appender>
    <appender name="ElasticSearchAppender" type="log4net.ElasticSearch.ElasticSearchAppender, log4net.ElasticSearch">
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p %c{1}:%L - %m%n" />
      </layout>
      <!-- Server 填寫你的ELK接口地址,Index爲ELK的Index -->
      <connectionString value="Server=*****;Index=*****;Port=9200;rolling=false"/>
      <lossy value="false" />
      <evaluator type="log4net.Core.LevelEvaluator">
        <threshold value="ALL" />
      </evaluator>
      <bufferSize value="1" />
    </appender>
    <!-- Setup the root category, add the appenders and set the default level -->
    <root>
      <level value="ALL" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="ElasticSearchAppender" />
    </root>
  </log4net>
</configuration>

三、記錄日誌

記錄日誌

    var repository = LogManager.CreateRepository("aaaaaaaa");
    XmlConfigurator.Configure(repository, new FileInfo("log4net.config"));
    var logger = LogManager.GetLogger(repository.Name, "InfoLogger");
    
    logger.Info("this is a test service start");
    logger.Error("this is a test service start");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章