我们使用Kafka图表(版本17)作为图表的依赖项。我试着配置对Kafka的监控。
values.yaml:
kafka:
metrics:
kafka:
enabled: true
jmx:
enabled: true
serviceMonitor:
enabled: true
labels:
my.custom.label/service-monitor: "1.0"
...
然后,我部署我的应用程序,并前往普罗米修斯目标,我看到以下内容:
我对失败的请求感到担忧。
我看到了什么?
有两种服务需要监控:
并且这两个服务都由2条路径请求:
但是< code>kafka-exporter对< code>/没有响应。如果启用了2个导出器,有没有办法配置kafka图表使其正常工作?
服务定义:
spec:
endpoints:
- path: /
port: http-metrics
namespaceSelector:
matchNames:
- my-ns
selector:
matchLabels:
app.kubernetes.io/component: metrics
app.kubernetes.io/instance: dev-my-app
app.kubernetes.io/name: my-app-kafka
spec:
endpoints:
- path: /metrics
port: http-metrics
namespaceSelector:
matchNames:
- my-ns
selector:
matchLabels:
app.kubernetes.io/component: metrics
app.kubernetes.io/instance: dev-my-app
app.kubernetes.io/name: my-app-kafka
最终我完成了以下解决方案:
我使用来自Kafka图表的 jmx 导出器:
values.yaml
kafka:
metrics:
kafka:
enabled: false
jmx:
enabled: true
serviceMonitor:
enabled:true
labels:
my.super.company/service-monitor: "1.0"
enabled: true
并将 Kafka 导出器注册为单独的依赖项:
chart.yaml:
- name: prometheus-kafka-exporter
version: 1.6.0
repository: https://prometheus-community.github.io/helm-charts
并手动配置:
values.yaml
prometheus-kafka-exporter:
kafkaServer:
- my-kafka-server:9092
prometheus:
serviceMonitor:
enabled: true
namespace: ""
additionalLabels:
my.super.company/service-monitor: "1.0"
Kafka出口商没有在/回复。
这是因为<code>web。遥测路径默认为/metrics
https://github.com/danielqsj/kafka_exporter/blob/master/kafka_exporter.go#L700
您的服务监视器混淆了
kafkajmx度量
结尾的那个应该有容器=jmx导出器
标签kafka度量
结尾的应该具有容器=kafka导出器
目前,您已经展示了在相对的ServiceMonitors中每个容器都有一个。我怀疑这是因为你的标签选择器完全相同,但路径不同。
如果你只有一个Kafka经纪人,你应该只有两个目标。一个JMX出口商(每个经纪人)和一个Kafka出口商
因此,两个经纪人将有3个目标:2个JMX出口商和1个Kafka出口商(因为这是针对整个集群的)。
我正在使用SpringBoot和Kafka流,尽管我没有使用SpringCloud流。 我确实使用了并将设置为: 但当我启动应用程序时,我点击了以下NPE: 更新: 我使用以下依赖项: Spring靴2.5.5 千分尺1.7.4 apache kafka streams 3.0.0 感谢您的帮助!谢谢
27.2 将Bean暴露给JMX MBeanExporter是Spring JMX 框架中的核心类。它负责把Spring bean注册到JMX MBeanServer。例如,下面的例子: package org.springframework.jmx; public class JmxTestBean implements IJmxTestBean { private Stri
filters/metrics 插件是使用 Ruby 的 Metriks 模块来实现在内存里实时的计数和采样分析。该模块支持两个类型的数值分析:meter 和 timer。下面分别举例说明: Meter 示例(速率阈值检测) web 访问日志的异常状态码频率是运维人员会非常关心的一个数据。通常我们的做法,是通过 logstash 或者其他日志分析脚本,把计数发送到 rrdtool 或者 graph
我想启用 kafka 监控,我从单节点部署开始作为测试。我正在按照 https://alex.dzyoba.com/blog/jmx-exporter/ 中的步骤进行操作 我尝试了以下步骤;检查jmx导出器HTTP服务器的最后一个命令报告为空。我相信这就是我没有看到Kafka指标的原因。(更多详情请参见下文) Kafka代理登录控制台没有任何ERROR消息。 我让Prometheus在一个容器中运
我想获取一个接收器连接器的sink-record-active-count值,这里给出https://docs.confluent.io/current/connect/managing/monitoring.html#sink-task-metrics 我有所有容器运行在docker桌面使用docker compose文件docker ps docker ps 我使用了汇合度量报告器来完成该任务
在我们的一个基于spring boot的服务中,我们打算同时连接到两个不同的kafka集群。这些集群都有自己的引导服务器集、主题配置等。它们之间没有任何关联,就像这个问题中的情况一样。 我将有不同类型的消息从不同主题名称的每个集群中读取。可能有或可能没有多个生产者通过此服务连接到两个集群,但我们肯定每个集群至少有一个消费者。 我想知道如何在application.yml中定义属性以满足此设置,以便