读完这篇文章里你能收获到
- .NET Core接入Skywalking,全程无坑
- Linux/Windows部署时需要注意的点
- 感谢点赞+收藏,避免下次找不到~
- 一、工具安装
- 二、项目接入
- 1. NuGet包引用
- 2. 添加配置文件skyapm.json
- 3. 配置环境变量
- 4. skyapm.json文件输出
- 三、查看项目运行效果
- 四、生产环境部署
- 1. Linux部署
- 2. Windows IIS方式部署
一、工具安装Sky-dotnet源码:https://github.com/SkyAPM/SkyAPM-dotnet#examples
- Elasticsearch及Skywalking的下载安装参考: 点击这里跳转
- 需要在每个服务里通过NuGet引用SkyAPM.Agent.AspNetCore
{
"SkyWalking": {
"ServiceName": "xxx.Service",
"Namespace": "",
"HeaderVersions": [
"sw6"
],
"Sampling": {
"SamplePer3Secs": -1,
"Percentage": -1.0
},
"Logging": {
"Level": "Information",
"FilePath": "logs\skyapm-{Date}.log"
},
"Transport": {
"Interval": 3000,
"ProtocolVersion": "v6",
"QueueSize": 30000,
"BatchSize": 3000,
"gRPC": {
"Servers": "localhost:11800",
"Timeout": 10000,
"ConnectTimeout": 10000,
"ReportTimeout": 600000
}
}
}
}
- 注意:
- gRPC的Servers需要指定SkyWalking的服务端地址,默认端口是11800
- v6指的是版本号,新版本是v8
"ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore"4. skyapm.json文件输出
- 将skyapm.json文件的属性”复制到输出目录“ 修改为 ”如果较新则复制”
- 到此就可以使用了,打开localhost:8080
- 命令行启动方式,增加systemd环境变量,语法为
Environment=ASPNETCORE_HOSTINGSTARTUPASSEMBLIES=SkyAPM.Agent.AspNetCore2. Windows IIS方式部署
项目编译后发布到IIS,SkyWalking是不起作用的,我们需要在IIS中设置下环境变量,这里介绍设置环境变量有两种方式
- 方法一: 发布的文件里会有web.config,我们需要在web.config中添加环境变量
- 方法二:通过IIS配置
- 选中相应项目,点击配置编辑器



