【问题标题】:Monitor asterisk calls with MRTG使用 MRTG 监控星号呼叫
【发布时间】:2020-03-04 14:22:19
【问题描述】:

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

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

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

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

【问题讨论】:

  • 请使用您的脚本检查管理器界面调试。没有简单的方法说什么是问题。考虑到该脚本的质量,我什至不能说它是否应该工作。
  • 您好!谢谢回答。我更深入地研究了代码并像您说的那样对其进行了调试...在不使用脚本的情况下手动运行了所有内容...看起来有一个过时的变量期望在其他版本的 Asterisk 上发生更改的消息。我改变了它,现在它就像一个魅力:Uploaded on imgur so you can see谢谢伙计,如果你想回答,我会标记为答案,祝你有美好的一天

标签: asterisk snmp mrtg


【解决方案1】:

使用 Asterisk Manager 通过 Telnet 手动尝试脚本中的操作,如果可行,则执行脚本并进行调试。

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

【讨论】:

    【解决方案2】:

    这就是问题所在:

    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 只知道脚本运行不正常。

    【讨论】:

    • 好吧,我已经认识我的朋友了。您刚刚粘贴了日志中的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多