如何将Kafka数据导出到Prometheus?

2024-01-06

我在 kafka 主题中以时间序列的形式获得了 300K+ 指标/分钟。我想存储和查询数据。满足我需求的可视化工具是Grafana。为了有效地存储和查询,我正在考虑将这些时间序列存储在Prometheus中。

具有大量时间序列的 Kafka 主题 -> Prometheus -> Grafana

我不太确定,如何实现这一点,因为 Prometheus 是基于 Pull 的抓取方法。即使我编写拉取服务,它是否允许我拉取 300K/分钟的指标?

SYS 1, UNIX TIMESTAMP, CPU%, 10
SYS 1, Processor, UNIX TIMESTAMP, CPUCACHE, 10
SYS 2, UNIX TIMESTAMP, CPU%, 30
.....

大多数文章都讨论Kafka导出器/JMX导出器来监控Kafka。我不是在寻找 kafka 监控,而是发送存储在主题中的时间序列数据,并利用 Prometheus 查询语言和 Grafana 进行分析。


我遇到了“Kafka Connect Prometheus Metrics Sink 连接器”,它从多个 Apache Kafka® 主题导出数据,并使数据可用于由 Prometheus 服务器抓取的端点。它是融合平台中的商业产品。

https://docs.confluence.io/kafka-connect-prometheus-metrics/current/index.html#prometheus-metrics-sink-connector-for-cp https://docs.confluent.io/kafka-connect-prometheus-metrics/current/index.html#prometheus-metrics-sink-connector-for-cp

我坚持使用现有的时间序列数据库。为了使用 Grafana,请编写自定义数据源。实现 PROMQL 可能是另一种选择。

Update:

了解了 OpenTelemetry。可以使用 Opentelemetry 标准将指标转换为 OTLP 格式,并让 Opentelemetry 收集器从 Kafka 读取它。 OpenTelemetry 收集器有一个 prometheus 远程写入导出器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将Kafka数据导出到Prometheus? 的相关文章

  • 我的 Kafka 流应用程序刚刚退出,代码为 0,什么也不做

    为了尝试 Kafka 流 我这样做了 public static void main String args final StreamsBuilder builder new StreamsBuilder final Properties
  • 对 SQL 时间序列进行采样

    我有一个日期时间的时间序列 存储在 mySQL 中的双列 并且希望每分钟对时间序列进行采样 即以一分钟的间隔提取最后一个值 有没有一种有效的方法可以在一个 select 语句中执行此操作 蛮力方法将涉及选择整个系列并在客户端进行采样或为每个
  • Kafka:如何获取主题的最后修改时间,即添加到主题的任何分区的最后一条消息

    我们的用例是从 kafka 中删除陈旧 未使用的主题 即如果某个主题 在所有分区上 在过去 7 天内没有任何新消息 那么我们会将其视为陈旧 未使用并删除它 许多谷歌结果建议向消息添加时间戳 然后解析它 对于新主题和消息 灵魂可以工作 但我们
  • 如何获取普罗米修斯中速率的分位数

    我正在看这个article https www robustperception io how does a prometheus histogram work TYPE prometheus http request duration s
  • 当我们在 Apache Spark 中使用时,无法找到 Set([TOPIC NAME,0])) 的领导者

    我们使用 Apache Spark 1 5 1 和 kafka 2 10 0 8 2 1 以及 Kafka DirectStream API 通过 Spark 从 Kafka 获取数据 我们使用以下设置在 Kafka 中创建了主题 复制因子
  • 如何反转 Python statsmodels ARIMA 预测中的差异?

    我正在尝试使用 Python 和 Statsmodels 来理解 ARIMA 预测 具体来说 为了使 ARIMA 算法发挥作用 需要通过差分 或类似方法 使数据平稳 问题是 在进行残差预测后 如何反转差异以返回到包含差异化趋势和季节性的预测
  • Kafka不启动空白输出

    我正在努力安装 Kafka 和 Zookeeper 我已经运行了 Zookeeper 并且它当前正在运行 我将所有内容设置为 https dzone com articles running apache kafka on windows
  • Kafka Java Consumer 已关闭

    我刚刚开始使用卡夫卡 我面临着消费者的一个小问题 我用Java写了一个消费者 我收到此异常 IllegalStateException 此消费者已关闭 我在以下行中遇到异常 ConsumerRecords
  • 使用 ggplot2 和 geom_area 堆叠负/正时间序列

    我正在尝试重现一个堆积的时间序列图 该图显示银行资产负债表的构成和规模如何随时间变化 它应该看起来像这样 资产位于 x 轴上方 负债位于 x 轴下方 到目前为止 我已经能够使用以下方法成功重现图表的每一半ggplot plot assets
  • Kafka 中的内部和外部通信

    流动 本地 gt 代理 gt Kafka advertised listeners PLAINTEXT proxyhostname 8080 for external communication listeners PLAINTEXT 90
  • 如何将 pandas DataFrame 转换为 TimeSeries?

    我正在寻找一种将 DataFrame 转换为 TimeSeries 而不拆分索引和值列的方法 有任何想法吗 谢谢 In 20 import pandas as pd In 21 import numpy as np In 22 dates
  • 带有 spring-kafka 的 Kafka 死信队列 (DLQ)

    最好的实施方式是什么死信队列 DLQ Spring Boot 2 0 应用程序中的概念 使用 spring kafka 2 1 x 来处理无法处理的所有消息 KafkaListener某些bean发送到某些预定义的Kafka DLQ主题的方
  • 无法使用 API 获取的数据初始化 ngx-charts

    我在尝试初始化使用构建的图表时遇到了一些困难ngx 图表 https github com swimlane ngx charts使用API 获取数据 我构建了一个 REST API 在正确调用后 它会输出一些时间序列数据 prices i
  • Kafka Streams 反序列化处理程序

    我正在尝试在反序列化中使用 LogAndContinueExceptionHandler 当发生错误时 通过成功记录错误并继续 它可以正常工作 但是 假设我的传入消息有连续的错误流 我停止并重新启动 kafka 流应用程序 然后我看到失败并
  • Mesos DCOS 未安装 Kafka

    我正在尝试在 Mesos 上安装 Kafka 看来安装已经成功了 vagrant DevNode dcos dcos package install kafka This will install Apache Kafka DCOS Ser
  • Kafka JDBC Sink Connector,批量插入值

    我每秒收到很多消息 通过 http 协议 50000 100000 并希望将它们保存到 PostgreSql 我决定使用 Kafka JDBC Sink 来实现此目的 消息以一条记录保存到数据库 而不是批量保存 我想在 PostgreSQL
  • 将 Kafka 输入流动态连接到多个输出流

    Kafka Streams 中是否内置了允许将单个输入流动态连接到多个输出流的功能 KStream branch允许基于真 假谓词进行分支 但这并不是我想要的 我希望每个传入的日志都确定它将在运行时流式传输到的主题 例如日志 date 20
  • Flink Kafka - 如何使应用程序并行运行?

    我正在 Flink 中创建一个应用程序 读取某个主题的消息 对其进行一些简单的处理 将结果写入不同的主题 我的代码确实有效 然而它不并行运行我怎么做 看来我的代码只在一个线程 块上运行 在 Flink Web 仪表板上 应用程序进入运行状态
  • JDBC Kafka Connector 可以从多个数据库中提取数据吗?

    我想设置一个 JDBC Kafka 连接器集群 并将它们配置为从同一主机上运行的多个数据库中提取数据 我一直在查看 Kafka Connect 文档 似乎在配置 JDBC 连接器后 它只能从单个数据库中提取数据 谁能证实这一点吗 根据您启动
  • 卡夫卡监听器中的钩子

    kafka 监听消息之前 之后是否有任何类型的钩子可用 使用案例 必须设置MDC关联id才能进行日志溯源 我在寻找什么 之前 之后回调方法 以便可以在进入时设置 MDC 关联 ID 并最终在退出时清除 MDC 编辑后的场景 我将关联 id

随机推荐

  • 更改 UITableView 的节页眉/页脚标题而不重新加载整个表视图

    有没有办法在不调用的情况下重新加载表视图的节页眉 页脚 tableView reloadData 事实上 我想在表视图的部分页脚中显示表格视图部分中的单元格数量 表视图是可编辑的 我使用删除或插入行 insertRowsAtIndexPat
  • Android:将 PNG ByteArray 写入文件

    我已将图像文件读入 ByteArray 但如何将其写回 我的意思是将 ByteArray 保存到文件系统中的图像文件 首选 PNG 格式 我的代码从 PNG 文件到 ByteArray ByteArrayOutputStream strea
  • 使用 Quartz 跨多个无状态应用程序服务器调度单个作业

    我在负载均衡器后面有一层相同的应用程序服务器 出于操作原因 我有一个限制 即两个应用程序服务器上的应用程序配置必须相同 以便可以轻松添加和删除节点 所有应用程序服务器共享相同的数据库 应用程序服务器不会 不会集群 到目前为止 这一切都运行良
  • 在片段中初始化字体

    我有这一行 Typeface font Typeface createFromAsset getAssets fonts Delius Regular ttf but the getAssets 参数似乎带来了一些错误 它带有可怕的红线下划
  • 为什么我们要在 YARN 中配置 mapred.job.tracker?

    据我所知 YARN 被引入并取代了 JobTracker 和 TaskTracker 我看过一些Hadoop 2 6 0 2 7 0安装教程 他们正在配置mapreduce framework name作为纱线和mapred job tra
  • 在运行时调整 char[] 的大小

    我需要调整大小char array size to char array new size 在运行时 我怎样才能做到这一点 如果您正在使用std vector
  • ASP.NET MVC 3:具有继承/多态性的 DefaultModelBinder

    首先 对这篇大文章 我尝试先做一些研究 以及针对同一问题的技术组合 ASP NET MVC 3 Ninject 和 MvcContrib 表示歉意 我正在使用 ASP NET MVC 3 开发一个项目来处理一些客户订单 简而言之 我有一些继
  • 有没有办法生成 DOCX 文件的缩略图?

    我已经使用像 ASPOSE 这样的 付费 工具完成了这项工作 但我很好奇是否有任何开源工具可以做到这一点 我确信可能有工具可以做到这一点 但如果您可以将文件转换为可以轻松光栅化的格式 那么可能值得探索 例如 将工作文档转换为 pdf 然后对
  • 对从 JSON 创建的数据框应用过滤条件

    我正在处理由 JSON 创建的数据帧 然后我想在数据帧上应用过滤条件 val jsonStr metadata key 84896 value 54 key 1234 value 12 val rdd sc parallelize Seq
  • 命名空间不能直接包含成员... + 类型或命名空间定义,或文件结尾预期错误

    我正在尝试编译适用于 Windows Phone 的 Sync Framework 4 0 的示例代码 但是我在几个文件中遇到了错误 这些文件之一是 if SERVER namespace Microsoft Synchronization
  • 我如何从密钥库中获取秘密?

    我想从 Azure 密钥保管库获取机密 我找到了下面的代码并尝试了它 但我因错误而失败 private String clientId i private String secret i KeyVaultClient client new
  • 我什么时候应该使用 out 参数?

    我不明白何时应该使用输出参数 如果我需要返回多个类型 我个人会将结果包装在新类型中 我发现使用它比使用 out 更容易 我见过这样的方法 public void Do int arg1 int arg2 out int result 在某些
  • 使用 php 发送带有附件的电子邮件

    我使用此代码使用 php 发送带有附件的电子邮件 但附件中存在一些错误 因为我收到了一封电子邮件并且附件出现在内容中 在我使用相同的代码并成功运行之前 为什么
  • 理解 Rust 中的线程安全 RwLock> 机制

    背景 I am 全新的Rust 昨天开始 我试图确保我理解正确 我正在寻找为 游戏 编写一个配置系统 并希望它能够快速访问但偶尔可变 首先 我想研究本地化 这似乎是静态配置的合理用例 因为我意识到这些东西通常不会 生锈 我想出了以下 工作
  • django ModelMultipleChoiceField 设置初始值

    我有以下代码 category forms ModelMultipleChoiceField label Category queryset Category objects order by name widget forms Selec
  • 有没有地方可以在一处获取 laravel `vendor` 文件夹?

    我意识到这就是作曲家的用途 但我不是特别喜欢它 这是有道理的 但让我恼火的是 laravel5 的 github 不能开箱即用 因为它是vendor目录有点大 不一定是 laravel5 尽管 laravel 确实需要它 我也很困惑为什么作
  • 如何在 Intellij IDEA 运行之前启用 Hibernate 字节码检测?

    在 gradle 中你可以使用以下方法来实现 apply plugin enhance buildscript repositories mavenCentral dependencies classpath org hibernate h
  • 删除动态数组的一部分并增加其他部分

    我需要一个动态数组 因此我需要通过指针分配必要的内存量 让我想知道哪个是一个好的解决方案 是 C 能够执行以下操作 int p new int 6 它分配必要的数组 我需要的是 之后我想增加这个数组的一些部分 一个 有缺陷的 例子 int
  • 代理网络充斥着未使用的 ActiveMQ.Advisory.TempQueue 消息

    我目前正在调查我的经纪商网络中的内存问题 根据 JConsole 的说法 当代理开始阻止消息时 ActiveMQ Advisory TempQueue 占用了 99 的配置内存 有关配置的一些细节 大部分情况下都是默认配置 一个开放的 st
  • 如何将Kafka数据导出到Prometheus?

    我在 kafka 主题中以时间序列的形式获得了 300K 指标 分钟 我想存储和查询数据 满足我需求的可视化工具是Grafana 为了有效地存储和查询 我正在考虑将这些时间序列存储在Prometheus中 具有大量时间序列的 Kafka 主