설정하려고 하는데감시 장치내 데비안 서버의 경우. ./etc/monit
include /etc/monit/conf.d/*
conf.d에는 apache 및 mysql 서버용 파일이 두 개 있습니다.
# ls -al /etc/monit/conf.d
total 16
drwxr-xr-x 2 root root 4096 Apr 15 16:03 .
drwxr-xr-x 3 root root 4096 Apr 15 16:02 ..
-rwx------ 1 root root 272 Apr 15 15:38 apache2.conf
-rwx------ 1 root root 264 Apr 15 15:47 mysql.conf
(구성 구문 테스트)을 실행하면 다음 monit -t
과 같은 결과를 얻습니다.
/etc/monit/conf.d/apache2.conf:1: Error: syntax error 'check process '
apache2.conf 파일을 삭제/이동하면 mysql 구성 파일에서 동일한 오류가 발생합니다.
# cat apache2.conf
check process apache2 with pidfile /var/run/apache2.pid
start program = "/usr/sbin/service apache2 start"
stop program = "/usr/sbin/service apache2 stop"
if failed
host localhost
port 80
protocol http
request "/catalog/"
then restart and alert
그리고 내용mysql.conf
# cat mysql.conf
check process mysqld with pidfile /var/run/mysqld/mysqld.pid
group database
start program = "/usr/sbin/service mysqld start"
stop program = "/usr/sbin/service mysqld stop"
if failed host localhost port 3306 protocol mysql then restart and alert
나는 가지고있다:
- 다양한 conf 파일 변형을 시도했습니다.
- 문서를 20번 이상 읽으세요
- mysqld.conf 파일에서 교체공개 monit 구성 파일의 공개 저장소apache2 구성 파일을 삭제하십시오.
- hex 파일을 보면 딱히 흥미로운 문자는 없습니다.
- 탭과 공백을 사용해 보았습니다.
- 첫 번째 줄을 제외한 모든 항목을 삭제합니다.
/var/run/mysqld/mysqld.pid
존재하는지 다시 확인하세요 .- 두 conf.d 파일의 권한이
monitrc
0700인지 확인하세요.
이 시점에서 나는 (별로 도움이 되지 않는) 오류 메시지의 원인이 무엇인지 완전히 혼란스러워졌습니다./etc/monit/conf.d/apache2.conf:1: Error: syntax error 'check process '
답변1
오늘이 문제가 발생했습니다. 두 번째 monit 구성 파일에서 문제를 추적할 수 있었습니다. 5.17.1부터 프로필이 제대로 닫히지 않으면 다음 파일을 로드하려고 할 때 즉시 구문 오류가 발생합니다.
내 경우에는 숫자로 끝나는 경고가 표시되고 repeat every 10
숫자 뒤의 "마침표"가 누락되었습니다. 파일이 유효하지 않은 경우에도 전혀 다른 파일이 유효하지 않은 것처럼 보이게 됩니다.
답변2
오래된 질문입니다. 관련이 있는지는 모르겠지만 쓸 수 있을지 모르겠습니다 then restart and alert
.
alert
어쨌든 이미 그것의 일부로 암시되어 있으므로 필요 restart
하지 않습니다.