ASP.NET Core 集成 Elastic APM 实现链路追踪
Elastic APM 部署访问
Elastic APM 由四个基本组件构成:
- APM Agents:各个语言的客户端程序,一系列开源库,用于连接APM Server
- APM Server
- Elasticsearch
- Kibana
APM Server、Elasticsearch、Kibana的部署参考这篇博客
部署成功后访问Kibana:http://Kibana:5601
添加插件
选择Apm
检查 APM Server 状态,这里检测不到APM不用管,当前8.5版本貌似检测不到,只要apm-server容器日志:docker logs apm-server
没有报错就行。直接选择下面的启用APM。如果客户端有传递服务一样会显示。
Elastic APM 架构
Elastic APM 基本架构如下图:
ASP.NET Core 集成
Netget安装包
Install-Package Elastic.Apm.NetCoreAll
appsettings.json
添加以下配置
{
"ElasticApm": {
//secret_token认证
"SecretToken": "123456",
//Apm地址
"ServerUrls": "http://192.168.1.5:8212",
//服务名称
"ServiceName": "test100_service",
//环境
"Environment": "dev"
}
}
Program.cs
使用ElasticApm
//.net5
app.UseAllElasticApm(Configuration);
站点Run起来,访问请求后可以在kibana
中查看请求链路
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!