486 lines
17 KiB
Plaintext
486 lines
17 KiB
Plaintext
###############################################################################
|
|
########## 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:
|
|
#
|
|
# <Directory "/usr/local/nagios/sbin/">
|
|
# SetEnv TZ "Australia/Brisbane"
|
|
# ...
|
|
# </Directory>
|
|
|
|
#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
|