1.Downloads | Apache SkyWalking
2.下载位置:
3.下载后如图:
二.修改启动端口号:1.文件: E:NetCoreSkywalkingapache-skywalking-apm-bin-es7webappwebapp.yml
2.内容:
三.更改数据库为mysqlserver:
port: 18080
1.下载:mysql-connector-java-8.0.28.jar到oap-libs下 版本的不同,直接影响数据表是否创建成功
3.打开 E:NetCoreSkywalkingapache-skywalking-apm-bin-es7configapplication.yml
4.注释H2,开启mysql
5.接着,到Mysql中创建一个 swtest数据库
6.执行 E:NetCoreSkywalkingapache-skywalking-apm-bin-es7binoapServiceInit.bat
7.最后数据库表
三.启动 腳本: binstartup.bat 四.运行:http://localhost:18080
五.Net Core集成
1.添加.net webapid项目 SkyAPM.Agent.AspNetCore 1.3
2.Startup类中注册
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSkyAPM(ext => ext.AddAspNetCoreHosting());
}
3.添加配置文件:skyapm.json
4.skyapm.json内容,ServiceName默认是项目名称
{
"SkyWalking": {
"ServiceName": "SkyWalkingDemo",
"Namespace": "",
"HeaderVersions": [
"sw8"
],
"Sampling": {
"SamplePer3Secs": -1,
"Percentage": -1.0
},
"Logging": {
"Level": "Information",
"FilePath": "logs\skyapm-{Date}.log"
},
"Transport": {
"Interval": 3000,
"ProtocolVersion": "v8",
"QueueSize": 30000,
"BatchSize": 3000,
"gRPC": {
"Servers": "127.0.0.1:11800",
"Timeout": 10000,
"ConnectTimeout": 10000,
"ReportTimeout": 600000,
"Authentication": ""
}
}
}
}
5.launchSettings.json 文件中添加服务名
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "weatherforecast",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore", // 必须配置
"SKYWALKING__SERVICENAME": "SkyWalkingDemo" // 必须配置,在skywalking做标识
}
},
6.在webapi中添加IEntrySegmentContextAccessor
private readonly IEntrySegmentContextAccessor segContext;
private readonly ILogger_logger; public WeatherForecastController(IEntrySegmentContextAccessor segContext,
ILoggerlogger)
{
this.segContext = segContext;
_logger = logger;
}[HttpGet("Get1")]
public IActionResult Get1()
{
//获取全局的skywalking的TracId
var TraceId = segContext.Context.TraceId;
segContext.Context.Span.AddLog(LogEvent.Message($"SkywalkingTest1---Worker running at: {DateTime.Now}"));
segContext.Context.Span.AddLog(LogEvent.Message($"SkywalkingTest1---Worker running at--end: {DateTime.Now}"));return Ok($"TraceId={TraceId} ");
}
7.运行项目,访问 http://localhost:46696/weatherforecast/get1
8..最后访问 localhost:18080 进入追踪



