jenkins 提供了rest api,我们可以基于rest api 暴露prometheus metrics,社区已经有了好多
开源的实现了,使用起来也比较方便,以下集成几个进行简单的测试

环境准备

  • docker-compose 文件
 
  1. version: "3"
  1. services:
  1. jenkins:
  1. image: jenkins/jenkins:lts-slim
  1. ports:
  1. - "8080:8080"
  1. jenkins-exporter2:
  1. image: tboerger/jenkins-exporter
  1. command: -jenkins.address=http://jenkins:8080 -jenkins.password=dalong -jenkins.username=admin
  1. ports:
  1. - "9103:9103"
  1. jenkins-exporter3:
  1. image: tolleiv/jenkins_exporter
  1. command: -j=http://jenkins:8080 --password=dalong --user=admin
  1. ports:
  1. - "9119:9118"
  1. jenkins-exporter:
  1. image: dalongrong/jenkins_exporter
  1. env_file:
  1. - .env
  1. ports:
  1. - "9118:9118"
  1. grafana:
  1. image: grafana/grafana
  1. ports:
  1. - "3000:3000"
  1. prometheus:
  1. image: prom/prometheus
  1. volumes:
  1. - "./prometheus.yml:/etc/prometheus/prometheus.yml"
  1. ports:
  1. - "9090:9090"
  • promethesu 配置
  1. scrape_configs:
  1. - job_name: jenkins
  1. metrics_path: /metrics
  1. scrape_interval: 10s
  1. scrape_timeout: 10s
  1. static_configs:
  1. - targets: ['jenkins-exporter:9118']
  1. - job_name: jenkins2
  1. metrics_path: /metrics
  1. scrape_interval: 10s
  1. scrape_timeout: 10s
  1. static_configs:
  1. - targets: ['jenkins-exporter2:9103']
  1. - job_name: jenkins3
  1. metrics_path: /metrics
  1. scrape_interval: 10s
  1. scrape_timeout: 10s
  1. static_configs:
  1. - targets: ['jenkins-exporter3:9118']
  • 简单说明
    包含了三个exporter tboerger/jenkins-exporter ,tolleiv/jenkins_exporter,akawork/Jenkins-exporter
    使用方法很简单,同时也集成了一个基于docker 的jenkins,方便测试

启动&&测试

  • 启动
  1. docker-compose up -d
  • 效果

  • jenkins 任务

说明

以上是一个简单的集成三个exporter 进行测试,还是很方便的,可以快速的查看任务的构建的状态

参考资料

https://github.com/akawork/Jenkins-exporter.git
https://github.com/akawork/Jenkins-exporter
https://github.com/rongfengliang/jenkins-exporter-prometheus

使用jenkins exporter 监控jenkins 构建任务的更多相关文章

  1. jenkins配置slave节点 构建项目并执行操作

    1.新建与配置结点 [系统管理]-> [管理结点]-> [新建结点] 2.配置slave 说明: Name: 定义slave的唯一名称标识,可以是任意字符串,通常设置为slave主机名.i ...

  2. Linux下Jenkins与GitHub自动构建NetCore与部署

    今天我们来谈谈NetCore在Linux底下的持续集成与部署.NetCore我就不多介绍了,持续集成用的是Jenkins,源代码管理器用的是GitHub.我们就跟着博文往下走吧. 1.Linux环境 ...

  3. jenkins -- 安装、任务构建

    一.jenkins是什么? Jenkins是一个开源的.提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续.自动的构建/测试软件项目.监控外部任务的运行( ...

  4. Jenkins:基于linux构建ivy项目

    Jenkins:基于linux构建ivy项目 (二) 基于以上<Jenkins:VMware虚拟机Linux系统的详细安装和使用教程(一)>的配置再进行对ivy项目构建: 启动tomcat ...

  5. Jenkins + Github持续集成构建Docker容器,维基百科&人工自能(AI)模块

    本文分两部分,第一部分是手动计划任务的方式构建Github上的Docker程序,第二部分是用Github webhook Trigger一个自动构建任务. Jenkins采用2.5版本Docker采用 ...

  6. 项目(八) Jenkins持续集成与构建

    Jenkins环境搭建 由于Jenkins是依赖于java的,所以先介绍java环境的搭建 1)使用官方的二进制包解压安装,官方二进制包的下载地址:http://www.oracle.com/tech ...

  7. jenkins:一个jenkins项目远程触发另一个jenkins项目构建配置

    很多时候,我们会有这样的应用场景:一个jenkins上的项目构建后,需要远程触发另一台机子上的jenkins中某个项目的构建,可以通过Parameterized Remote Trigger Conf ...

  8. 使用 Zabbix 监控 Jenkins

    笔者最近的工作涉及到使用 Zabbix 监控 Jenkins.在谷歌上搜索到的文章非常少,能操作的就更少了.所以决定写一篇文章介绍如何使用 Zabbix 监控 Jenkins. 下图为整体架构图: 整 ...

  9. Jenkins之使用Pyinstaller构建Python应用程序

    目录 1. 极简概述 2. Jenkins配置 2.1 安装JDK 2.2 安装Jenkins 3. 安装Docker 4. 使用PyInstaller构建Python应用程序 4.1 Fork 一个 ...

随机推荐

  1. C#MVC中ViewData和ViewBag的使用

    ViewBag和ViewData的区别 ViewData ViewBag 它是key/value字典集合 它是dynamic类型对象 从asp.net mvc1就有了 从asp.netmvc3才有 基 ...

  2. Oracle分页查询和SQL server分页查询总结

    分页查询是项目中必不可少的一部分,难倒是不难,就是这些东西,长时间不用,就忘的一干二净了.今天特此总结一下这两款数据库分页查询的实现过程(只记录效率比较高的) 一.Oracle中的分页查询 1.通用分 ...

  3. Spring IOC 概述

    Spring IOC 概述 IOC(Inversion of Control) 控制反转,也叫 DI(D_ependency injection_) 依赖注入.是一种设计思想.不过我并不同意所谓反转的 ...

  4. Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1

    可以看出是 maven-surefire-plugin:2.18.1 插件问题,在网上寻找解决方案如下: <plugin> <groupId>org.apache.maven. ...

  5. 【开发笔记】-通过js控制input禁止输入空格

    <input type="text" id="fname" onkeyup="myFunction(id)"> <scri ...

  6. SpringMVC中@RequestParam注解作用

    1.不使用@RequestParam  请求参数名必须和形参名称一样 2.使用@RequestParam    请求参数名必须和@RequestParam value属性值一样    请求参数名不必和 ...

  7. Sping注解开发

    基本注解 @Configuration 作用: 标记在类上表示是一个配置类(相当于一个配置类) @Bean 作用: 在容器中放一个bean相当于xml文件里的bean标签 @Configuration ...

  8. oracle-常用sql语句和函数

    1.求字符串长度 --计算字符串长度的函数 select length('你好世界!') len from dual; 2.常用函数 -- dbms_random.value(1,7) 获取(1,7) ...

  9. Pandas 之 描述性统计案例

    认识 jupyter地址: https://nbviewer.jupyter.org/github/chenjieyouge/jupyter_share/blob/master/share/panda ...

  10. The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone 。

    The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. 今天有Mys ...