Nagios는 localhost.cfg의 새로운 서비스 지시문을 사용하여 다시 시작할 수 없습니다.

Nagios는 localhost.cfg의 새로운 서비스 지시문을 사용하여 다시 시작할 수 없습니다.

localhost.cfg내가 찾은 기본값부터 시작했습니다 /usr/local/nagios/etc/objects. 방금 해당 섹션 상단에 서비스 필드를 추가했습니다. 기존 "ping" 서비스 부분을 템플릿으로 사용하고 있는데...

###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################

# Define a custom service 


define service {

    use                     local-service           ; Name of service template to use
    host_name               localhost
    service_description     docker_testconn
    check_command           check_testconn_xxx22
}

define service {

    use                     local-service           ; Name of service template to use
    host_name               localhost
    service_description     PING
    check_command           check_ping!100.0,20%!500.0,60%
}

check_testconn_xxx22.sh(테스트를 위해) 그 안에 있는 생명체는 /usr/local/nagios/libexec긍정적인 메시지를 반환합니다...

#!/bin/bash
countWarnings=2
if (($countWarnings<=5)); then
                echo "OK - $countWarnings services in Warning state"
                exit 0
        elif ((6<=$countWarnings && $countWarnings<=30)); then
                                # This case makes no sense because it only adds one warning.
                                # It is just to make an example on all possible exits.
                echo "WARNING - $countWarnings services in Warning state"
                exit 1
        elif ((30<=$countWarnings)); then
                echo "CRITICAL - $countWarnings services in Warning state"
                exit 2
        else
                echo "UNKNOWN - $countWarnings"
                exit 3
fi

...

# ls -la check_testconn_xxx22.sh 
-rwxr-xr-x 1 root root 663 Jul 20 12:07 check_testconn_xxx22.sh

# ./check_testconn_xxx22.sh 
OK - 2 services in Warning state

# echo $?
0

# service nagios restart
Job for nagios.service failed. See 'systemctl status nagios.service' and 'journalctl -xn' for details.

# journalctl -xn
-- Logs begin at Thu 2018-07-19 16:28:44 CEST, end at Fri 2018-07-20 12:08:21 CEST. --
Jul 20 12:08:21 docker-server-1 nagios[2872]: ***> One or more problems was encountered while running the pre-flight check...
Jul 20 12:08:21 docker-server-1 nagios[2872]: Check your configuration file(s) to ensure that they contain valid
Jul 20 12:08:21 docker-server-1 nagios[2872]: directives and data definitions.  If you are upgrading from a previous
Jul 20 12:08:21 docker-server-1 nagios[2872]: version of Nagios, you should be aware that some variables/definitions
Jul 20 12:08:21 docker-server-1 nagios[2872]: may have been removed or modified in this version.  Make sure to read
Jul 20 12:08:21 docker-server-1 nagios[2872]: the HTML documentation regarding the config files, as well as the
Jul 20 12:08:21 docker-server-1 nagios[2872]: 'Whats New' section to find out what has changed.
Jul 20 12:08:21 docker-server-1 systemd[1]: nagios.service: control process exited, code=exited status=1
Jul 20 12:08:21 docker-server-1 systemd[1]: Failed to start Nagios Core 4.4.1.
-- Subject: Unit nagios.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit nagios.service has failed.
-- 
-- The result is failed.

Nagios가 왜 이 부분에 만족하지 않는지 이해할 수 없습니다.

답변1

localhost.cfg 파일에서 참조되는 모든 명령을 설정하는 command.cfg 구성 파일을 확인하십시오.

관련 정보