航旅业“大地震”:SITA被黑
【责任编辑:赵宁宁 TEL:(010)68476606】
本文转载自微信公众号「UP技术控」,作者conan5566。转载本文请联系UP技术控公众号。
概述
Elasticsearch可广泛应用于日志分析、全文检索、结构化数据分析等多种场景,大幅度降低维护多套专用系统的成本,在开源社区非常受欢迎。在系统中,如果将日志作为文件输出,查看系统日志将非常不便;如果将日志保存到数据库中,又不能进行全文搜索。在这里我们将日志输出到ElasticSearch中,借助Kibana再查找日志。
实现方式
1、配置es服务地址
- {
- "ConnectionStrings": {
- "ElasticSearchServerAddress": "http://localhost:9200"
- },
- "Logging": {
- "LogLevel": {
- "Default": "Warning"
- }
- },
- "AllowedHosts": "*"
- }
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"
- internalLogToConsole="true">
- <extensions>
- <add assembly="NLog.Targets.ElasticSearch"/>
- </extensions>
- <targets>
- <!--ElasticSearch保存日志信息-->
- <target name="ElasticSearch" xsi:type="ElasticSearch" ConnectionStringName="ElasticSearchServerAddress"
- index="userapi-${date:format=yyyy.MM.dd}" documentType="doc" includeAllProperties="true"
- layout="[${date:format=yyyy-MM-dd HH\:mm\:ss}][${level}] ${logger} ${message} ${exception:format=toString}">
- <field name="MachineName" layout="${machinename}" />
- <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>
- <logger name="*" minlevel="INFO" writeTo="ElasticSearch" />
- </rules>
- </nlog>
3、测试写入日志
- // GET api/values
- [HttpGet]
- public ActionResult<IEnumerable<string>> Get()
- {
- var result = new string[] { "value1", "value2" };
- _logger.LogInformation(JsonConvert.SerializeObject(result));
- return result;
- }
效果
微信关注我们
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。
Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。
Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。
WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。