我正在使用RRDs::Simple
函数,它需要一堆参数。
我已将这些参数放在一个特殊变量(解析,排序和计算文件中的数据)中,并带有所有引号,逗号和其他内容。
当然
RRDs::create ($variable);
不起作用。
我浏览了所有perl特殊变量并且一无所获。
如何用变量名替换该变量中包含的数据? 至少你能告诉我可以用什么样的工具(可能是另一个特殊的变量)吗?
答案 0 :(得分:3)
假设我理解你在问什么:
您已在$ variable中构建'create'数据,现在正尝试使用RRDs::create
来实际执行此操作吗?
第一步是:
print $variable,"\n";
- 看看实际上是什么。您应该可以在命令行中使用rrdtool create
来使用它。 (需要文件名,时间步长和一些有效的 DS
和RRA
参数)
通常,我会使用数组传入RRDs::create
:
RRDs::create ( "test.rrd", "-s 300",
"DS:name:GAUGE:600:U:U", )
等
如果$variable
已经包含此信息,那么这应该没问题。说出错误的方法是:
if ( RRDs::error ) { print RRDs::error,"\n"; }
创建文件可能是问题,或者由于某种原因您的RRD定义无效。命令行上的rrdtool create
会告诉您RRDs::error
;