• 【云原生 | Kubernetes 系列】---Skywalking 告警


    1. Skywalking 告警

    通过/apps/apache-skywalking-apm-bin/config/oal/core.oal 定义指标数据如何查询数据,
    通过/apps/apache-skywalking-apm-bin/config/alarm-settings.yml定义告警规则.
    对一定时间范围内的数据进行计算后告警.

    2. Skywalking常用告警指标

    config/oal/core.oal

    https://github.com/apache/skywalking/blob/master/docs/en/setup/backend/backend-alarm.md
    
    • 1
    规则名作用
    service_resp_time服务响应时间,反应服务的快慢
    service_sla服务的http请求成功率SLA,比如99%服务可用率
    service_cpm每分钟吞吐量,请求次数
    service_apdex应用性能指数,0-1之间,1最好
    service_percentile指定最近多少数据范围内的响应时间百分比,p99,p95,p50在内的数据统计结果
    endpoint_relation_cpm端点的每分钟吞吐量
    endpoint_relation_resp_time端点的响应时间
    endpoint_relation_sla端点的http请求成功率SLA
    endpoint_relation_percentile端点的最近多少范围内的响应时间百分比.

    3. Skywalking配置文件

    alarm-settings.yml

    指标含义
    rules:定义rule规则
    service_resp_time_rule:唯一的规则名称,必须以_rule结尾
    metrics-name: service_resp_time指标名称
    op: “>”操作符,>,<,==,>=,<=
    threshold: 1000指标阈值
    period: 10评估指标的间隔周期(10分钟)
    count: 3匹配成功多少次发送告警
    silence-period: 5触发告警后的静默时间(分钟)
    message: Response time of service {name} is more than 1000ms in 3 minutes of last 10 minutes.告警信息

    4. 默认报警规则

    默认情况下alarm-setting.yml在发行版中提供了默认值。它包括以下规则:

    1. 过去 3 分钟内服务平均响应时间超过 1 秒。
    2. 最后2分钟服务成功率低于80%。
    3. 过去 3 分钟内超过 1 秒的服务响应时间百分比
    4. 服务实例最近 2 分钟平均响应时间超过 1 秒,并且实例名称与正则表达式匹配。
    5. 过去 2 分钟内端点平均响应时间超过 1 秒。
    6. 过去 2 分钟内数据库访问平均响应时间超过 1 秒。
    7. 过去 2 分钟内端点关系平均响应时间超过 1 秒。

    5. 钉钉告警发送

    修改配置文件alarm-settings.yml

    当对服务发起访问,就从钉钉告警

    rules:
      service_cpm_rule:
        metrics-name: service_cpm
        op: ">"
        threshold: 1
        period: 2
        count: 1
        silence-period: 2
        message: 服务 {name} 访问次数大于1
    
    dingtalkHooks:
      textTemplate: |-
        {
          "msgtype": "text",
          "text": {
            "content": "Apache SkyWalking Alarm: \n %s."
          }
        }
      webhooks:
        - url: https://oapi.dingtalk.com/robot/send?access_token=1179c64f197a5da70d4b393111dd47578e58f8112e22f3e00d6632591337c43a
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    当对应用发起访问,就会触发钉钉告警

    请添加图片描述

    在skywalking控制台中也能看到告警触发记录

    请添加图片描述

  • 相关阅读:
    JAVA架构之路(MySql事务隔离级别)
    vscode debug with cmake on macos
    python爬虫request和BeautifulSoup使用
    vulnhub靶场之LOOZ: 1
    Linux-1-冯诺依曼体系
    菜谱查询易语言代码
    【Java面试】ReentrantLock 是如何实现锁公平和非公平性的 ?
    模电和爱情一样,都很难懂!
    SparkSQL 总结
    字符串start每次只能改变一个字符,最终变为字符串to,返回所有的最短变换路径
  • 原文地址:https://blog.csdn.net/qq_29974229/article/details/126832609