Загружаемый модуль Zabbix IBM MQM блокирует службу агента ZABBIX.

Я пытаюсь протестировать модуль IBM MQ ZABBIX, весь код размещен на поделиться в ZABBIX, но, поскольку я новичок и нет объясненных шагов для этого, я застрял. Итак, я работаю с исходниками ZABBIX 3.4 и заголовками пробной версии MQM 8 (работает на Centos7 64bit). Прежде всего, когда я пытаюсь скомпилировать файл mq.c, там есть переменная argc, я думаю, что ее там быть не должно!! ошибка была такой:

[root@osboxes dummy]# make
gcc -fPIC -shared -o mq.so mq.c -I../../../include -I/opt/mqm/inc
mq.c: In function ‘mq_q_depth’:
mq.c:61:9: error: ‘argc’ undeclared (first use in this function)
     if (argc > 1) strncpy(queue, param, (size_t)MQ_Q_NAME_LENGTH);
         ^
mq.c:61:9: note: each undeclared identifier is reported only once for each funct                              ion it appears in
make: *** [mq] Error 1

Я прокомментировал эту строку, где есть argc :

if (argc > 1) strncpy(queue, param, (size_t)MQ_Q_NAME_LENGTH);

Компиляция прошла успешно, но когда я пытаюсь загрузить модуль в конфигурацию агента ZABBIX, агент не запускается и выдает эту ошибку:

[root@osboxes dummy]# service zabbix-agent start
Redirecting to /bin/systemctl start zabbix-agent.service
Job for zabbix-agent.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-agent.service" and "journalctl -xe" for details.


[root@osboxes dummy]# systemctl status zabbix-agent.service
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
Active: activating (auto-restart) (Result: resources) since Fri 2018-03-16 14:35:43 CET; 3s ago
Process: 5069 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)

Mar 16 14:35:43 osboxes.org systemd[1]: zabbix-agent.service never wrote its PID file. Failing.
Mar 16 14:35:43 osboxes.org systemd[1]: Failed to start Zabbix Agent.
Mar 16 14:35:43 osboxes.org systemd[1]: Unit zabbix-agent.service entered failed state.
Mar 16 14:35:43 osboxes.org systemd[1]: zabbix-agent.service failed.
Hint: Some lines were ellipsized, use -l to show in full.

[root@osboxes dummy]# journalctl -xe
--
-- The result is failed.
Mar 16 14:36:04 osboxes.org systemd[1]: Unit zabbix-agent.service entered failed state.
Mar 16 14:36:04 osboxes.org systemd[1]: zabbix-agent.service failed.
Mar 16 14:36:14 osboxes.org systemd[1]: zabbix-agent.service holdoff time over, scheduling resta
Mar 16 14:36:14 osboxes.org systemd[1]: Starting Zabbix Agent...
-- Subject: Unit zabbix-agent.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.or...
--
-- Unit zabbix-agent.service has begun starting up.
Mar 16 14:36:14 osboxes.org systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet
Mar 16 14:36:14 osboxes.org systemd[1]: zabbix-agent.service never wrote its PID file. Failing.
Mar 16 14:36:14 osboxes.org systemd[1]: Failed to start Zabbix Agent.
-- Subject: Unit zabbix-agent.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.or...
--
-- Unit zabbix-agent.service has failed.
--
-- The result is failed.
Mar 16 14:36:14 osboxes.org systemd[1]: Unit zabbix-agent.service entered failed state.
Mar 16 14:36:14 osboxes.org systemd[1]: zabbix-agent.service failed.

Я надеюсь, что вы могли бы помочь мне с этим. Спасибо


person Bakrchess Elkotri    schedule 16.03.2018    source источник


Ответы (1)


Ok. Так что тот, кто написал код для Zabbix mq.c, был ленив и скопировал его из своего примера qdepth.c.

Я прокомментировал эту строку, где есть argc :

Плохая идея. Вроде должно быть:

if (request->nparam == 1) strncpy(queue, param, (size_t)MQ_Q_NAME_LENGTH);

У меня нет доступа к SDK Zabbix, так что это просто предположение.

Задание для zabbix-agent.service завершилось неудачно из-за превышения настроенного лимита ресурсов. Подробности смотрите в "systemctl status zabbix-agent.service" и "journalctl -xe".

Что ж, это сообщение об ошибке довольно ясно. Пришло время прочитать документы/руководство, чтобы узнать, каковы минимальные или рекомендуемые настройки ресурсов, потому что вам явно не хватает ресурсов для запуска всего.

person Roger    schedule 16.03.2018
comment
Спасибо за ваш ответ, я пытался добавить больше ресурсов, но безуспешно, странная часть, когда я выполняю код на c, он работает. Таким образом, проблема возникает сразу после включения ее в фиктивный модуль Zabbix. - person Bakrchess Elkotri; 27.03.2018