当前位置:服务器 > > 正文

zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

时间:2021-11-05 14:03:28类别:服务器

zabbix如何监控访问状态码

基于zabbix实现监控Jenkins过程详解

一、监控架构图

zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

二、实现思路

三、具体配置

1、安装Jenkins Metrics插件

插件下载地址:http://updates.jenkins-ci.org/download/plugins/metrics/

安装 Metrics 插件,在系统配置中,会多出“Metrics”的配置,如下图:

zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

配置项不复杂。我们需要点击“Generate...”生成一个 Access Key(生成后,记得要保存)。这个 Key 用于身份校验,后面我们会用到。

保存后,我们在浏览器中输入URL:http://jenkins.local,me/metrics/<刚生成的 Access Key> 验证 Jenkins 是否已经暴露 metrics。如果看到如下图,就说明可以进行下一步了:

zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

1.1 Metrics 插件介绍

Metrics 插件是基于 dropwizard/metrics 实现。它通过4个接口暴露指标数据:/metrics,/ping,/threads,/healthcheck。

1.2 Metrics 插件:/metrics 接口介绍

点击上图中的metric链接(http://jenkins.local.me/metrics/<Access Key>/metrics),它暴露了以下指标数据:

  • {
     version: "4.0.0",
     gauges: {...},
     counters: {...},
     histograms: {...},
     meters: {...},
     timers: {...}
    }
    
  • Gauges:某项指标的瞬时值,例如:当前 Jenkins executor 的总个数(jenkins.executor.count.value)
    Counters:某项指标的总数值,例如:http 请求活动连接数(http.activeRequests)
    Meters:一段时间内,某事件的发生概率,例如:Jenkins成功执行的任务每分钟的执行次数(jenkins.runs.success.m1_rate)
    Histogram:统计指标的分布情况。例如:Jenkins executor 数量的分布(jenkins.executor.count.history)
    Timer:某项指标的持续时间。例如:Jenkins 任务等待时间(jenkins.job.waiting.duration)

    1.3 Metrics插件其他接口

    /ping:接口返回pong代表 Jenkins 存活,如下图:

    zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

    /threads:返回 Jenkins 的线程信息

    /healthcheck:返回以下指标:

  • {
     "disk-space" : {
      "healthy" : true
     },
     "plugins" : {
      "healthy" : true,
      "message" : "No failed plugins"
     },
     "temporary-space" : {
      "healthy" : true
     },
     "thread-deadlock" : {
      "healthy" : true
     }
    }
    
  • Zabbix server 通过与 Zabbix agent 进行通信实现数据的采集。而 Zabbix agent 又分为被动和主动两种模式。我们使用的是被动模式,也就是Zabbix server 向 agent 索要数据。
    所以,我们需要在 Zabbix agent 所在机器放一个获取 Jenkins 指标数据的脚本。再配置 Zabbix server 定时从该 agent 获取数据,最后配置触发器(trigger)实现告警。

    2.1 创建监控模板并链接至主机组

    zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)
    zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

    2.2 创建监控项

    zabbix如何监控访问状态码(基于zabbix实现监控Jenkins过程详解)

    这里需要解释其中几个选项为什么要那样填:

    到此,Zabbix server 端已经配置完成。可以在监测->最新数据中查看是否有最新的数据,然后可以创建仪表盘将数据以图形的方式呈现出来。其他监控项也可以按此方法进行配置。

    监控脚本代码

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。

    上一篇下一篇

    猜您喜欢

    热门推荐