zabbix监控报错zabbix server is not running: the information displayed may not be current的解决办法
时间:2015-09-21 00:03 来源:linux.it.net.cn 作者:IT
这几天为了做监控在ubuntu服务器上部署了zabbix做监控。过程还是遇到了一些问题,把他记录下来。希望对大家有帮助吧。
这里千万记住,zabbix 不建议用最新版本,唉~~~~找个稍微次级版本即可。
这次安装过程过程出现了报错:
zabbix红色弹出报错:zabbix server is not running: the information displayed may not be current
网页中不停地有以下红色提示:
zabbix server is not running: the information displayed may not be current.
zabbix server is running | No.
查看/tmp/zabbix_server.log和/tmp/zabbix_agent.log无任何异常。看zabbix_server和zabbix_agent进程、端口都正常
从网上查找了很多的资料,众说纷纭,浪费了我大量的时间。
查找问题:
后来还是决定从zabbix的php文件着手,毕竟弹出是zabbix的php系统里面的嘛。
系统会post数据到:zabbix/jsrpc.php?output=json-rpc
返回json数据。代码约在164行开始:
01
case
'zabbix.status'
:
02
$session
= Z::getInstance()->getSession();
03
if
(!isset(
$session
[
'serverCheckResult'
]) || (
$session
[
'serverCheckTime'
]
04
+ SERVER_CHECK_INTERVAL) <= time()) {
05
$zabbixServer
=
new
CZabbixServer(
$ZBX_SERVER
,
$ZBX_SERVER_PORT
,
06
ZBX_SOCKET_TIMEOUT, 0);
07
$session
[
'serverCheckResult'
] =
$zabbixServer
->isRunning();
08
$session
[
'serverCheckTime'
] = time();
09
}
10
11
$result
=
array
(
12
'result'
=> (bool)
$session
[
'serverCheckResult'
],
13
'message'
=>
$session
[
'serverCheckResult'
] ?
''
: _('Zabbix server is not
14
running: the information displayed may not be current.')
15
);
16
break
;
是的,就这里,首先实例化类:CZabbixServer,然后执行里面的方法:isRunning();
继续跟踪到文件是在:
zabbix/include/classes/server/CZabbixServer.php
最后跟踪方法是在 connect 执行了,
问题出在268行:
if (!$socket = @fsockopen($this->host, $this->port, $errorCode, $errorMsg, $this->timeout)) {
是的,就在这里,fsockopen为空了。
怎么会为空呢,突然想到是不是被禁用了,phpinfo看了下果然。
当然问题找到了,就简单了,解决方法就是:
开启fsockopen函数就可以了。
(责任编辑:IT)
这几天为了做监控在ubuntu服务器上部署了zabbix做监控。过程还是遇到了一些问题,把他记录下来。希望对大家有帮助吧。 这里千万记住,zabbix 不建议用最新版本,唉~~~~找个稍微次级版本即可。 这次安装过程过程出现了报错: zabbix红色弹出报错:zabbix server is not running: the information displayed may not be current
![]()
网页中不停地有以下红色提示: zabbix server is not running: the information displayed may not be current. zabbix server is running | No. 查看/tmp/zabbix_server.log和/tmp/zabbix_agent.log无任何异常。看zabbix_server和zabbix_agent进程、端口都正常
从网上查找了很多的资料,众说纷纭,浪费了我大量的时间。 查找问题:后来还是决定从zabbix的php文件着手,毕竟弹出是zabbix的php系统里面的嘛。 系统会post数据到:zabbix/jsrpc.php?output=json-rpc 返回json数据。代码约在164行开始:
是的,就这里,首先实例化类:CZabbixServer,然后执行里面的方法:isRunning(); 继续跟踪到文件是在: zabbix/include/classes/server/CZabbixServer.php 最后跟踪方法是在 connect 执行了, 问题出在268行: if (!$socket = @fsockopen($this->host, $this->port, $errorCode, $errorMsg, $this->timeout)) { 是的,就在这里,fsockopen为空了。 怎么会为空呢,突然想到是不是被禁用了,phpinfo看了下果然。
当然问题找到了,就简单了,解决方法就是: 开启fsockopen函数就可以了。
![]() (责任编辑:IT) |