################################################################################ # Sample object config file for Nagios # # Read the documentation for more information on this configuration file. I've # provided some comments here, but things may not be so clear without further # explanation, so make sure to read the HTML documentation! # # Last Modified: 05-30-2006 # ################################################################################ ################################################################################ # TIMEPERIOD DEFINITIONS ################################################################################ # '24x7' timeperiod definition define timeperiod{ timeperiod_name 24x7 alias 24 Hours A Day, 7 Days A Week sunday 00:00-24:00 monday 00:00-24:00 tuesday 00:00-24:00 wednesday 00:00-24:00 thursday 00:00-24:00 friday 00:00-24:00 saturday 00:00-24:00 } # 'workhours' timeperiod definition define timeperiod{ timeperiod_name workhours alias "Normal" Working Hours monday 09:00-17:00 tuesday 09:00-17:00 wednesday 09:00-17:00 thursday 09:00-17:00 friday 09:00-17:00 } # 'nonworkhours' timeperiod definition define timeperiod{ timeperiod_name nonworkhours alias Non-Work Hours sunday 00:00-24:00 monday 00:00-09:00,17:00-24:00 tuesday 00:00-09:00,17:00-24:00 wednesday 00:00-09:00,17:00-24:00 thursday 00:00-09:00,17:00-24:00 friday 00:00-09:00,17:00-24:00 saturday 00:00-24:00 } # 'none' timeperiod definition define timeperiod{ timeperiod_name none alias No Time Is A Good Time } ################################################################################ # CONTACT DEFINITIONS ################################################################################ # 'nagios' contact definition define contact{ contact_name nagios alias Nagios Admin service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands notify-by-email,notify-by-epager host_notification_commands host-notify-by-email,host-notify-by-epager email nagios-admin@localhost.localdomain pager pagenagios-admin@localhost.localdomain } # 'jdoe' contact definition define contact{ contact_name jdoe alias John Doe service_notification_period workhours host_notification_period workhours service_notification_options c,r host_notification_options d,r service_notification_commands notify-by-email host_notification_commands host-notify-by-email email jdoe@localhost.localdomain } ################################################################################ # CONTACT GROUP DEFINITIONS ################################################################################ # 'novell-admins' contact group definition define contactgroup{ contactgroup_name novell-admins alias Novell Administrators members nagios } # 'nt-admins' contact group definition define contactgroup{ contactgroup_name nt-admins alias NT Administrators members nagios,jdoe } # 'linux-admins' contact group definition define contactgroup{ contactgroup_name linux-admins alias Linux Administrators members nagios } # 'switch-admins' contact group definition define contactgroup{ contactgroup_name switch-admins alias Etherswitch Administrators members nagios } # 'router-admins' contact group definition define contactgroup{ contactgroup_name router-admins alias Router Technicians members nagios } # 'printer-admins' contact group definition define contactgroup{ contactgroup_name printer-admins alias Printer Administrators members nagios,jdoe } ################################################################################ # HOST DEFINITIONS ################################################################################ # Generic host definition template define host{ name generic-host ; The name of this host template - referenced in other host definitions, used for template recursion/resolution notifications_enabled 1 ; Host notifications are enabled event_handler_enabled 1 ; Host event handler is enabled flap_detection_enabled 1 ; Flap detection 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 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # 'novell1' host definition define host{ use generic-host ; Name of host template to use host_name novell1 alias Novell Server #1 address 192.168.1.2 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 120 notification_period 24x7 notification_options d,u,r contact_groups novell-admins } # 'novell2' host definition define host{ use generic-host ; Name of host template to use host_name novell2 alias Novell Server #2 address 192.168.1.3 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 120 notification_period 24x7 notification_options d,u,r contact_groups novell-admins } # 'nt1' host definition define host{ use generic-host ; Name of host template to use host_name nt1 alias NT Server #1 address 192.168.1.4 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 120 notification_period 24x7 notification_options d,u,r contact_groups nt-admins } # 'nt2' host definition define host{ use generic-host ; Name of host template to use host_name nt2 alias NT Server #2 address 192.168.1.5 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 120 notification_period 24x7 notification_options d,u,r contact_groups nt-admins } # 'linux1' host definition define host{ use generic-host ; Name of host template to use host_name linux1 alias Linux Server #1 address 192.169.1.6 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 480 notification_period 24x7 notification_options d,u,r contact_groups linux-admins } # 'linux2' host definition define host{ use generic-host ; Name of host template to use host_name linux2 alias Linux Server #2 address 192.168.0.2 parents router1 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 480 notification_period 24x7 notification_options d,u,r contact_groups linux-admins } # 'switch1' host definition define host{ use generic-host ; Name of host template to use host_name switch1 alias Switch #1 address 192.168.1.230 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups switch-admins } # 'switch2' host definition define host{ use generic-host ; Name of host template to use host_name switch2 alias Switch #2 address 192.168.1.231 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups switch-admins } # 'switch3' host definition define host{ use generic-host ; Name of host template to use host_name switch3 alias Switch #3 address 192.168.1.232 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups switch-admins } # 'switch4' host definition define host{ use generic-host ; Name of host template to use host_name switch4 alias Switch #4 address 192.168.1.233 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups switch-admins } # 'switch5' host definition define host{ use generic-host ; Name of host template to use host_name switch5 alias Switch #5 address 192.168.1.234 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups switch-admins } # 'router1' host definition define host{ use generic-host ; Name of host template to use host_name router1 alias Router #1 address 192.168.1.254 check_command check-host-alive max_check_attempts 20 check_period 24x7 notification_interval 60 notification_period 24x7 notification_options d,u,r contact_groups router-admins } # 'printer1' host definition define host{ use generic-host ; Name of host template to use host_name printer1 alias Printer #1 address 192.168.1.100 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 480 notification_period workhours contact_groups printer-admins } # 'printer2' host definition define host{ use generic-host ; Name of host template to use host_name printer2 alias Printer #2 address 192.168.1.101 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 480 notification_period workhours contact_groups printer-admins } # 'printer3' host definition define host{ use generic-host ; Name of host template to use host_name printer3 alias Printer #3 address 192.168.1.102 check_command check-host-alive max_check_attempts 10 check_period 24x7 notification_interval 480 notification_period workhours contact_groups printer-admins } ################################################################################ # HOST GROUP DEFINITIONS ################################################################################ # 'novell-servers' host group definition define hostgroup{ hostgroup_name novell-servers alias Novell Servers members novell1,novell2 } # 'nt-servers' host group definition define hostgroup{ hostgroup_name nt-servers alias NT Servers members nt1,nt2 } # 'linux-boxes' host group definition define hostgroup{ hostgroup_name linux-boxes alias Linux Servers members linux1,linux2 } # 'switches' host group definition define hostgroup{ hostgroup_name switches alias Switches members switch1,switch2,switch3,switch4,switch5 } # 'routers' host group definition define hostgroup{ hostgroup_name routers alias Routers members router1 } # 'printers' host group definition define hostgroup{ hostgroup_name printers alias Printers members printer1,printer2,printer3 } ################################################################################ # SERVICE DEFINITIONS ################################################################################ # Generic service definition template define service{ name generic-service ; The 'name' of this service template, referenced in other service definitions active_checks_enabled 1 ; 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 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 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE! } # Service definition define service{ use generic-service ; Name of service template to use host_name novell1 service_description SMTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 3 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_smtp } # Service definition define service{ use generic-service ; Name of service template to use host_name novell1 service_description FTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_ftp } # Service definition define service{ use generic-service ; Name of service template to use host_name novell1 service_description POP3 is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_pop } # Service definition define service{ use generic-service ; Name of service template to use host_name novell1 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name novell2 service_description SMTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 3 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_smtp } # Service definition define service{ use generic-service ; Name of service template to use host_name novell2 service_description FTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_ftp } # Service definition define service{ use generic-service ; Name of service template to use host_name novell2 service_description POP3 is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_pop } # Service definition define service{ use generic-service ; Name of service template to use host_name novell2 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups novell-admins notification_interval 120 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name nt1 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name nt1 service_description FTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_ftp } # Service definition define service{ use generic-service ; Name of service template to use host_name nt1 service_description HTTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_http } # Service definition define service{ use generic-service ; Name of service template to use host_name nt2 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name nt2 service_description FTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_ftp } # Service definition define service{ use generic-service ; Name of service template to use host_name nt2 service_description HTTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups nt-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_http } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description HTTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 2 retry_check_interval 1 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_http } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description Current Users is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 2 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_local_users!75!150 } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description Total Processes is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 2 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_local_procs!150!200!RSZDT } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description /dev/hda1 Free Space is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_local_disk!20%!10%!/dev/hda1 } # Service definition define service{ use generic-service ; Name of service template to use host_name linux1 service_description /dev/hdb2 Free Space is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_local_disk!20%!10%!/dev/hdb2 } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description HTTP is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 2 retry_check_interval 1 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_http } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description Current Users is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 2 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_local_users!75!150 } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description Total Processes is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 2 contact_groups linux-admins notification_interval 240 notification_period 24x7 notification_options w,u,c,r check_command check_local_procs!150!200!RSZDT } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description /dev/hda1 Free Space is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_local_disk!20%!10%!/dev/hda1 } # Service definition define service{ use generic-service ; Name of service template to use host_name linux2 service_description /dev/hdb1 Free Space is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period 24x7 notification_options w,u,c,r check_command check_local_disk!20%!10%!/dev/hdb1 } # Service definition define service{ use generic-service ; Name of service template to use host_name switch1 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups switch-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name switch2 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups switch-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name switch3 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups switch-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name switch4 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups switch-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name switch5 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups switch-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name router1 service_description PING is_volatile 0 check_period 24x7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups router-admins notification_interval 240 notification_period 24x7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name printer1 service_description Printer Status is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours notification_options c,r check_command check_hpjd } # Service definition define service{ use generic-service ; Name of service template to use host_name printer1 service_description PING is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name printer2 service_description Printer Status is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours check_command check_hpjd } # Service definition define service{ use generic-service ; Name of service template to use host_name printer2 service_description PING is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours notification_options c,r check_command check_ping!100.0,20%!500.0,60% } # Service definition define service{ use generic-service ; Name of service template to use host_name printer3 service_description Printer Status is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours check_command check_hpjd } # Service definition define service{ use generic-service ; Name of service template to use host_name printer3 service_description PING is_volatile 0 check_period workhours max_check_attempts 4 normal_check_interval 5 retry_check_interval 1 contact_groups printer-admins notification_interval 960 notification_period workhours notification_options c,r check_command check_ping!100.0,20%!500.0,60% } ################################################################################ # SERVICE DEPENDENCY DEFINITIONS ################################################################################ # Servicedependency definition define servicedependency{ host_name nt1 service_description IIS Process dependent_host_name nt1 dependent_service_description Website #1 execution_failure_criteria n ; These are the criteria for which check execution will be suppressed notification_failure_criteria w,u,c ; These are the criteria for which notifications will be suppressed } # Servicedependency definition define servicedependency{ host_name nt1 service_description IIS Process dependent_host_name nt1 dependent_service_description Website #2 execution_failure_criteria w,u,c ; These are the criteria for which check execution will be suppressed notification_failure_criteria w,u,c ; These are the criteria for which notifications will be suppressed } ################################################################################ # HOST DEPENDENCY DEFINITIONS ################################################################################ # Hostdependency definition define hostdependency{ host_name nt1 dependent_host_name nt2 notification_failure_criteria d ; These are the criteria for which notifications will be suppressed } ################################################################################ # SERVICE ESCALATION DEFINITIONS ################################################################################ # Serviceescalation definition define serviceescalation{ host_name linux1 service_description PING first_notification 2 last_notification 6 contact_groups linux-admins,novell-admins notification_interval 0 } # Serviceescalation definition define serviceescalation{ host_name linux1 service_description Current Users first_notification 5 last_notification 0 contact_groups linux-admins,novell-admins notification_interval 0 } ################################################################################ # HOST ESCALATION DEFINITIONS ################################################################################ # Host 'nt1' escalation definition define hostescalation{ host_name nt1 first_notification 2 last_notification 5 contact_groups novell-admins,nt-admins notification_interval 10 }