为OpenTSDB编写收集器

时间:2013-06-12 22:03:35

标签: java opentsdb

我从OpenTSDB的官方文档中不了解如何创建收集器以及如何使其运行。除此之外,我想用Java语言创建一个收集器。 我对Unix系统也有点新意,但我知道基础知识

1 个答案:

答案 0 :(得分:2)

为OpenTSDB编写一个收集器非常简单,如果你从git repository克隆了tcollector脚本,你会看到startstop可执行文件,这个守护进程一旦启动就会执行存储在里面的所有文件./tcollector/collectors/NUMBER其中NUMBER是以分钟为单位的周期。

说,您需要做的是编写将存储在collectors文件夹中的脚本。当OpenTSDB执行这些脚本时,它需要以下输出:

<METRIC> <UNIX_TIMESTAMP> <VALUE>

所以,在你的情况下。想要报告PC温度的成像(每5分钟调用一次,您必须按照以下步骤进行操作:

  1. 编写脚本,例如在Java中,获取PC的温度(使用SNMP,从操作系统或使用任何其他方法)。然后,当您手动运行脚本时,它将输出:pc.temperature 1371075574 40
  2. 将脚本放在./tcollector/collectors/5/下,以便OpenTSDB每隔5分钟启动一次
  3. 通过调用startstop(OpenTSDB必须正在运行)
  4. 启动收集器

    更详细的解释here