You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Elastic APM通过Fleet配置无数据问题求助(.NET Core Agent)

问题:Elastic APM配置后无数据且8200端口无法访问

我在Linux Ubuntu服务器上,按照Elastic官方文档安装配置了Elastic APM,已成功部署Elastic Search和Kibana,外部可正常访问Kibana。但通过Fleet配置APM后,APM中没有任何数据。

当前状态

  • APM Server状态显示成功:
    APM Server状态成功
  • Agent状态显示成功:
    Agent状态成功
  • APM无任何数据:
    APM无数据
  • 使用Postman无法访问8200端口获取apm-server状态:
    8200端口无法访问

我需要帮助配置服务器上的APM,使用.NET Core作为APM Agent。


排查与解决步骤

1. 检查服务器防火墙/安全组配置

  • 执行命令查看Ubuntu防火墙状态:sudo ufw status
  • 开放8200端口:sudo ufw allow 8200/tcp
  • 若为云服务器,检查安全组规则,确保8200端口允许.NET应用所在IP访问

2. 验证APM Server监听地址

  • 查看Fleet中APM Server配置,确认监听地址为0.0.0.0:8200(而非仅localhost,允许所有IP访问)
  • 登录服务器执行netstat -tulpn | grep 8200,确认apm-server进程是否监听0.0.0.0或服务器公网IP

3. 检查.NET Core Agent配置

  • 确保appsettings.json中APM配置正确:
    "ElasticApm": {
      "ServerUrl": "http://你的服务器IP:8200",
      "ServiceName": "你的服务名称",
      "SecretToken": "你的APM密钥(若配置)",
      "Environment": "Production"
    }
    
  • 确认Agent已注入应用:在Program.cs中添加builder.Services.AddElasticApm(builder.Configuration);

4. 查看日志定位问题

  • 查看APM Server日志:sudo journalctl -u apm-server.service -f
  • 查看.NET应用日志,检查是否存在APM相关报错信息

5. 测试连通性

  • 服务器本地执行curl http://localhost:8200/,验证是否返回ok
  • 在.NET应用所在机器执行curl http://服务器IP:8200/,确认网络连通性

内容的提问来源于stack exchange,提问作者mesut

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 13:07:12