.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

实践效果

相关推荐
武藤一雄13 小时前
C# 竟态条件
microsoft·c#·.net·.netcore
武藤一雄15 小时前
WPF深度解析Behavior
windows·c#·.net·wpf·.netcore
极客智造15 小时前
Nito.AsyncEx 详解:.NET 异步编程的瑞士军刀
.net
桑榆肖物15 小时前
用 .NET 做一个跨平台的 Improv Wi-Fi 蓝牙配网项目
.net·蓝牙·iot
小邓的技术笔记16 小时前
.NET 进阶之路:异步、并发与内存管理的系统性认知
.net
Maybe_ch16 小时前
WPF的STA线程模型、APM与TAP:从线程约束到现代异步
c#·.net·wpf
我是唐青枫17 小时前
C#.NET Consul + Steeltoe 深入解析:服务注册发现、健康检查与微服务接入
c#·.net·consul
硅基喵1 天前
.NET 进阶之路:异步、并发与内存管理的系统性认知
.net
俊俊谢1 天前
LabVIEW如何排查和修复dll缺失问题
驱动开发·.net·labview·dll
武藤一雄1 天前
C# 设计模式大全(第一弹|7种)
microsoft·设计模式·微软·c#·.net·.netcore