{"id":31457,"date":"2022-10-03T17:26:49","date_gmt":"2022-10-03T17:26:49","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=31457"},"modified":"2024-05-29T03:10:50","modified_gmt":"2024-05-29T03:10:50","slug":"how-to-display-jenkins-build-status-on-grafana-using-prometheus","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/how-to-display-jenkins-build-status-on-grafana-using-prometheus\/","title":{"rendered":"Grafana Tutorials: Display Jenkins Build Status on Grafana using prometheus?"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 1: Install Grafana server<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 2: Install Jenkins Server<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 3: Install prometheus Server?<\/h3>\n\n\n\n<p>Jenkins Prometheus Plugin expose an endpoint (default \/prometheus) with metrics where a Prometheus Server can scrape.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>https:\/\/www.devopsschool.com\/blog\/install-and-configure-prometheus-server-and-node-exporter-in-rhel\/<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 4: Install jenkins plugins &#8220;Prometheus metrics&#8221;<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 5: Restart jenkins<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 6: Review Prometheus config at http:\/\/192.168.1.9:8080\/configure but do not change<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 7: Validate all the jenkins metrics at http:\/\/192.168.1.9:8080\/prometheus<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 8: Configure Prometheus for scrapping http:\/\/192.168.1.9:8080\/prometheus<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Edit prometheus.yaml<\/li><li>add follwing stanza<\/li><\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">scrape_configs:\n  <span class=\"hljs-comment\"># The job name is added as a label `job=&lt;job_name&gt;` to any timeseries scraped from thi<\/span>\ns config.\n  - job_name: <span class=\"hljs-string\">\"prometheus\"<\/span>\n\n    <span class=\"hljs-comment\"># metrics_path defaults to '\/metrics'<\/span>\n    <span class=\"hljs-comment\"># scheme defaults to 'http'.<\/span>\n\n    static_configs:\n      - targets: &#91;<span class=\"hljs-string\">\"localhost:9090\"<\/span>]\n  - job_name: jenkins\n    metrics_path: <span class=\"hljs-string\">'\/prometheus'<\/span>\n    static_configs:\n    - targets: &#91;<span class=\"hljs-string\">'192.168.1.9:8080'<\/span>]\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 8: Validate prometheus.yml file<\/h3>\n\n\n\n<p>$ .\/promtool check config prometheus.yml<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 9: Restart prometheus services<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 10: Validate prometheus jenkins target at http:\/\/192.168.1.2:9090\/targets?search=<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 11: Wait for 1 mins.<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Step &#8211; 12: Vaidate all jenkins metrics at http:\/\/192.168.1.2:9090\/graph using search<\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Step &#8211; 1: Install Grafana server Step &#8211; 2: Install Jenkins Server Step &#8211; 3: Install prometheus Server? Jenkins Prometheus Plugin expose an endpoint (default \/prometheus) with metrics where a&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[5012],"tags":[],"class_list":["post-31457","post","type-post","status-publish","format-standard","hentry","category-grafana"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=31457"}],"version-history":[{"count":2,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31457\/revisions"}],"predecessor-version":[{"id":31465,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31457\/revisions\/31465"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=31457"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=31457"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=31457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}