.Net Core 商城微服务项目系列(十):使用SkyWalking构建调用链监控(2019-02-13 13:25)

SkyWalking的安装和简单使用已经在前面一篇介绍过了,本篇咱们将在商城中添加SkyWalking构建调用链监控。web

 

顺带一下怎么把ES设置为Windows服务,cd到ES的bin文件夹,运行elasticsearch-service.bat install。json

 

首先咱们须要在每一个服务里经过NuGet引用SkyAPM.Agent.AspNetCore,完成以后咱们添加配置文件skyapm.json,能够经过SkyWalking的脚本命令自动生成,也能够手动新建,这里贴一下:elasticsearch

{
  "SkyWalking": {
    "ServiceName": "MI.Web",
    "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,由于我部署在本地,因此写的localhost,你们酌情修改。编辑器

 

而后编译将项目发布到IIS,固然这个时候SkyWalking是不起做用的,咱们须要在IIS中设置下环境变量,这里设置环境变量有两种方式:ui

(1)发布的文件里会有web.config,咱们须要在web.config中添加环境变量:spa

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet" arguments=".\MI.Web.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout">
                <environmentVariables>
                    <environmentVariable name="ASPNETCORE_HOSTINGSTARTUPASSEMBLIES" value="SkyAPM.Agent.AspNetCore" />
                    <environmentVariable name="SKYWALKING__SERVICENAME" value="MI.Web" />
                </environmentVariables>
            </aspNetCore>
    </system.webServer>
  </location>
</configuration>
<!--ProjectGuid: ad411527-fcc6-45bb-98e6-de8310002d81-->

图中标蓝的部分是咱们须要配置的环境变量,SKYWALKING_SERVERNAME是应用名称,会在UI里显示。3d

 

(2)经过IIS配置code

选中相应项目,点击配置编辑器orm

 

 

节点选择图中标记的,而后选中标记的选项,点击最右边的编辑项:xml

 

而后点击添加,配置上面的两个环境变量,经过IIS方式配置完成后web.config也会被自动修改:

 

 

OK,若是不出什么意外到这里咱们就算配置完成了,启动全部服务查看:

 

 

 

 

 

能够看待对应的服务请求已经有了调用数据,分别是Identity服务请求Token和其它两个服务的健康检查请求。

相关文章
相关标签/搜索