首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于将数据从jmxtrans输入到InfluxDB的JSON脚本

用于将数据从jmxtrans输入到InfluxDB的JSON脚本
EN

Stack Overflow用户
提问于 2016-02-03 16:40:20
回答 3查看 1.9K关注 0票数 1

我正在尝试使用jmxtrans来收集JVM指标,并且需要将数据输入到InfluxDB中。虽然我能够收集数据,但我不确定将数据输入数据库所需的标记和语法。

我已经尝试了JSON教程以及写入influx DB:https://docs.influxdata.com/influxdb/v0.8/api/reading_and_writing_data/的方法,但是找不到具体的答案,所以我写了这篇文章。

需要帮助修改json文件,以输入数据到InfluxDB。请给我建议。检索另一台服务器的堆内存使用情况的示例代码:

代码语言:javascript
复制
{
 "servers" : [ {
 "port" : "<PORT>",
 "host" : "<IP>",
 "queries" : [ {
  "obj" : "java.lang:type=Memory",
  "attr" : [ "HeapMemoryUsage", "NonHeapMemoryUsage" ],
  "outputWriters" : [ {
    "@class" : "com.googlecode.jmxtrans.model.output.GraphiteWriter",
    "settings" : {
        "templateFile" : "heapmemory-rrd-template.xml",
        "outputFile" : "target/heap.rrd",
        "binaryPath" : "/opt/local/bin",
        "debug" : true,
        "generate" : true
      } 
     } ]
   } ]
 } ]
}
EN

回答 3

Stack Overflow用户

发布于 2016-02-08 23:09:49

jmxtrans Wiki上有一个关于这个问题的例子-注意这个例子使用的是特定的InfluxDbWriter而不是GraphiteWriter

票数 0
EN

Stack Overflow用户

发布于 2016-02-08 23:26:11

我注意到你使用的是v0.8,现在已经被弃用了。v0.9与v0.8不向后兼容。因此,我建议您尽可能选择最新的版本,因为这两个版本之间写入数据的结构不同。

如果你必须使用v0.8,那么你可以使用:

代码语言:javascript
复制
{
        "name": "cpu_util",
        "columns": [
          "time",
          "sequence_number",
          "avg",
          "unit"
        ],
        "points": [
          [
            1421024460734,
            124666640001,
            74.31932,
            "%"
          ],
          [
            1421024460734,
            124666550001,
            0.7899716,
            "%"
          ]
        ]
      }

" name“-->时间序列的名称

" columns“-->时间序列"name”中的列

" points“-->对应于上述列的数据点

来源:https://github.com/icclab/cyclops-udr/wiki/OpenStack

票数 0
EN

Stack Overflow用户

发布于 2016-10-31 05:21:17

我正在使用一个类似的解决方案,使用jmxtrans来轮询每个主机上运行的JVM。JMXTrans将结果以“增强型”statsD格式发送到该主机上的Telegraf代理。该Telegraf代理将指标发送到InfluxDB。(在下一个Telegraf版本中,它们将支持从多个telegraf代理收集到一个集中实例)。这使得对InfluxDB摄取的需求尽可能低。

我写了一个新的JmxTrans编写器,它包含在最新的快照构建中。它发送到telegraf的一个例子是:JVMMemory,jmxport=1234,attribute=NonHeapMemoryUsage,resultKey=committed:12345|c

这利用了Telegraf/InfluxDB的标记特性,并支持StatsD的采样特性和简单性

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35172094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档