APM Serilog 增强器
编辑APM Serilog 增强器
编辑此增强器会将事务 ID 和跟踪 ID 添加到在事务期间创建的每个 Serilog 日志消息中。
安装
编辑添加对 Elastic.Apm.SerilogEnricher 包的引用
<PackageReference Include="Elastic.Apm.SerilogEnricher" Version="8.6.0" />
用法
编辑var logger = new LoggerConfiguration() .Enrich.WithElasticApmCorrelationInfo() .WriteTo.Console(outputTemplate: "[{ElasticApmTraceId} {ElasticApmTransactionId} {ElasticApmSpanId} {Message:lj} {NewLine}{Exception}") .CreateLogger();
属性
编辑在上面的代码片段中,Enrich.WithElasticApmCorrelationInfo()
启用了来自此项目的增强器,它将为在事务期间创建的日志行设置 3 个属性
-
ElasticApmTraceId
-
ElasticApmTransactionId
-
ElasticApmSpanId
这两个属性使用 outputTemplate
参数打印到控制台,当然它们可以与任何接收器一起使用,您可以考虑使用文件系统接收器和 Elastic Filebeat 实现持久且可靠的摄取。此增强器也与 Elastic.CommonSchema.Serilog 包兼容。
先决条件
编辑要使其正常工作,需要配置一个 Elastic APM 代理。如果未配置代理,则增强器不会向日志添加任何内容。