0

我想为 OpenTSDB 创建一个非常简单的收集器,例如,我正在考虑创建一个简单的 javascript 文件来写入一些随机值。

我不明白的是那些随机值的格式。例如,我必须编写一个写入字符串的程序metric.name timestamp value,或者我的简单程序只写入一个值就足够了?

4

1 回答 1

0

Javascript 不是执行此类任务的最佳选择,我会使用 Python、Bash、Perl 或 Ruby。我不是 JS 方面的专家,但希望这个例子对你有用。

首先,您需要创建生成输出的文件。因此foo.js将生成随机数并以秒为单位打印它们以及度量名称和时间戳:

var randvar = Math.random();
var ts = Math.round(new Date().getTime() / 1000);
print ("metric.name "+ts+" "+randvar);

其次,您将需要一个启动foo.js的可执行文件,该文件将是foo.sh。你必须给它执行权限chmod +x foo.sh。我正在使用rhino运行 JS 代码,您可以使用任何其他解释器:

#!/bin/bash
rhino rand_tsd.js

最后,您必须将文件放在两次执行之间的间隔(以秒为单位)的tcollector/collectors/NUM/文件夹下。NUM然后启动 tcollector 守护进程。

于 2013-06-17T10:05:56.193 回答