Asp.Net Core 项目中使用 Serilog 输出日志到 Elasticsearch
2021-01-07 07:28
标签:vat web 最新 rom start use alt array 内容替换 服务器:CentOS 7,IP:172.17.79.83 开发环境:Win10 + VS2019 Docker 启动 Elasticsearch Docker 启动 Kibana 创建一个 WebAPI 项目,添加 nuget 包 Serilog.AspNetCore(目前最新版本 3.4.0)、Serilog.Sinks.Elasticsearch(v8.2.0)、Serilog.Exceptions(v5.6.0)。 将默认的 appsettings.json 中的内容替换成一下内容。 Program.cs 中配置 Serilog 在 api 中记录日志。 启动项目,可以看到控制台日志格式发生了一点变化,同时日志消息使用了不同的颜色来区分。 在 kibana 中查看日志,需要先创建一个索引。index 格式在Program.cs 中有设置,这里保持写法一致就好。 查看 kibana 面板,需要展示的列可以自定义,比如添加 exception 列。 Asp.Net Core 项目中使用 Serilog 输出日志到 Elasticsearch 标签:vat web 最新 rom start use alt array 内容替换 原文地址:https://www.cnblogs.com/fallTakeMan/p/13550713.html 环境说明
docker run --name elasticsearch --restart always -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.5.0
docker run --name kibana --restart always -d --link elasticsearch:elasticsearch -p 5601:5601 kibana:7.5.0
项目配置
{
"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"Microsoft": "Information",
"System": "Warning"
}
}
},
"ElasticConfiguration": {
"Uri": "http://172.17.79.83:9200"
},
"AllowedHosts": "*"
}
1 using System;
2 using System.Reflection;
3 using Microsoft.AspNetCore.Hosting;
4 using Microsoft.Extensions.Configuration;
5 using Microsoft.Extensions.Hosting;
6 using Serilog;
7 using Serilog.Sinks.Elasticsearch;
8 using Serilog.Exceptions;
9
10 namespace EFKlog
11 {
12 public class Program
13 {
14 private static readonly string env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
15 public static void Main(string[] args)
16 {
17 ConfigureLogging();
18
19 CreateHostBuilder(args).Build().Run();
20 }
21
22 public static IHostBuilder CreateHostBuilder(string[] args) =>
23 Host.CreateDefaultBuilder(args)
24 .ConfigureWebHostDefaults(webBuilder =>
25 {
26 webBuilder.UseStartup
public IEnumerable
文章标题:Asp.Net Core 项目中使用 Serilog 输出日志到 Elasticsearch
文章链接:http://soscw.com/index.php/essay/40658.html