[root@yourhostname conf.d]# cat myself.cfg
define service{
use generic-service,services-pnp
host_name useyourhostname #主機名必須匹配
service_description check-swap
active_checks_enabled 0
check_freshness 1
passive_checks_enabled 1
check_command check_dummy!2
}
[root@yourhostname client]# pwd
/etc/nagios/client
[root@yourhostname client]# cat check_ser.sh
#!/bin/bash
hostname=`hostname`
Plugin_path=/usr/lib64/nagios/plugins/
#1.swap
result=$($Plugin_path/check_swap -w 50% -c 20%)
status=$?
output=$(echo "$result"|awk -F'|' '{print $1}')
echo -e "$hostname;check-swap;$status;$output"
[root@yourhostname client]# cat nagios_check
#!/bin/bash
NSER=yourmaster
CHECK_PATH="/etc/nagios/client/"
RESULT_FILE="/tmp/nagios_result"
/bin/bash "$CHECK_PATH"/*.sh>/tmp/nagios_result
/usr/sbin/send_nsca -H "$NSER" -to 10 -d ";" -c /etc/nagios/send_nsca.cfg < /tmp/nagios_result
define service{
name generic-service ; The 'name' of this service template
active_checks_enabled 0 ; Active service checks are enabled
passive_checks_enabled 1 ; Passive service checks are enabled/accepted
parallelize_check 1 ; Active service checks should be parallelized (disabling this can lead to major performance problems)
obsess_over_service 1 ; We should obsess over this service (if necessary)
check_freshness 0 ; Default is to NOT check service 'freshness'
notifications_enabled 1 ; Service notifications are enabled
event_handler_enabled 1 ; Service event handler is enabled flap_detection_enabled 1 ; Flap detection is enabled
failure_prediction_enabled 1 ; Failure prediction is enabled process_perf_data 1 ; Process performance data
retain_status_information 1 ; Retain status information across program restarts
retain_nonstatus_information 1 ; Retain non-status information across program restarts
is_volatile 0 ; The service is not volatile
check_period 24x7 ; The service can be checked at any time of the day
max_check_attempts 3 ; Re-check the service up to 3 times in order to determine its final (hard) state normal_check_interval 10 ; Check the service every 10 minutes under normal conditions
retry_check_interval 2 ; Re-check the service every two minutes until a hard state can be determined
contact_groups admins ; Notifications get sent out to everyone in the 'admins' group
notification_options w,u,c,r ; Send notifications about warning, unknown, critical, and recovery events
notification_interval 60 ; Re-notify about service problems every hour
notification_period 24x7 ; Notifications can be sent out at any time
register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!
}