Fra*_*iat 1 monitor gerrit prometheus
我想用Prometheus监视Gerrit守护进程。
如何配置 Gerrit 的插件metrics-reporter-prometheus和 Prometheus 进行白盒监控?
免责声明:此导出器主要公开 Gerrit 守护进程内部指标,由Dropwizard 指标生成。项目数、待审...未报告
注 2:我对使用通用导出器(JMX 导出器、Javamelody...)不感兴趣
这个出口商的典型指标如下:
# HELP caches_disk_cached_git_tags Generated from Dropwizard metric import (metric=caches/disk_cached/git_tags, type=com.google.gerrit.metrics.dropwizard.BucketedCallback$ValueGauge)
# TYPE caches_disk_cached_git_tags gauge
caches_disk_cached_git_tags 0.0
# HELP http_server_rest_api_response_bytes_project_ListProjects Generated from Dropwizard metric import (metric=http/server/rest_api/response_bytes/project.ListProjects, type=com.codahale.metrics.Histogram)
# TYPE http_server_rest_api_response_bytes_project_ListProjects summary
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.5",} 216.0
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.75",} 216.0
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.95",} 216.0
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.98",} 216.0
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.99",} 216.0
http_server_rest_api_response_bytes_project_ListProjects{quantile="0.999",} 216.0
http_server_rest_api_response_bytes_project_ListProjects_count 3.0
# HELP http_server_rest_api_response_bytes_query_change_QueryChanges Generated from Dropwizard metric import (metric=http/server/rest_api/response_bytes/query.change.QueryChanges, type=com.codahale.metrics.Histogram)
# TYPE http_server_rest_api_response_bytes_query_change_QueryChanges summary
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.5",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.75",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.95",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.98",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.99",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges{quantile="0.999",} 16.0
http_server_rest_api_response_bytes_query_change_QueryChanges_count 17.0
[..]
[..]
Run Code Online (Sandbox Code Playgroud)
和一些通常的喜欢
# HELP proc_jvm_memory_heap_committed Generated from Dropwizard metric import (metric=proc/jvm/memory/heap_committed, type=com.google.gerrit.metrics.dropwizard.CallbackMetricImpl0$1)
# TYPE proc_jvm_memory_heap_committed gauge
proc_jvm_memory_heap_committed 5.77241088E8
# HELP proc_birth_timestamp Generated from Dropwizard metric import (metric=proc/birth_timestamp, type=com.google.gerrit.metrics.dropwizard.CallbackMetricImpl0$1)
# TYPE proc_birth_timestamp gauge
proc_birth_timestamp 1.525600508281E15
# HELP proc_cpu_usage Generated from Dropwizard metric import (metric=proc/cpu/usage, type=com.google.gerrit.metrics.dropwizard.CallbackMetricImpl0$1)
# TYPE proc_cpu_usage gauge
proc_cpu_usage 93.24
# HELP proc_num_open_fds Generated from Dropwizard metric import (metric=proc/num_open_fds, type=com.google.gerrit.metrics.dropwizard.CallbackMetricImpl0$1)
# TYPE proc_num_open_fds gauge
Run Code Online (Sandbox Code Playgroud)
回答我自己...
工作原理:普罗米修斯会刮
假设:
~/gerrit
ssh -p 29418 admin@gerrit.example.com gerrit version
安装插件
安装 Gerrit 导出器插件。更容易的是从 gerritforge 下载 JAR。浏览https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.14/job/pluin-metrics-reporter-prometheus-bazel-stable-2.14/并下载metrics-reporter-prometheus.jar
,或执行 Unix 命令:
cd ~/gerrit/plugins/
wget -O metrics-reporter-prometheus.jar 'https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.14/job/plugin-metrics-reporter-prometheus-bazel-stable-2.14/lastSuccessfulBuild/artifact/bazel-genfiles/plugins/metrics-reporter-prometheus/metrics-reporter-prometheus.jar'
Run Code Online (Sandbox Code Playgroud)
然后重启 Gerrit
在 Gerrit Web 界面中以管理员身份连接,转到 Plugins>Installed 以验证是否列出并启用了 metrics-reporter-prometheus,或运行:
ssh -p 29418 admin@gerrit.example.com gerrit plugin ls
Run Code Online (Sandbox Code Playgroud)
授权账号和群组
接下来您需要在 Gerrit 中创建一个组和一个帐户,然后授予功能View Metrics
。
此过程应适用于您在 Gerrit (LDAP...) 中管理用户帐户的方式。对于本地帐户(由 SSH 管理):
ssh -p 29418 admin@gerrit.example.com 'gerrit create-group "Prometheus Metrics" '
ssh -p 29418 admin@gerrit.example.com 'gerrit create-account prometheus --full-name "Prometheus Monitoring" --email prometheus@gerrit.example.com '
ssh -p 29418 admin@gerrit.example.com 'gerrit set-members "Prometheus Metrics" --add "prometheus" '
ssh -p 29418 admin@gerrit.example.com 'gerrit set-account prometheus --http-password ChangeThisInsecurePassword '
Run Code Online (Sandbox Code Playgroud)
在 Gerrit 中授予“Prometheus Metrics”权限
Global Capabilities
,单击Add Permission
(通常是第 4 个下拉菜单)
View Metrics
在下拉列表中选择权限测试 !
测试认证和授权,有两个选项: * 用create account登录web界面(应该成功!),然后更改URL路径(http://gerrit.example.com:8080/a/plugins/metrics-reporter-prometheus/metrics
),你应该得到Prometheus metrics!* 或使用wget
(curl
或其他):
wget -O - --user prometheus --password ChangeThisInsecurePassword http://gerrit.example.com:8080/a/plugins/metrics-reporter-prometheus/metrics
Run Code Online (Sandbox Code Playgroud)
重要信息您可能需要在 Gerrit URL 前加上前缀/a/
以强制进行 HTTP 身份验证(阅读文档)
如果出现错误ERROR 403: Forbidden access.
,请仔细检查上述过程(用户是否存在?组是否存在?已授予权限?)!
编辑文件/etc/prometheus/prometheus.yml
,添加作业:
cd ~/gerrit/plugins/
wget -O metrics-reporter-prometheus.jar 'https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.14/job/plugin-metrics-reporter-prometheus-bazel-stable-2.14/lastSuccessfulBuild/artifact/bazel-genfiles/plugins/metrics-reporter-prometheus/metrics-reporter-prometheus.jar'
Run Code Online (Sandbox Code Playgroud)
检查 promethsu 配置文件:
promtool check-config /etc/prometheus/prometheus.yml
Run Code Online (Sandbox Code Playgroud)
让 prometheus 重新加载它的配置,使用以下之一:
systemctl reload prometheus
killall -HUP prometheus
docker exec -ti graphite-exporter killall -HUP prometheus
Run Code Online (Sandbox Code Playgroud)
测试:
访问 Prometheus 的状态页面 ( http://prom.example.com:9090/targets#job-gerrit ),然后检查作业/目标状态。
用
转到 prometheus 表达式浏览器 ( http://prom.example.com:9090 ),然后输入:
{job="gerrit"}
Run Code Online (Sandbox Code Playgroud)
并在格拉法纳享受 :-)
归档时间: |
|
查看次数: |
1384 次 |
最近记录: |