.NET Core集成SkyWalking+SkyAPM-dotne实现分布式链路追踪
.NET Core集成SkyWalking+SkyAPM-dotnet实现分布式链路追踪
SkyWalking是一款APM(应用性能管理),其他的还有Cat、Zipkin、Pinpoint等。
一,SkyWalking安装
打开链接https://archive.apache.org/dist/skywalking,由于目前SkyAPM-dotnet最大仅支持7.0.0,因此最多仅能选择这个版本。

选择此包进行下载,由于7.0.0版本目前还无镜像,下载较慢,可以通过百度网盘的离线下载功能进行下载,速度会快一点。默认占用8080, 10800, 11800, 12800端口。
下载完成后,解压,windows下,打开apache-skywalking-apm-bin\bin\startup.bat,会弹出两个框:

浏览器打开http://localhost:8080/,出现SkyWalking管理界面既视为启动成功,关闭上面两框则会关闭SkyWalking服务。
二,.NET Core项目集成SkyAPM-dotnet
新建一个web项目,安装nuget包SkyAPM.Agent.AspNetCore
在我写博客的这会,刚刚更新了1.1.0版本,我用.NET Core 3.1试了1.1.0和1.0.0版本,虽然没有报错,但一直没捕捉到链接请求,最后用了0.9.0,有兴趣的博友们可以自己慢慢尝试。
新建配置文件skyapm.json,修改实际的ip地址
1 {
2 "SkyWalking": {
3 "ServiceName": "asp-net-core-aspnetcore",
4 "Namespace": "",
5 "HeaderVersions": [
6 "sw6"
7 ],
8 "Sampling": {
9 "SamplePer3Secs": -1,
10 "Percentage": -1.0
11 },
12 "Logging": {
13 "Level": "Information",
14 "FilePath": "logs/skyapm-{Date}.log"
15 },
16 "Transport": {
17 "Interval": 3000,
18 "ProtocolVersion": "v6",
19 "QueueSize": 30000,
20 "BatchSize": 3000,
21 "gRPC": {
22 "Servers": "192.168.1.148:11800",
23 "Timeout": 10000,
24 "ConnectTimeout": 10000,
25 "ReportTimeout": 600000
26 }
27 }
28 }
29 }
新增环境变量 "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES":"SkyAPM.Agent.AspNetCore"
可修改launchSettings.json文件

也可在Program.cs中配置
Environment.SetEnvironmentVariable("ASPNETCORE_HOSTINGSTARTUPASSEMBLIES", "SkyAPM.Agent.AspNetCore");
到此,配置完成,启动项目。
浏览器访问http://localhost:8080/,打开追踪Tab,时间范围那有点bug,需要调整下结束时间,不然数据出不来。

详细的各位博友慢慢研究。附上SkyApm-dotnet示例代码:https://github.com/SkyAPM/SkyAPM-dotnet/tree/master/sample
.NET Core集成SkyWalking+SkyAPM-dotne实现分布式链路追踪的更多相关文章
- NET Core微服务之路:SkyWalking+SkyApm-dotnet分布式链路追踪系统的分享
对于普通系统或者服务来说,一般通过打日志来进行埋点,然后再通过elk或splunk进行定位及分析问题,更有甚者直接远程服务器,直接操作查看日志,那么,随着业务越来越复杂,企业应用也进入了分布式服务化的 ...
- 分布式链路追踪自从用了SkyWalking,睡得真香!
本篇文章介绍链路追踪的另外一种解决方案Skywalking,文章目录如下: 什么是Skywalking? 上一篇文章介绍了分布式链路追踪的一种方式:Spring Cloud Sleuth+ZipKin ...
- 分布式链路追踪体验-skywalking入门使用
背景 旁友,你的线上服务是不是偶尔来个超时,或者突然抖动一下,造成用户一堆反馈投诉.然后你费了九牛二虎之力,查了一圈圈代码和日志才总算定位到问题原因了.或者公司内部有链路追踪系统,虽然可以很轻松地通过 ...
- SkyWalking+SkyApm-dotnet分布式链路追踪系统
SkyWalking+SkyApm-dotnet分布式链路追踪系统 对于普通系统或者服务来说,一般通过打日志来进行埋点,然后再通过elk或splunk进行定位及分析问题,更有甚者直接远程服务器,直接操 ...
- 使用Skywalking分布式链路追踪系统
使用Skywalking分布式链路追踪系统 https://www.cnblogs.com/sunyuliang/p/11424848.html 当我们用很多服务时,各个服务间的调用关系是怎么样的?各 ...
- .NET Core 中的日志与分布式链路追踪
目录 .NET Core 中的日志与分布式链路追踪 .NET Core 中的日志 控制台输出 非侵入式日志 Microsoft.Extensions.Logging ILoggerFactory IL ...
- spring cloud 2.x版本 Sleuth+Zipkin分布式链路追踪
前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 本文基于前两篇文章eureka-server.eureka-client.eureka ...
- 个推基于 Zipkin 的分布式链路追踪实践
作者:个推应用平台基础架构高级研发工程师 阿飞 01业务背景 随着微服务架构的流行,系统变得越来越复杂,单体的系统被拆成很多个模块,各个模块通过轻量级的通信协议进行通讯,相互协作,共同实现系统 ...
- 分布式链路追踪之Spring Cloud Sleuth+Zipkin最全教程!
大家好,我是不才陈某~ 这是<Spring Cloud 进阶>第九篇文章,往期文章如下: 五十五张图告诉你微服务的灵魂摆渡者Nacos究竟有多强? openFeign夺命连环9问,这谁受得 ...
随机推荐
- animation关键帧动画语法
基本声明和用法 @-webkit-keyframes NAME-YOUR-ANIMATION { 0% { opacity: 0; } 100% { opacity: 1; } } @-moz-key ...
- socket connect tcp_v4_connect
tcp_v4_connect /* This will initiate an outgoing connection. tcp_v4_connect函数初始化一个对外的连接请求,创建一个SYN包并发 ...
- 双汇大数据方案选型:从棘手的InfluxDB+Redis到毫秒级查询的TDengine
双汇发展多个分厂的能源管控大数据系统主要采用两种技术栈:InfluxDB/Redis和Kafka/Redis/HBase/Flink,对于中小型研发团队来讲,无论是系统搭建,还是实施运维都非常棘手.经 ...
- 美团 Java 面试 154 道题分享!
Java集合22题 ArrayList 和 Vector 的区别. 说说 ArrayList,Vector, LinkedList 的存储性能和特性. 快速失败 (fail-fast) 和安全失败 ( ...
- IAR设置字体
1.IAR设置字体 第一种方法可以在IDE环境下,选择Tools -> option -> Editor - > Colors and Fonts,然后右边的Editor Font就 ...
- centos 6 系统下同步本地时间
1.date显示系统时间 [root@oldboy ~]# dateTue Mar 31 22:45:55 CST 2020 #CST是指是指某中标准时间 非东八区时间 更改时间的三种方法 1.c ...
- empty
等效于false的都是true
- 如何在Vegas中安装激活Continuum插件
视频剪辑插件Boris FX Continuum安装程序包含了多达250种插件.而视频剪辑软件Vegas Pro 18 Suite中提供了Boris FX Continuum Film Style U ...
- 在Mac上也能轻松拥有Windows应用程序的简便方法
一般而言,如果我们想要在Windows的环境下下载一款软件那是件很方便的事情.只要我们登陆软件的官网进行下载即可.但是如果我们使用的是Mac OS系统,很多用户就会发现,许多软件会出现不兼容的情况. ...
- Linux三剑客grep、awk、sed
何为Linux三剑客? 第一个剑客是 grep,grep 会根据正则表达式查找相关内容并打印对应的数据. 第二个剑客是 awk,awk 的名字来源于三个作者的名字简称,它可以根据定位到的数据行处理其中 ...