美文网首页
ASP.NET Core集成Skywalking

ASP.NET Core集成Skywalking

作者: TomGui | 来源:发表于2020-04-04 16:02 被阅读0次

    1.部署Skywalking服务端

    SkyWalking是开源的apm工具,服务器端使用java编写,所以依赖于jdk,jdk安装略。

    以下步骤为安装Skywalking服务端,在官方文档中有详细记录,下面我大概介绍下安装步骤。

    1.1下载安装包

    下载地址:http://skywalking.apache.org/downloads/。Skywalking支持多种存储系统,es、mysql、h2等,根据需要选择相应的版本。
    本次部署的是Skywalking的最新版本v7.0.0,存储选择的是mysql。

    1.2配置

    下载完后,解压、配置。

    1.2.1配置backend

    大多数采用默认配置就可以了,主要配置application.yml文件,其中4个必须的模块

    • Core:默认就可以了
    • Cluster:因为我是单机部署,所以也是默认就可以了
    • Storage:存储采用mysql,所以selector改为mysql,其他的mysql用户名、密码等自行修改
    • Query:默认

    1.2.2配置UI

    默认即可

    1.3初始化

    默认的启动脚本/bin/oapService.sh(.bat),除了默认的启动脚本,还有两种启动脚本oapServiceInitoapServiceNoInit

    • Default mode:做一些必要的初始化工作,例如监听、启动服务
    • Init mode:用这个模式初始化存储,例如创建es、mysql、TiDB的表和初始数据
    • No-init mode:不做初始化工作,但是前提是ElasticSearch, MySQL和TiDB表已创建好, 然后监听、启动服务。这意味着需要另一个oap server做初始化工作

    注意:mysql采用Init mode,如果初始化报“no suitable driver found”错误,需要下载mysql-connector-java-5.1.48.jar,并放到oap-libs目录

    1.4启动

    脚本:/bin/startup.sh(.bat)

    验证是否启动成功:能打开ui就是启动成功了,我使用的是默认的8080端口,浏览器打开http://localhost:8080

    2.ASP.NET Core客户端集成Skywalking

    2.1项目中添加SkyAPM.Agent.AspNetCore包

    dotnet add package SkyAPM.Agent.AspNetCore

    2.2项目中添加skyapm.json配置文件

    2.2.1安装SkyAPM.DotNet.CLI工具

    dotnet tool install -g SkyAPM.DotNet.CLI

    2.2.2通过命令生成skyapm.json文件

    dotnet skyapm config sample_app 192.168.0.1:11800,把生成的skyapm文件放到项目中

    2.3IIS发布

    IIS发布需要通过web.config配置环境变量,代码如下:

    <environmentVariables>
        <environmentVariable name="ASPNETCORE_HOSTINGSTARTUPASSEMBLIES" value="SkyAPM.Agent.AspNetCore" />
        <environmentVariable name="SKYWALKING__SERVICENAME" value="smaple_app" />
    </environmentVariables>
    

    相关文章

      网友评论

          本文标题:ASP.NET Core集成Skywalking

          本文链接:https://www.haomeiwen.com/subject/syyjphtx.html