var rrdtool =需要(“rrdtool”);变量开始=rrdtool.now()- 10;变量数据库= rrdtool.create('test. rrd',{开始:开始,步骤:1 },[“DS:试验:量规:1:0:100”,“RRA:平均值:0.5:1:10”]);
puruo6ea1#
问题不出在ds名称上,而出在下一个命令上。
db.update(start + 0, 15);
如果只保留所提供的行,则代码编译时不会出错。要更正update方法中的错误,请转到proc.js文件(node_modules/rrdtool/lib/proc.js),并将update方法更改为如下所示的内容。
exports.update = function (file, ts, values, cb) { var cmd = [ts]; cmd.push(values); exec(['update', file, cmd.join(':')], function (err) { cb(err); }); };
在修改之前,rrdtool命令的格式不正确,该命令看起来像update --template timestamp,而不是update timestamp:value。在我的示例中,时间戳是start + 0,值是15。
update --template timestamp
update timestamp:value
fnx2tebb2#
问题出在更新方法中。如果您尝试执行以下操作:
db.update(start + 1, 90)
它将产生错误。您应该传递对象而不是值。类似于以下操作:
db.update(start + 0, {test: 15});
2条答案
按热度按时间puruo6ea1#
问题不出在ds名称上,而出在下一个命令上。
如果只保留所提供的行,则代码编译时不会出错。要更正update方法中的错误,请转到proc.js文件(node_modules/rrdtool/lib/proc.js),并将update方法更改为如下所示的内容。
在修改之前,rrdtool命令的格式不正确,该命令看起来像
update --template timestamp
,而不是update timestamp:value
。在我的示例中,时间戳是start + 0,值是15。fnx2tebb2#
问题出在更新方法中。如果您尝试执行以下操作:
它将产生错误。您应该传递对象而不是值。类似于以下操作: