.NET Framework 服务实现监控可观测性最佳实践

环境信息

  • 系统环境:Windows Server
  • 开发语言:.NET Framework >= 4.6.1
  • APM探针包:ddtrace

准备工作

安装 Datakit

主机部署: 主机安装 - 观测云文档

打开采集 APM 采集器

Windows 主机配置

复制代码
# 到如下路径,把ddtrace.conf.sample 拷贝一份命名为ddtrace.conf即可
C:\Program Files\datakit\conf.d\ddtrace

接入方案

修改本地环境变量

点击此电脑右键------属性------高级系统设置------环境变量,新建系统变量,输入如下内容:

复制代码
DD_TRACE_AGENT_URL=http://localhost:9529    (必填)
DD_SERVICE=myapp   # 举例 myappname          (必填)
DD_ENV=test   # 举例 test                    (可选)
DD_VERSION=1.0   #举例 1.0                   /(可选)
DD_TRACE_SERVICE_MAPPING=  # 举例 mysql:main-mysql-db    (可选)
DD_LOGS_INJECTION=true    # 开启注入ddtrace日志(可选)
SET DD_RUNTIME_METRICS_ENABLED=true  # runtime 指标(可选)
  • TRACE_AGENT_URL:数据上传 IP 加端口,需填为 http://localhost:9529 ,需填写 DatKit 实际的端口
  • ENV:系统环境,可根据需求设置为 pro 或者 test 或其他内容
  • SERVICE:平台上所展现的应用名称,可设置为具体服务名称
  • VERSION:版本号,可根据需要进行设置
  • TRACE_SERVICE_MAPPING:使用配置重命名服务,以便在观测云平台上与其他业务系统调用的组件进行区分展示。接受要重命名的服务名称键的映射,以及要使用的名称,格式为 from-key:to-name
    • 注意:from-key 内容为标准字段,例如 mysql、redis、mongodb、oracle,请勿进行自定义更改
    • 示例:TRACE_SERVICE_MAPPING=mysql:main-mysql-db,TRACE_SERVICE_MAPPING=mongodb:offsite-mongodb-service

如下图:注意这里的变量跟变量值,如上面配置等号左边是 key ,右边是 value 。

下载探针(建议 2.4.3 版本)

使用管理员权限运行探针

必须管理员权限运行 dotnet-agent 安装包,点击下一步,直到安装成功。

重启 IIS 服务,使得配置生效

在 PowerShell 执行如下命令,重启 iis

复制代码
net stop /y was
net start w3svc

DataKit 机器上查看数据

输入:datakit monitor

实践效果

相关推荐
light blue bird7 小时前
支组汇总主子节点工序路径图表
前端·jvm·.net·桌面端·gdi绘图
bugcome_com15 小时前
阿里云OSS工具类完整设计与实现:基于.NET的静态单例模式实践
阿里云·单例模式·.net·oss
步步为营DotNet15 小时前
深度剖析.NET 11:Microsoft.Extensions.AI 在智能后端决策系统的创新应用 前言
人工智能·microsoft·.net
无风听海1 天前
ASP.NET Core .NET 10 错误响应体系全景:从 BadRequest 到编译器基础设施
后端·asp.net·.net
AI行业学习2 天前
.NET Framework 3.5 SP1 完整离线包【2026.5.31】
.net
学以智用3 天前
.NET Core 完整特性速查表(终极版)
后端·.net
cdbqss13 天前
VB2026 动态生成工具栏类 BqGetToolStrip
数据库·oracle·开源·.net·学习方法·教育电商·basic
宝桥南山3 天前
Microsoft Agent Framework(MAF) - 如何将workflow或者A2A client转换成一个AI Agent
microsoft·ai·微软·aigc·.net·.netcore
三天不学习4 天前
YOLO + .NET 10 快速入门:从零搭建实时目标检测应用
yolo·目标检测·.net
0x00074 天前
译 Anders Hejlsberg 谈 C# 与 .NET
开发语言·c#·.net