Ошибка мониторинга имени службы - PullRequest
7 голосов
/ 08 декабря 2011

Итак, в моем файле monitrc есть следующее:

check process apache with pidfile /usr/local/apache/logs/httpd.pid
group apache
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/httpd stop"
if failed host XXX port 80 protocol http
and request "/monit/token" then restart
if cpu is greater than 60% for 2 cycles then alert
if cpu 80% for 5 cycles then restart
if totalmem 500 MB for 5 cycles then restart
if children 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if 3 restarts within 5 cycles then timeout

но я продолжаю получать сообщение об ошибке:

Error: service name conflict, apache already defined '/usr/local/apache/logs/httpd.pid'

Ответы [ 7 ]

8 голосов
/ 25 января 2013

Если имя хоста сервера - «apache», то возникает конфликт с правилом по умолчанию для мониторинга загрузки системы.

Похоже, что в Monit есть неявное правило «проверять имя хоста системы», где имя хоста - это вывод команды hostname.

Вы можете перезаписать это, добавив только строку вроде:

check system newhostname

Например:

check system localhost
4 голосов
/ 23 ноября 2015

Я увидел эту ошибку, когда забыл закомментировать строку:

include /etc/monit/conf.d/*

в пользовательском файле /etc/monit/conf.d/myprogram.conf, поэтому он рекурсивно включал этот файл.

3 голосов
/ 26 февраля 2012

Есть ли у вас запись с именем хоста apache под этой записью или в отдельном файле конфигурации monit?

1 голос
/ 16 февраля 2019

Один и тот же сервис определен более одного раза. Проверьте все ваши файлы конфигурации monit для этой службы. Это включает ваш monitrc и все файлы, перечисленные в разделе «Включает» (например, include /etc/monit/conf.d/*).

Если вы переопределите «Включает» в файле в одном из ваших каталогов «Включает», вы столкнетесь с рекурсивными ссылочными проблемами.

0 голосов
/ 04 октября 2017

В моем случае мне просто пришлось перезапустить monit, чтобы избавиться от ошибки имени службы:

sudo service monit restart

0 голосов
/ 21 октября 2015

Проверьте, есть ли у вас конфликты для Apache, определенные в каком-либо из файлов monit conf в каталоге /etc/monit.d/, я случайно добавил nginx для моего puma.conf и столкнулся с той же ошибкой ранее.

0 голосов
/ 10 декабря 2013

Очень очень важная вещь: вам нужен monit 5.5 Например, в Ubuntu 12.04 доступно только в репо 5.3

Так что вам нужно скачать и установить из другого репо.Решение для меня, например:

wget http://mirrors.kernel.org/ubuntu/pool/universe/m/monit/monit_5.5.1-1_amd64.deb && sudo dpkg -i monit_5.5.1-1_amd64.deb

...