zoukankan      html  css  js  c++  java
  • 微服务监控和报警(三)-Prometheus配置Grafana图标监控和报警

    1、安装Grafana

    1.1、docker安装

     1.2、docker-compose.yml

    version: "3"
    services:
      prometheus:
        image: prom/prometheus:v2.4.3
        container_name: 'prometheus'
        volumes:
        - ./prometheus/:/etc/prometheus/
        ports:
        - '8999:9090'
      grafana:
        image: grafana/grafana:5.2.4
        container_name: 'grafana'
        ports:
        - '3000:3000'
        volumes:
        - ./grafana/config/grafana.ini:/etc/grafana/grafana.ini
        - ./grafana/provisioning/:/etc/grafana/provisioning/
        env_file:
        - ./grafana/config.monitoring
        depends_on:
        - prometheus

    1.3、grafana.ini,配置告警发送邮件的地址

    #################################### SMTP / Emailing ##########################
    # 配置邮件服务器
    [smtp]
    enabled = true
    # 发件服务器
    host = smtp.qq.com:465
    # smtp账号
    user = xxxxxxxx@qq.com
    # smtp 密码
    password = xxxxxxxx
    # 发信邮箱
    from_address = xxxxxxxx@qq.com
    # 发信人
    from_name = caofanqi

    1.4、datasource.yml 数据源配置为Prometheus

    # config file version
    apiVersion: 1
    
    deleteDatasources:
    - name: Prometheus
      orgId: 1
    
    datasources:
    - name: Prometheus
      type: prometheus
      access: proxy
      orgId: 1
      url: http://prometheus:9090
      basicAuth: false
      isDefault: true
      version: 1
      editable: true

    1.5、config.monitoring admin登陆密码配置,是否允许注册

    GF_SECURITY_ADMIN_PASSWORD=password
    GF_USERS_ALLOW_SIGN_UP=false

    1.6、运行 docker-compose -f docker-compose.yml up 命令

     1.7、访问http://127.0.0.1:3000/ 如下,安装完成

    2、创建Dashboard 

    2.1、登陆grafana,用户名admin,密码password,如下,还没有Dashboard,我们导入dashboard.json文件进行创建,完成后,可以看到这里的统计页面比Prometheus自带的好的多,可以通过右上角进行时间维度的修改。

     

       

    3、告警渠道设置

    Alerting-> Notification channels -> Add channel 

      

    可以看到支持的类型有很多,我们选择Email,填写要发送的邮箱,点击测试,邮箱收到了测试邮件

        

    4、创建错误规则,达到指定要求,发送邮件告警

    4.1、在程序中制造错误,并不断访问

      

    这时,通过Grafana可以看到,Rate和Error都明显升高

     4.2、配置错误规则,发送告警信息 Errors -> Edit 

    将PromQL修改为如下:

     点击Alert-> Create Alert  ,进行告警规则设置,我们这里设置,每隔10s评估以下表达式,如果conut出来的值大于1就告警

    Notifications,设置通知方式,和信息。我们选择之前的发送邮件

     

     当如下图出现碎裂的红心,说明已经发送告警了

     我们的邮箱收到了邮件,如下

    项目源码:https://github.com/caofanqi/study-security/tree/dev-prometheus2

  • 相关阅读:
    定时器的使用
    new LayoutParams 使用
    判断,日期是是昨天,前天 ,今天
    google推出的SwipeRefreshLayout下拉刷新用法
    Intent的Flag
    Eclipse Java注释模板设置详解
    Eclipse的模板设置代码
    Android如何在java代码中设置margin
    软键盘挡住输入框的解决方案
    Android自定义遮罩层设计
  • 原文地址:https://www.cnblogs.com/caofanqi/p/12308454.html
Copyright © 2011-2022 走看看