apache-spark - 发送Spark流指标以打开tsdb

标签 apache-spark spark-streaming opentsdb

如何从Spark Streaming作业发送指标以打开tsdb数据库?我正在尝试使用开放式tsdb作为Grafana中的数据源。您能帮我提供一些引用资料吗?

我确实在这里看到了开放的tsdb报告程序,它做了类似的工作。如何整合Spark流作业中的指标以使用此指标?有没有简单的选择可以做到这一点。

最佳答案

将度量发送到opentsdb的一种方法是使用它的REST API。要使用它,只需将指标转换为JSON字符串,然后利用Apache Http Client库发送数据(它在java中,因此可以在scala中使用)。可以在github上找到示例代码。

一个更优雅的解决方案是使用Spark指标库并将接收器添加到数据库。在为Spark指标库添加OpenTSDB接收器时有一个discussion,但是最终没有将其添加到Spark本身中。该代码在github上可用,应该可以使用。不幸的是,该代码在Spark 1.4.1上兼容,但是,在最坏的情况下,仍然有可能获得一些必要添加的提示。

关于apache-spark - 发送Spark流指标以打开tsdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47644225/

相关文章:

java - 知道 Apache Spark 中 Java ForkJoinPool 中哪个线程进入哪个处理器?

scala - 使用 Spark Streaming 读取 fileStream

scala - 增量数据如何使用Spark

spark-streaming - 时间序列数据库与流分析引擎(如 Spark Streaming)之间的区别

monitoring - 有没有办法使用数据源作为 OpenTSDB 在 grafana 中重叠不同的时间图

apache-spark - k8上​​的Spark无法通过ECK进行身份验证

scala - 如何定义自定义聚合函数来对向量列求和?

scala - 缓存的 Spark RDD(从序列文件中读取)有无效条目,我该如何解决?

apache-kafka - KafkaStreams EXACTLY_ONCE 保证 - 跳过 kafka 偏移量