首页 > 其他 > 详细

NLog——ElasticSearch——Kibana

时间:2018-01-25 18:01:03      阅读:414      评论:0      收藏:0      [点我收藏+]

 

Nlog、elasticsearch、Kibana以及logstash在项目中的应用(一)

 

Nlog、elasticsearch、Kibana以及logstash在项目中的应用(二)

 

ASP.NET Core logging with NLog and Elasticsearch

 

 一、

.Net Core引用的nuget包;可以配置Elasticsearch的url地址

技术分享图片

 

 二、

NLog.config示例:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
     >
  <extensions>
    <add assembly="NLog.Targets.ElasticSearch"/>
  </extensions>

  <!-- optional, add some variabeles
  https://github.com/nlog/NLog/wiki/Configuration-file#variables
  -->
  <variable name="myvar" value="myvalue"/>

  <targets async="true">
    <target xsi:type="File" name="File" archiveAboveSize="20000000" fileName="${environment:variable=NLOGDIR}/*****.log" layout="[${date:format=yyyy-MM-dd HH\:mm\:ss}][${level}] ${logger} ${message} ${exception:format=toString} ${aspnet-request:cookie=String:serverVariable=String:queryString=String:item=String:form=String:header=String}" 
   archiveNumbering="Rolling"  encoding="UTF-8" enableFileDelete="true"  maxArchiveFiles="5" />
    <target name="ElasticSearch" xsi:type="ElasticSearch" ConnectionStringName="ElasticSearchServerAddress"  index="*****-${date:format=yyyy.MM.dd}" documentType="logevent" includeAllProperties="true"
         layout="[${date:format=yyyy-MM-dd HH\:mm\:ss}][${level}] ${logger} ${message} ${exception:format=toString}">
      <field name="MachineName" layout="${machinename}" />
      <!--<field name="AllEventProperties" layout="${all-event-properties:format=[key]=[value]:separator=;:includeCallerInformation=true}" />-->
      <field name="Time" layout="${longdate}" />
      <field name="level" layout="${level:uppercase=true}" />
      <field name="logger" layout=" ${logger}" />
      <field name="message" layout=" ${message}" />
      <field name="exception" layout=" ${exception:format=toString}" />
      <field name="processid" layout=" ${processid}" />
      <field name="threadname" layout=" ${threadname}" />
      <field name="stacktrace" layout=" ${stacktrace}" />
      <field name="Properties" layout="${machinename} ${longdate} ${level:uppercase=true} ${logger} ${message} ${exception}|${processid}|${stacktrace}|${threadname}" />
    </target>
  </targets>

  <rules>
    <!-- add your logging rules here -->
    <!--<logger name="*"     minlevel="Trace" writeTo="EventLog" />-->
    <logger name="*"     minlevel="Trace" writeTo="File" />
    <logger name="*"    minlevel="Trace" writeTo="ElasticSearch" />
  </rules>

</nlog>

 

三、

设值环境变量ElasticSearchServerAddress:NLog.config中指定的

或者,在appsettings.json中添加ElasticSearchServerAddress的配置节点

技术分享图片

 

  

NLog——ElasticSearch——Kibana

原文:https://www.cnblogs.com/panpanwelcome/p/8352248.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!