############################################################################### ########## parameterized nagios.cfg created by Puppet ########## ########## manual changes will be overwritten !!! ########## ########## original nagios.cfg file is available at ########## ########## https://3for.me/hn6ca (membership area) or at nagios.org ########## ############################################################################### # LOG FILE log_file=<%= @ng_log_file %> # OBJECT CONFIGURATION FILE(S) # This section has been outsourced into <%= @ng_conf_d_dir %>/*.cfg files, # because the commands are now built via PuppetDB exports and imports. # Original files are available at https://3for.me/hn6ca (membership area) # or at nagios.org cfg_dir=<%= @ng_conf_d_dir %> object_cache_file=<%= @ng_object_cache_file %> precached_object_file=<%= @ng_precached_obj_file %> resource_file=<%= @ng_resource_file %> status_file=<%= @ng_status_file %> status_update_interval=<%= @ng_status_upd_interval %> nagios_user=<%= @ng_user %> nagios_group=<%= @ng_user %> check_external_commands=<%= @ng_check_ext_commands %> command_file=<%= @ng_command_file %> <% if @ng_enable_query_handler == true -%> query_socket=<%= @ng_cmd_dir %>/nagios.qh <% end -%> lock_file=<%= @ng_lock_file %> temp_file=<%= @ng_temp_file %> temp_path=/tmp event_broker_options=<%= @ng_event_broker_options %> <% unless @ng_event_broker_module.empty? -%> <% @ng_event_broker_module.each do |broker_module| -%> broker_module=<%= broker_module %> <% end end -%> # LOG settings log_rotation_method=<%= @ng_log_rotation_method %> log_archive_path=<%= @ng_log_archives %> use_syslog=<%= @ng_use_syslog %> log_notifications=<%= @ng_log_notifications %> log_service_retries=<%= @ng_log_service_retries %> log_host_retries=<%= @ng_log_host_retries %> log_event_handlers=<%= @ng_log_event_handlers %> log_initial_states=<%= @ng_log_initial_states %> log_current_states=<%= @ng_log_current_states %> log_external_commands=<%= @ng_log_external_commands %> log_passive_checks=<%= @ng_log_passive_checks %> <% unless @ng_glob_host_evt_handler.empty? -%> <% @ng_glob_host_evt_handler.each do |global_host_event_handler| -%> global_host_event_handler=<%= @ng_glob_host_evt_handler %> <% end end -%> <% unless @ng_glob_svc_evt_handler.empty? -%> <% @ng_glob_svc_evt_handler.each do |global_service_event_handler| -%> global_service_event_handler=<%= @ng_glob_svc_evt_handler %> <% end end -%> service_inter_check_delay_method=<%= @ng_svc_int_check_delay %> max_service_check_spread=<%= @ng_max_svc_check_spread %> service_interleave_factor=<%= @ng_svc_interleave_factor %> host_inter_check_delay_method=<%= @ng_host_int_check_delay %> max_host_check_spread=<%= @ng_max_host_check_spread %> max_concurrent_checks=<%= @ng_max_concurrent_checks %> check_result_reaper_frequency=<%= @ng_check_res_reaper_freq %> max_check_result_reaper_time=<%= @ng_max_check_res_reap_time %> check_result_path=<%= @ng_check_result_path %> max_check_result_file_age=<%= @ng_max_check_res_file_age %> cached_host_check_horizon=<%= @ng_cached_h_check_horizon %> cached_service_check_horizon=<%= @ng_cached_s_check_horizon %> enable_predictive_host_dependency_checks=<%= @ng_pred_host_dep_checks %> enable_predictive_service_dependency_checks=<%= @ng_pred_svc_dep_checks %> soft_state_dependencies=<%= @ng_soft_state_dependencies %> time_change_threshold=<%= @ng_time_change_threshold %> auto_reschedule_checks=<%= @ng_auto_reschedule_checks %> auto_rescheduling_interval=<%= @ng_auto_reschedule_intval %> auto_rescheduling_window=<%= @ng_auto_reschedule_window %> # TIMEOUTS service_check_timeout=<%= @ng_service_check_timeout %> host_check_timeout=<%= @ng_host_check_timeout %> event_handler_timeout=<%= @ng_event_handler_timeout %> notification_timeout=<%= @ng_notification_timeout %> ocsp_timeout=<%= @ng_ocsp_timeout %> ochp_timeout=<%= @ng_ochp_timeout %> perfdata_timeout=<%= @ng_perfdata_timeout %> # RETENTION AND INTERVAL OPTIONS retain_state_information=<%= @ng_retain_state_inf %> state_retention_file=<%= @ng_state_retention_file %> retention_update_interval=<%= @ng_retention_update_intval %> use_retained_program_state=<%= @ng_use_ret_program_state %> use_retained_scheduling_info=<%= @ng_use_ret_scheduling_info %> retained_host_attribute_mask=<%= @ng_ret_host_attr_mask %> retained_service_attribute_mask=<%= @ng_ret_service_attr_mask %> retained_process_host_attribute_mask=<%= @ng_ret_proc_host_attr_mask %> retained_process_service_attribute_mask=<%= @ng_ret_proc_svc_attr_mask %> retained_contact_host_attribute_mask=<%= @ng_ret_contact_h_attr_mask %> retained_contact_service_attribute_mask=<%= @ng_ret_contact_s_attr_mask %> interval_length=<%= @ng_interval_length %> check_for_updates=<%= @ng_check_for_updates %> bare_update_check=<%= @ng_bare_update_check %> use_aggressive_host_checking=<%= @ng_use_aggr_host_checking %> execute_service_checks=<%= @ng_execute_service_checks %> accept_passive_service_checks=<%= @ng_accept_pass_svc_checks %> execute_host_checks=<%= @ng_execute_host_checks %> accept_passive_host_checks=<%= @ng_accept_pass_host_checks %> enable_notifications=<%= @ng_enable_notifications %> enable_event_handlers=<%= @ng_enable_event_handlers %> process_performance_data=<%= @ng_process_perf_data %> <% if @ng_process_perf_data == '1' -%> host_perfdata_command=<%= @ng_host_perfdata_command %> service_perfdata_command=<%= @ng_svc_perfdata_command %> host_perfdata_file=<%= @ng_host_perfdata_file %> service_perfdata_file=<%= @ng_service_perfdata_file %> host_perfdata_file_template=<%= @ng_host_perfdata_template %> service_perfdata_file_template=<%= @ng_svc_perfdata_template %> host_perfdata_file_mode=<%= @ng_host_perfdata_file_mode %> service_perfdata_file_mode=<%= @ng_svc_perfdata_file_mode %> host_perfdata_file_processing_interval=<%= @ng_h_perfdata_proc_intval %> service_perfdata_file_processing_interval=<%= @ng_s_perfdata_proc_intval %> host_perfdata_file_processing_command=<%= @ng_h_perfdata_proc_cmd %> service_perfdata_file_processing_command=<%= @ng_s_perfdata_proc_cmd %> host_perfdata_process_empty_results=<%= @ng_h_perfdata_proc_e_res %> service_perfdata_process_empty_results=<%= @ng_s_perfdata_proc_e_res %> <% end -%> obsess_over_services=<%= @ng_obsess_over_services %> <% if @ng_obsess_over_services == '1' -%> ocsp_command=<%= @ng_ocsp_command %> <% end -%> obsess_over_hosts=<%= @ng_obsess_over_hosts %> <% if @ng_obsess_over_hosts == '1' -%> ochp_command=<%= @ng_ochp_command %> <% end -%> translate_passive_host_checks=<%= @ng_translate_pass_h_checks %> passive_host_checks_are_soft=<%= @ng_pass_h_checks_are_soft %> check_for_orphaned_services=<%= @ng_check_orphaned_svc %> check_for_orphaned_hosts=<%= @ng_check_orphaned_hosts %> check_service_freshness=<%= @ng_check_service_freshness %> <% if @ng_check_service_freshness == '1' -%> service_freshness_check_interval=<%= @ng_svc_fresh_check_intval %> <% end -%> service_check_timeout_state=<%= @ng_svc_check_timeout_state %> check_host_freshness=<%= @ng_check_host_freshness %> <% if @ng_check_host_freshness == '1' -%> host_freshness_check_interval=<%= @ng_host_fresh_check_intval %> <% end -%> additional_freshness_latency=<%= @ng_add_freshness_latency %> enable_flap_detection=<%= @ng_enable_flap_detection %> <% if @ng_enable_flap_detection == '1' -%> low_service_flap_threshold=<%= @ng_low_svc_flap_threshold %> high_service_flap_threshold=<%= @ng_high_svc_flap_threshold %> low_host_flap_threshold=<%= @ng_low_h_flap_threshold %> high_host_flap_threshold=<%= @ng_high_h_flap_threshold %> <% end -%> # DATE FORMAT OPTION # This option determines how short dates are displayed. Valid options # include: # us (MM-DD-YYYY HH:MM:SS) # euro (DD-MM-YYYY HH:MM:SS) # iso8601 (YYYY-MM-DD HH:MM:SS) # strict-iso8601 (YYYY-MM-DDTHH:MM:SS) # date_format=us # TIMEZONE OFFSET # This option is used to override the default timezone that this # instance of Nagios runs in. If not specified, Nagios will use # the system configured timezone. # # NOTE: In order to display the correct timezone in the CGIs, you # will also need to alter the Apache directives for the CGI path # to include your timezone. Example: # # # SetEnv TZ "Australia/Brisbane" # ... # #use_timezone=US/Mountain #use_timezone=Australia/Brisbane # ILLEGAL OBJECT NAME CHARACTERS # This option allows you to specify illegal characters that cannot # be used in host names, service descriptions, or names of other # object types. illegal_object_name_chars=`~!$%^&*|'"<>?,()= # ILLEGAL MACRO OUTPUT CHARACTERS # This option allows you to specify illegal characters that are # stripped from macros before being used in notifications, event # handlers, etc. This DOES NOT affect macros used in service or # host check commands. # The following macros are stripped of the characters you specify: # $HOSTOUTPUT$ # $LONGHOSTOUTPUT$ # $HOSTPERFDATA$ # $HOSTACKAUTHOR$ # $HOSTACKCOMMENT$ # $SERVICEOUTPUT$ # $LONGSERVICEOUTPUT$ # $SERVICEPERFDATA$ # $SERVICEACKAUTHOR$ # $SERVICEACKCOMMENT$ illegal_macro_output_chars=`~$&|'"<> # REGULAR EXPRESSION MATCHING # This option controls whether or not regular expression matching # takes place in the object config files. Regular expression # matching is used to match host, hostgroup, service, and service # group names/descriptions in some fields of various object types. # Values: 1 = enable regexp matching, 0 = disable regexp matching use_regexp_matching=0 # "TRUE" REGULAR EXPRESSION MATCHING # This option controls whether or not "true" regular expression # matching takes place in the object config files. This option # only has an effect if regular expression matching is enabled # (see above). If this option is DISABLED, regular expression # matching only occurs if a string contains wildcard characters # (* and ?). If the option is ENABLED, regexp matching occurs # all the time (which can be annoying). # Values: 1 = enable true matching, 0 = disable true matching use_true_regexp_matching=0 # ADMINISTRATOR EMAIL/PAGER ADDRESSES # The email and pager address of a global administrator (likely you). # Nagios never uses these values itself, but you can access them by # using the $ADMINEMAIL$ and $ADMINPAGER$ macros in your notification # commands. admin_email=nagios@localhost admin_pager=pagenagios@localhost # DAEMON CORE DUMP OPTION # This option determines whether or not Nagios is allowed to create # a core dump when it runs as a daemon. Note that it is generally # considered bad form to allow this, but it may be useful for # debugging purposes. Enabling this option doesn't guarantee that # a core file will be produced, but that's just life... # Values: 1 - Allow core dumps # 0 - Do not allow core dumps (default) daemon_dumps_core=0 # LARGE INSTALLATION TWEAKS OPTION # This option determines whether or not Nagios will take some shortcuts # which can save on memory and CPU usage in large Nagios installations. # Read the documentation for more information on the benefits/tradeoffs # of enabling this option. # Values: 1 - Enabled tweaks # 0 - Disable tweaks (default) use_large_installation_tweaks=0 # ENABLE ENVIRONMENT MACROS # This option determines whether or not Nagios will make all standard # macros available as environment variables when host/service checks # and system commands (event handlers, notifications, etc.) are # executed. # Enabling this is a very bad idea for anything but very small setups, # as it means plugins, notification scripts and eventhandlers may run # out of environment space. It will also cause a significant increase # in CPU- and memory usage and drastically reduce the number of checks # you can run. # Values: 1 - Enable environment variable macros # 0 - Disable environment variable macros (default) enable_environment_macros=0 # CHILD PROCESS MEMORY OPTION # This option determines whether or not Nagios will free memory in # child processes (processed used to execute system commands and host/ # service checks). If you specify a value here, it will override # program defaults. # Value: 1 - Free memory in child processes # 0 - Do not free memory in child processes #free_child_process_memory=1 # CHILD PROCESS FORKING BEHAVIOR # This option determines how Nagios will fork child processes # (used to execute system commands and host/service checks). Normally # child processes are fork()ed twice, which provides a very high level # of isolation from problems. Fork()ing once is probably enough and will # save a great deal on CPU usage (in large installs), so you might # want to consider using this. If you specify a value here, it will # program defaults. # Value: 1 - Child processes fork() twice # 0 - Child processes fork() just once #child_processes_fork_twice=1 # DEBUG LEVEL # This option determines how much (if any) debugging information will # be written to the debug file. OR values together to log multiple # types of information. # Values: # -1 = Everything # 0 = Nothing # 1 = Functions # 2 = Configuration # 4 = Process information # 8 = Scheduled events # 16 = Host/service checks # 32 = Notifications # 64 = Event broker # 128 = External commands # 256 = Commands # 512 = Scheduled downtime # 1024 = Comments # 2048 = Macros # 4096 = Interprocess communication # 8192 = Scheduling # 16384 = Workers debug_level=0 # DEBUG VERBOSITY # This option determines how verbose the debug log out will be. # Values: 0 = Brief output # 1 = More detailed # 2 = Very detailed debug_verbosity=1 # DEBUG FILE # This option determines where Nagios should write debugging information. debug_file=/var/log/nagios/nagios.debug # MAX DEBUG FILE SIZE # This option determines the maximum size (in bytes) of the debug file. If # the file grows larger than this size, it will be renamed with a .old # extension. If a file already exists with a .old extension it will # automatically be deleted. This helps ensure your disk space usage doesn't # get out of control when debugging Nagios. max_debug_file_size=1000000 # Should we allow hostgroups to have no hosts, we default this to off since # that was the old behavior allow_empty_hostgroup_assignment=0 # Normally worker count is dynamically allocated based on 1.5 * number of cpu's # with a minimum of 4 workers. This value will override the defaults #check_workers=3 # DISABLE SERVICE CHECKS WHEN HOST DOWN # This option will disable all service checks if the host is not in an UP state # # While desirable in some environments, enabling this value can distort report # values as the expected quantity of checks will not have been performed #host_down_disable_service_checks=0 # SET SERVICE/HOST STATUS WHEN SERVICE CHECK SKIPPED # These options will allow you to set the status of a service when its # service check is skipped due to one of three reasons: # 1) failed dependency check; 2) parent's status; 3) host not up # Number 3 can only happen if 'host_down_disable_service_checks' above # is set to 1. # Valid values for the service* options are: # -1 Do not change the service status (default - same as before 4.4) # 0 Set the service status to STATE_OK # 1 Set the service status to STATE_WARNING # 2 Set the service status to STATE_CRITICAL # 3 Set the service status to STATE_UNKNOWN # The host_skip_check_dependency_status option will allow you to set the # status of a host when itscheck is skipped due to a failed dependency check. # Valid values for the host_skip_check_dependency_status are: # -1 Do not change the service status (default - same as before 4.4) # 0 Set the host status to STATE_UP # 1 Set the host status to STATE_DOWN # 2 Set the host status to STATE_UNREACHABLE # We may add one or more statuses in the future. #service_skip_check_dependency_status=-1 #service_skip_check_parent_status=-1 #service_skip_check_host_down_status=-1 #host_skip_check_dependency_status=-1 # LOAD CONTROL OPTIONS # To get current defaults based on your system, issue this command to # the query handler: # echo -e '@core loadctl\0' | nc -U /usr/local/nagios/var/rw/nagios.qh # # Please note that used incorrectly these options can induce enormous latency. # # loadctl_options: # jobs_max The maximum amount of jobs to run at one time # jobs_min The minimum amount of jobs to run at one time # jobs_limit The maximum amount of jobs the current load lets us run # backoff_limit The minimum backoff_change # backoff_change # of jobs to remove from jobs_limit when backing off # rampup_limit Minimum rampup_change # rampup_change # of jobs to add to jobs_limit when ramping up #loadctl_options=jobs_max=100;backoff_limit=10;rampup_change=5