长沙网站排名推广,电商网站建设新闻,网站建设的公司好做吗,h5制作平台排名概述Elasticsearch可广泛应用于日志分析、全文检索、结构化数据分析等多种场景#xff0c;大幅度降低维护多套专用系统的成本#xff0c;在开源社区非常受欢迎。在系统中#xff0c;如果将日志作为文件输出#xff0c;查看系统日志将非常不便#xff1b;如果将日志保存到数… 概述 Elasticsearch可广泛应用于日志分析、全文检索、结构化数据分析等多种场景大幅度降低维护多套专用系统的成本在开源社区非常受欢迎。在系统中如果将日志作为文件输出查看系统日志将非常不便如果将日志保存到数据库中又不能进行全文搜索。在这里我们将日志输出到ElasticSearch中借助Kibana再查找日志。实现方式1、配置es服务地址{ConnectionStrings: {ElasticSearchServerAddress: http://localhost:9200},Logging: {LogLevel: {Default: Warning}},AllowedHosts: *
}
2、配置nlog.config?xml version1.0 encodingutf-8 ?
nlog xmlnshttp://www.nlog-project.org/schemas/NLog.xsdxmlns:xsihttp://www.w3.org/2001/XMLSchema-instanceinternalLogToConsoletrueextensionsadd assemblyNLog.Targets.ElasticSearch//extensionstargets!--ElasticSearch保存日志信息--target nameElasticSearch xsi:typeElasticSearch ConnectionStringNameElasticSearchServerAddressindexuserapi-${date:formatyyyy.MM.dd} documentTypedoc includeAllPropertiestruelayout[${date:formatyyyy-MM-dd HH\:mm\:ss}][${level}] ${logger} ${message} ${exception:formattoString}field nameMachineName layout${machinename} /field nameTime layout${longdate} /field namelevel layout${level:uppercasetrue} /field namelogger layout ${logger} /field namemessage layout ${message} /field nameexception layout ${exception:formattoString} /field nameprocessid layout ${processid} /field namethreadname layout ${threadname} /field namestacktrace layout ${stacktrace} /field nameProperties layout${machinename} ${longdate} ${level:uppercasetrue} ${logger} ${message} ${exception}|${processid}|${stacktrace}|${threadname} //target/targetsruleslogger name* minlevelINFO writeToElasticSearch //rules
/nlog
3、测试写入日志 // GET api/values[HttpGet]public ActionResultIEnumerablestring Get(){var result new string[] { value1, value2 };_logger.LogInformation(JsonConvert.SerializeObject(result));return result;}效果