• .net core 使用SkyWalking


    Skywalking简单介绍

      Skywalking是一个应用性能管理(APM)系统,具有服务器性能监测,应用程序间调用关系及性能监测等功能,Skywalking分为服务端、管理界面、以及嵌入到程序中的探针部分,由程序中的探针采集各类调用数据发送给服务端保存,在管理界面上可以查看各类性能数据。本文介绍服务端及管理界面的安装。

    Docker 安装

    需要安装ES、SkyWalking服务端、SkyWalking ui。

    安装ES

    修改系统参数

    vim /etc/security/limits.conf
    调整参数
    vm.max_map_count=262144
    刷新参数
    sysctl -p
    docker run -d --name=es7 
    -p 9200:9200 -p 9300:9300 
    -e "discovery.type=single-node" elasticsearch:7.5.1
    

      

    安装oap

    注意:等待elasticsearch完全启动之后,再启动oap

    docker run --name oap --restart always -d 
    --restart=always 
    -e TZ=Asia/Shanghai 
    -p 12800:12800 
    -p 11800:11800 
    --link es7:es7 
    -e SW_STORAGE=elasticsearch 
    -e SW_STORAGE_ES_CLUSTER_NODES=es7:9200 
    apache/skywalking-oap-server:6.6.0-es7
    说明:这里指定elasticsearch 来存储数据
    

      

    安装ui

    docker run -d --name skywalking-ui 
    --restart=always 
    -e TZ=Asia/Shanghai 
    -p 8088:8080 
    --link oap:oap 
    -e SW_OAP_ADDRESS=oap:12800 
    apache/skywalking-ui:6.6.0

    安装完毕后的界面如下:

    在.net core中使用

    我们新建一个.net core项目来使用。

    1、项目中引用kyAPM.Agent.AspNetCore 这个 NuGet 包。这个包集成了SkyWalking的探针功能,选择0.9的版本。

    2、在项目根目录添加skyapm.json文件,并添加下以内容,其中的Servers结点的IP地址根据实际情况换成自己的服务器IP

    {
      "SkyWalking": {
        "ServiceName": "Demo01",
        "Namespace": "",
        "HeaderVersions": [
          "sw6"
        ],
        "Sampling": {
          "SamplePer3Secs": -1,
          "Percentage": -1.0
        },
        "Logging": {
          "Level": "Debug",
          "FilePath": "logs/skyapm-{Date}.log"
        },
        "Transport": {
          "Interval": 3000,
          "ProtocolVersion": "v6",
          "QueueSize": 30000,
          "BatchSize": 3000,
          "gRPC": {
            "Servers": "192.168.22.188:11800", 
            "Timeout": 10000,
            "ConnectTimeout": 10000,
            "ReportTimeout": 600000
          }
        }
      }
    }
    

    3、 将skyapm.json文件的属性”复制到输出目录“ 修改为 ”如果较新则复制”

    4、展开项目的Properties,打开launchSettings.json文件,在其中的环境变量中加入  "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore",

     这样就配置完成了。访问本地接口,然后打开http://192.168.22.188:8088/页面,在skywalking看板界面可以查看接口的调用情况。

    参考博客 

    .NetCore从零开始使用Skywalking分布式链路追踪系统 https://www.cnblogs.com/sunyuliang/p/11424848.html

     https://github.com/SkyAPM/SkyAPM-dotnet

    https://blog.csdn.net/shykevin/article/details/108115442

  • 相关阅读:
    shell的基本应用:vim 的基本操作
    Python 类 setattr、getattr、hasattr 的使用
    Python 安装过程和第一个Demo
    SQL SERVER 插件SQL Prompt
    SSIS etl远程部署时 无法获取服务器部署目录
    SQL SERVER SCOPE_IDENTITY函数的应用
    Oralce SQL Developer 时间格式修改
    centos 在线&&离线安装上传下载工具-lrzsz
    添加的Startup.cs启动类没有执行解决办法
    关于 X509Certificate2 程序发布IIS后找不到文件路径的问题
  • 原文地址:https://www.cnblogs.com/KQNLL/p/13529545.html
Copyright © 2020-2023  润新知