1、NuGet 项目引用
NLog.Web.AspNetCore
NLog.Targets.ElasticSearch
2、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"
autoReload="true">
<!-- enable asp.net core layout renderers -->
<extensions>
<add assembly="NLog.Web.AspNetCore"/>
<add assembly="NLog.Targets.ElasticSearch"/>
</extensions>
<!-- the targets to write to -->
<targets async="true">
<target xsi:type="BufferingWrapper" name="ElasticSearch" flushTimeout="5000">
<target xsi:type="ElasticSearch"
uri="http://ip地址1:端口,http://ip地址2:端口,http://ip地址3:端口"
index="mycore-web-${shortdate}"
includeAllProperties="true">
<field name="machinename" layout="${machinename}" />
<field name="date" layout="${longdate}" />
<field name="logger" layout="${logger}" />
<field name="stacktrace" layout="${stacktrace}" />
<field name="threadid" layout="${threadid}" />
<field name="url" layout="${aspnet-request-url:IncludeQueryString=true}" />
<field name="controller" layout="${aspnet-mvc-controller}" />
<field name="action" layout="${aspnet-mvc-action}" />
</target>
</target>
</targets>
<!-- rules to map from logger name to target -->
<rules>
<!-- BlackHole without writeTo -->
<logger name="Microsoft.*" maxLevel="Info" final="true" />
<logger name="*" minlevel="Info" writeTo="ElasticSearch"
作者:沐雪
文章均系作者原创或翻译,如有错误不妥之处,欢迎各位批评指正。本文版权归作者所有,如需转载恳请注明。
为之网-热爱软件编程 http://www.weizhi.cc/