使用 MRTG 监控星号调用

Monitor asterisk calls with MRTG

我正在使用 mrtg 来监控 cpu 和我服务器上的网络统计信息。一切正常... 我无法使其工作的一件事是星号 - 我正在使用我在以下位置找到的脚本:https://karlsbakk.net/asterisk/scripts/asterisk-mrtg

我根据我的服务器信息进行了相应的配置,然后继续使用 mrtg 生成 asterisk 上的并发调用统计...但是出现以下错误:

2020-03-04 10:34:36: WARNING: Could not get any data from external command '/etc/mrtg/bin/mrtgasterisk.pl -h localhost -1 SIP -2 IAX2'
Maybe the external command did not even start.

2020-03-04 10:34:36: WARNING: Problem with External get '/etc/mrtg/bin/mrtgasterisk.pl -h localhost -1 SIP -2 IAX2':
   Expected a Number for 'in' but nothing'

2020-03-04 10:34:36: WARNING: Problem with External get '/etc/mrtg/bin/mrtgasterisk.pl -h localhost -1 SIP -2 IAX2':
   Expected a Number for 'out' but nothing'

2020-03-04 10:34:36: ERROR: Target[asterisk][_IN_] ' $target->[2]{$mode} ' did not eval into defined data
2020-03-04 10:34:36: ERROR: Target[asterisk][_OUT_] ' $target->[2]{$mode} ' did not eval into defined data

有没有人经历过这个问题并能够解决它?

这是问题所在:

2020-03-04 10:34:36: WARNING: Could not get any data from external command '/etc/mrtg/bin/mrtgasterisk.pl -h localhost -1 SIP -2 IAX2'

您的脚本 mrtgasterisk.pl 没有正确完成。从命令行以交互方式尝试 运行 它,看看它是否输出任何有用的错误消息。可能你给了它错误的参数,或者没有安装所需的模块? MRTG 只知道脚本不正确 运行。

使用 Asterisk Manager 通过 Telnet 手动尝试脚本中的操作,然后如果有效则执行脚本并调试它。

原来 perl 脚本已经过时,进行调试和测试操作让我帮助发现问题然后修复它。