1 ##############################################################################
3 # ICINGA.CFG - Sample Main Config File for Icinga
5 # Read the documentation for more information on this configuration
6 # file. I've provided some comments here, but things may not be so
7 # clear without further explanation.
9 ##############################################################################
13 # This is the main log file where service and host events are logged
14 # for historical purposes. This should be the first option specified
15 # in the config file!!!
17 log_file=/var/log/icinga/icinga.log
19 # Commands definitions
20 cfg_file=/etc/icinga/commands.cfg
22 # Debian also defaults to using the check commands defined by the debian
23 # nagios-plugins package
24 cfg_dir=/etc/nagios-plugins/config
26 # OBJECT CONFIGURATION FILE(S)
27 # These are the object configuration files in which you define hosts,
28 # host groups, contacts, contact groups, services, etc.
29 # Hint: Check the docs/wiki on how to monitor remote hosts with different
30 # transport methods and plugins
32 # Debian uses by default a configuration directory where icinga-common,
33 # other packages and the local admin can dump or link configuration
35 cfg_dir=/etc/icinga/objects/
37 # Definitions for ido2db process checks
38 #cfg_file=/etc/icinga/objects/ido2db_check_proc.cfg
40 # Definitions for broker modules like idoutils.cfg
41 cfg_dir=/etc/icinga/modules
46 # This option determines where object definitions are cached when
47 # Icinga starts/restarts. The CGIs read object definitions from
48 # this cache file (rather than looking at the object config files
49 # directly) in order to prevent inconsistencies that can occur
50 # when the config files are modified after Icinga starts.
52 object_cache_file=/var/cache/icinga/objects.cache
56 # PRE-CACHED OBJECT FILE
57 # This options determines the location of the precached object file.
58 # If you run Icinga with the -p command line option, it will preprocess
59 # your object configuration file(s) and write the cached config to this
60 # file. You can then start Icinga with the -u option to have it read
61 # object definitions from this precached file, rather than the standard
62 # object configuration files (see the cfg_file and cfg_dir options above).
63 # Using a precached object file can speed up the time needed to (re)start
64 # the Icinga process if you've got a large and/or complex configuration.
65 # Read the documentation section on optimizing Icinga to find our more
66 # about how this feature works.
68 precached_object_file=/var/cache/icinga/objects.precache
73 # This is an optional resource file that contains $USERx$ macro
74 # definitions. Multiple resource files can be specified by using
75 # multiple resource_file definitions. The CGIs will not attempt to
76 # read the contents of resource files, so information that is
77 # considered to be sensitive (usernames, passwords, etc) can be
78 # defined as macros in this file and restrictive permissions (600)
79 # can be placed on this file.
81 resource_file=/etc/icinga/resource.cfg
86 # This is where the current status of all monitored services and
87 # hosts is stored. Its contents are read and processed by the CGIs.
88 # The contents of the status file are deleted every time Icinga
91 status_file=/var/lib/icinga/status.dat
95 # STATUS FILE UPDATE INTERVAL
96 # This option determines the frequency (in seconds) that
97 # Icinga will periodically dump program, host, and
98 # service status data.
99 # Increase the value, if you don't require it that often.
101 #status_update_interval=30
102 status_update_interval=10
107 # This determines the effective user that Icinga should run as.
108 # You can either supply a username or a UID.
115 # This determines the effective group that Icinga should run as.
116 # You can either supply a group name or a GID.
122 # EXTERNAL COMMAND OPTION
123 # This option allows you to specify whether or not Icinga should check
124 # for external commands (in the command file defined below). By default
125 # Icinga will *not* check for external commands, just to be on the
126 # cautious side. If you want to be able to use the CGI command interface
127 # you will have to enable this.
128 # Values: 0 = disable commands, 1 = enable commands
130 check_external_commands=1
134 # EXTERNAL COMMAND CHECK INTERVAL
135 # This is the interval at which Icinga should check for external commands.
136 # This value works of the interval_length you specify later. If you leave
137 # that at its default value of 60 (seconds), a value of 1 here will cause
138 # Icinga to check for external commands every minute. If you specify a
139 # number followed by an "s" (i.e. 15s), this will be interpreted to mean
140 # actual seconds rather than a multiple of the interval_length variable.
141 # Note: In addition to reading the external command file at regularly
142 # scheduled intervals, Icinga will also check for external commands after
143 # event handlers are executed.
144 # NOTE: Setting this value to -1 causes Icinga to check the external
145 # command file as often as possible.
147 #command_check_interval=15s
148 command_check_interval=-1
152 # EXTERNAL COMMAND FILE
153 # This is the file that Icinga checks for external command requests.
154 # It is also where the command CGI will write commands that are submitted
155 # by users, so it must be writeable by the user that the web server
156 # is running as (usually 'nobody'). Permissions should be set at the
157 # directory level instead of on the file, as the file is deleted every
158 # time its contents are processed.
159 # Debian Users: In case you didn't read README.Debian yet, _NOW_ is the
162 command_file=/var/lib/icinga/rw/icinga.cmd
166 # EXTERNAL COMMAND BUFFER SLOTS
167 # This settings is used to tweak the number of items or "slots" that
168 # the Icinga daemon should allocate to the buffer that holds incoming
169 # external commands before they are processed. As external commands
170 # are processed by the daemon, they are removed from the buffer.
171 # Increase the value, if you are using addons like check_mk supplying
172 # more external commands (passive check results) than usual.
174 #external_command_buffer_slots=32768
175 external_command_buffer_slots=4096
180 # This is the lockfile that Icinga will use to store its PID number
181 # in when it is running in daemon mode.
183 lock_file=/var/run/icinga/icinga.pid
188 # This is a temporary file that is used as scratch space when Icinga
189 # updates the status log, cleans the comment file, etc. This file
190 # is created, used, and deleted throughout the time that Icinga is
193 temp_file=/var/cache/icinga/icinga.tmp
198 # This is path where Icinga can create temp files for service and
199 # host check results, etc.
205 # EVENT BROKER OPTIONS
206 # Controls what (if any) data gets sent to the event broker.
207 # Values: 0 = Broker nothing
208 # -1 = Broker everything
209 # <other> = See documentation
211 event_broker_options=-1
215 # EVENT BROKER MODULE(S)
216 # ----> use the new *module definition* instead:
217 # ----> http://docs.icinga.org/latest/en/objectdefinitions.html
219 # This directive can be used to specify an event broker module that should
220 # by loaded by Icinga at startup. Use multiple directives if you want
221 # to load more than one module. Arguments that should be passed to
222 # the module at startup are seperated from the module path by a space.
224 #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
225 # WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING
226 #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
227 # Do NOT overwrite modules while they are being used by Icinga or Icinga
228 # will crash in a fiery display of SEGFAULT glory.
230 # The correct/safe way of updating a module is by using one of these methods:
231 # 1. Shutdown Icinga, replace the module file, restart Icinga
232 # 2. Delete the original module file, move the new module file into place, restart Icinga
234 #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
235 # WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING
236 #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
238 # IDOUtils idomod.so should be enabled using the module definition,
239 # i.e. using a package. First check that, and if not, you can
242 # ATTENTION: DO NOT load the same module here AND as a module definition.
243 # This can lead into problems with races on ressources.
246 # broker_module=<modulepath> [moduleargs]
248 # Enabling idoutils in icinga.cfg is not recommended. If you want to
249 # enable idoutils in Debian install icinga-idoutils and copy
250 # /usr/share/doc/icinga-idoutils/examples/idoutils.cfg-sample to
251 # /etc/icinga/modules/idoutils.cfg.
252 # Don't forget to also enable the daemon in /etc/default/icinga
253 #broker_module=/usr/lib/icinga/idomod.so config_file=/etc/icinga/idomod.cfg
257 # LOG ROTATION METHOD
258 # This is the log rotation method that Icinga should use to rotate
259 # the main log file. Values are as follows..
260 # n = None - don't rotate the log
261 # h = Hourly rotation (top of the hour)
262 # d = Daily rotation (midnight every day)
263 # w = Weekly rotation (midnight on Saturday evening)
264 # m = Monthly rotation (midnight last day of month)
266 log_rotation_method=d
271 # This is the directory where archived (rotated) log files should be
272 # placed (assuming you've chosen to do log rotation).
274 log_archive_path=/var/log/icinga/archives
278 # LOGGING OPTIONS FOR DAEMON
279 # If you want messages logged to the daemon log file (usually icinga.log).
280 # Default option is 1 (yes), the other valid option is 0 (no)
286 # LOGGING OPTIONS FOR SYSLOG
287 # If you want messages logged to the syslog facility, as well as the
288 # Icinga log file set this option to 1. If not, set it to 0.
295 # If you enabled use_syslog you can set icinga to use a local facility
296 # instead of the default.To enable set this option to 1, if not, set it to 0.
298 use_syslog_local_facility=0
302 # SYSLOG LOCAL FACILITY
303 # If you specified the use_syslog_local_facility you can chose which
304 # local facility to use. Valid values are from 0 to 7
306 syslog_local_facility=5
310 # NOTIFICATION LOGGING OPTION
311 # If you don't want notifications to be logged, set this value to 0.
312 # If notifications should be logged, set the value to 1.
318 # SERVICE RETRY LOGGING OPTION
319 # If you don't want service check retries to be logged, set this value
320 # to 0. If retries should be logged, set the value to 1.
322 log_service_retries=1
326 # HOST RETRY LOGGING OPTION
327 # If you don't want host check retries to be logged, set this value to
328 # 0. If retries should be logged, set the value to 1.
334 # EVENT HANDLER LOGGING OPTION
335 # If you don't want host and service event handlers to be logged, set
336 # this value to 0. If event handlers should be logged, set the value
343 # INITIAL STATES LOGGING OPTION
344 # If you want Icinga to log all initial host and service states to
345 # the main log file (the first time the service or host is checked)
346 # you can enable this option by setting this value to 1. If you
347 # are not using an external application that does long term state
348 # statistics reporting, you do not need to enable this option. In
349 # this case, set the value to 0.
355 # CURRENT STATES LOGGING OPTION
356 # If you don't want Icinga to log all current host and service states
357 # after log has been rotated to the main log file, you can disable this
358 # option by setting this value to 0. Default value is 1.
364 # EXTERNAL COMMANDS LOGGING OPTION
365 # If you don't want Icinga to log external commands, set this value
366 # to 0. If external commands should be logged, set this value to 1.
367 # Note: This option does not include logging of passive service
368 # checks - see the option below for controlling whether or not
369 # passive checks are logged.
371 log_external_commands=1
375 # PASSIVE CHECKS LOGGING OPTION
376 # If you don't want Icinga to log passive host and service checks, set
377 # this value to 0. If passive checks should be logged, set
384 # LONG PLUGIN OUTPUT LOGGING OPTION
385 # If you want Icinga to log the complete text of the plugin output
386 # to the log instead of only the first line then set this value to 1.
387 # Default value is 0.
389 log_long_plugin_output=0
393 # GLOBAL HOST AND SERVICE EVENT HANDLERS
394 # These options allow you to specify a host and service event handler
395 # command that is to be run for every host or service state change.
396 # The global event handler is executed immediately prior to the event
397 # handler that you have optionally specified in each host or
398 # service definition. The command argument is the short name of a
399 # command definition that you define in your host configuration file.
400 # Read the HTML docs for more information.
402 #global_host_event_handler=somecommand
403 #global_service_event_handler=somecommand
407 # SERVICE INTER-CHECK DELAY METHOD
408 # This is the method that Icinga should use when initially
409 # "spreading out" service checks when it starts monitoring. The
410 # default is to use smart delay calculation, which will try to
411 # space all service checks out evenly to minimize CPU load.
412 # Using the dumb setting will cause all checks to be scheduled
413 # at the same time (with no delay between them)! This is not a
414 # good thing for production, but is useful when testing the
415 # parallelization functionality.
416 # n = None - don't use any delay between checks
417 # d = Use a "dumb" delay of 1 second between checks
418 # s = Use "smart" inter-check delay calculation
419 # x.xx = Use an inter-check delay of x.xx seconds
421 service_inter_check_delay_method=s
425 # MAXIMUM SERVICE CHECK SPREAD
426 # This variable determines the timeframe (in minutes) from the
427 # program start time that an initial check of all services should
428 # be completed. Default is 30 minutes.
430 max_service_check_spread=30
434 # SERVICE CHECK INTERLEAVE FACTOR
435 # This variable determines how service checks are interleaved.
436 # Interleaving the service checks allows for a more even
437 # distribution of service checks and reduced load on remote
438 # hosts. Setting this value to 1 is equivalent to how versions
439 # of Icinga previous to 0.0.5 did service checks. Set this
440 # value to s (smart) for automatic calculation of the interleave
441 # factor unless you have a specific reason to change it.
442 # s = Use "smart" interleave factor calculation
443 # x = Use an interleave factor of x, where x is a
444 # number greater than or equal to 1.
446 service_interleave_factor=s
450 # HOST INTER-CHECK DELAY METHOD
451 # This is the method that Icinga should use when initially
452 # "spreading out" host checks when it starts monitoring. The
453 # default is to use smart delay calculation, which will try to
454 # space all host checks out evenly to minimize CPU load.
455 # Using the dumb setting will cause all checks to be scheduled
456 # at the same time (with no delay between them)!
457 # n = None - don't use any delay between checks
458 # d = Use a "dumb" delay of 1 second between checks
459 # s = Use "smart" inter-check delay calculation
460 # x.xx = Use an inter-check delay of x.xx seconds
462 host_inter_check_delay_method=s
466 # MAXIMUM HOST CHECK SPREAD
467 # This variable determines the timeframe (in minutes) from the
468 # program start time that an initial check of all hosts should
469 # be completed. Default is 30 minutes.
471 max_host_check_spread=30
475 # MAXIMUM CONCURRENT SERVICE CHECKS
476 # This option allows you to specify the maximum number of
477 # service checks that can be run in parallel at any given time.
478 # Specifying a value of 1 for this variable essentially prevents
479 # any service checks from being parallelized. A value of 0
480 # will not restrict the number of concurrent checks that are
483 max_concurrent_checks=0
487 # HOST AND SERVICE CHECK REAPER FREQUENCY
488 # This is the frequency (in seconds!) that Icinga will process
489 # the results of host and service checks.
490 # Lower this value in larger environments to allow faster
491 # check result processing (requires more cpu power).
493 #check_result_reaper_frequency=1
494 check_result_reaper_frequency=10
499 # MAX CHECK RESULT REAPER TIME
500 # This is the max amount of time (in seconds) that a single
501 # check result reaper event will be allowed to run before
502 # returning control back to Icinga so it can perform other
505 max_check_result_reaper_time=30
511 # This is directory where Icinga stores the results of host and
512 # service checks that have not yet been processed.
514 # Note: Make sure that only one instance of Icinga has access
517 check_result_path=/var/lib/icinga/spool/checkresults
522 # MAX CHECK RESULT FILE AGE
523 # This option determines the maximum age (in seconds) which check
524 # result files are considered to be valid. Files older than this
525 # threshold will be mercilessly deleted without further processing.
527 max_check_result_file_age=3600
532 # CACHED HOST CHECK HORIZON
533 # This option determines the maximum amount of time (in seconds)
534 # that the state of a previous host check is considered current.
535 # Cached host states (from host checks that were performed more
536 # recently that the timeframe specified by this value) can immensely
537 # improve performance in regards to the host check logic.
538 # Too high of a value for this option may result in inaccurate host
539 # states being used by Icinga, while a lower value may result in a
540 # performance hit for host checks. Use a value of 0 to disable host
543 cached_host_check_horizon=15
547 # CACHED SERVICE CHECK HORIZON
548 # This option determines the maximum amount of time (in seconds)
549 # that the state of a previous service check is considered current.
550 # Cached service states (from service checks that were performed more
551 # recently that the timeframe specified by this value) can immensely
552 # improve performance in regards to predictive dependency checks.
553 # Use a value of 0 to disable service check caching.
555 cached_service_check_horizon=15
559 # ENABLE PREDICTIVE HOST DEPENDENCY CHECKS
560 # This option determines whether or not Icinga will attempt to execute
561 # checks of hosts when it predicts that future dependency logic test
562 # may be needed. These predictive checks can help ensure that your
563 # host dependency logic works well.
565 # 0 = Disable predictive checks
566 # 1 = Enable predictive checks (default)
568 enable_predictive_host_dependency_checks=1
572 # ENABLE PREDICTIVE SERVICE DEPENDENCY CHECKS
573 # This option determines whether or not Icinga will attempt to execute
574 # checks of service when it predicts that future dependency logic test
575 # may be needed. These predictive checks can help ensure that your
576 # service dependency logic works well.
578 # 0 = Disable predictive checks
579 # 1 = Enable predictive checks (default)
581 enable_predictive_service_dependency_checks=1
585 # SOFT STATE DEPENDENCIES
586 # This option determines whether or not Icinga will use soft state
587 # information when checking host and service dependencies. Normally
588 # Icinga will only use the latest hard host or service state when
589 # checking dependencies. If you want it to use the latest state (regardless
590 # of whether its a soft or hard state type), enable this option.
592 # 0 = Don't use soft state dependencies (default)
593 # 1 = Use soft state dependencies
595 soft_state_dependencies=0
599 # TIME CHANGE ADJUSTMENT THRESHOLDS
600 # These options determine when Icinga will react to detected changes
601 # in system time (either forward or backwards).
603 #time_change_threshold=900
607 # AUTO-RESCHEDULING OPTION
608 # This option determines whether or not Icinga will attempt to
609 # automatically reschedule active host and service checks to
610 # "smooth" them out over time. This can help balance the load on
611 # the monitoring server.
612 # WARNING: THIS IS AN EXPERIMENTAL FEATURE - IT CAN DEGRADE
613 # PERFORMANCE, RATHER THAN INCREASE IT, IF USED IMPROPERLY
615 auto_reschedule_checks=0
619 # AUTO-RESCHEDULING INTERVAL
620 # This option determines how often (in seconds) Icinga will
621 # attempt to automatically reschedule checks. This option only
622 # has an effect if the auto_reschedule_checks option is enabled.
623 # Default is 30 seconds.
624 # WARNING: THIS IS AN EXPERIMENTAL FEATURE - IT CAN DEGRADE
625 # PERFORMANCE, RATHER THAN INCREASE IT, IF USED IMPROPERLY
627 auto_rescheduling_interval=30
631 # AUTO-RESCHEDULING WINDOW
632 # This option determines the "window" of time (in seconds) that
633 # Icinga will look at when automatically rescheduling checks.
634 # Only host and service checks that occur in the next X seconds
635 # (determined by this variable) will be rescheduled. This option
636 # only has an effect if the auto_reschedule_checks option is
637 # enabled. Default is 180 seconds (3 minutes).
638 # WARNING: THIS IS AN EXPERIMENTAL FEATURE - IT CAN DEGRADE
639 # PERFORMANCE, RATHER THAN INCREASE IT, IF USED IMPROPERLY
641 auto_rescheduling_window=180
646 # This is the number of seconds to sleep between checking for system
647 # events and service checks that need to be run.
654 # These options control how much time Icinga will allow various
655 # types of commands to execute before killing them off. Options
656 # are available for controlling maximum time allotted for
657 # service checks, host checks, event handlers, notifications, the
658 # ocsp command, and performance data commands. All values are in
660 # Increase the timeout values in case you are experiencing a lot
661 # of check timeouts. Addons like e.g. check_mk will perform
662 # one combined active servicecheck which could take longer than
663 # the default of 60sec.
665 #service_check_timeout=120
666 service_check_timeout=60
667 host_check_timeout=30
668 event_handler_timeout=30
669 notification_timeout=30
675 # RETAIN STATE INFORMATION
676 # This setting determines whether or not Icinga will save state
677 # information for services and hosts before it shuts down. Upon
678 # startup Icinga will reload all saved service and host state
679 # information before starting to monitor. This is useful for
680 # maintaining long-term data on state statistics, etc, but will
681 # slow Icinga down a bit when it (re)starts. Since its only
682 # a one-time penalty, I think its well worth the additional
685 retain_state_information=1
689 # STATE RETENTION FILE
690 # This is the file that Icinga should use to store host and
691 # service state information before it shuts down. The state
692 # information in this file is also read immediately prior to
693 # starting to monitor the network when Icinga is restarted.
694 # This file is used only if the retain_state_information
695 # variable is set to 1.
697 state_retention_file=/var/cache/icinga/retention.dat
702 # This is an advanced facility to pass a subset of retention
703 # information into Icinga on a running system. This is similar
704 # to the state retention file with the following difference:
706 # - if the last_check value is less than the current last_check,
707 # then the state information is ignored (this must be specified
708 # immediately after the object identifiers)
710 # - downtimes and comments are not identified by an id number, but
711 # by other "similar characteristics". This is required to work in
712 # a distributed Nagios environment
713 # * downtimes: hostname, servicename (if appropriate), author,
714 # comment, start_time, end_time, fixed, duration
715 # * comments: hostname, servicename, author, comment
717 # If this variable is set, then on Icinga startup, the sync file
718 # will be read after the retention file has been processed. If the
719 # file is read successfully, it will be removed.
720 # If the file does not exist, no error will appear.
721 # There is also an API that will force a read of the sync file.
723 #sync_retention_file=/var/cache/icinga/sync.dat
727 # RETENTION DATA UPDATE INTERVAL
728 # This setting determines how often (in minutes) that Icinga
729 # will automatically save retention data during normal operation.
730 # If you set this value to 0, Icinga will not save retention
731 # data at regular interval, but it will still save retention
732 # data before shutting down or restarting. If you have disabled
733 # state retention, this option has no effect.
735 retention_update_interval=60
739 # USE RETAINED PROGRAM STATE
740 # This setting determines whether or not Icinga will set
741 # program status variables based on the values saved in the
742 # retention file. If you want to use retained program status
743 # information, set this value to 1. If not, set this value
746 use_retained_program_state=1
749 # DUMP RETAINED HOST SERVICE STATES TO NEB
750 # This setting determines wether or not Icinga will dump host
751 # and service states based on the values saved in the retention
752 # file to the neb modules. If you don't want that, use at your
753 # own risk and disable it
755 dump_retained_host_service_states_to_neb=1
759 # USE RETAINED SCHEDULING INFO
760 # This setting determines whether or not Icinga will retain
761 # the scheduling info (next check time) for hosts and services
762 # based on the values saved in the retention file. If you
763 # If you want to use retained scheduling info, set this
764 # value to 1. If not, set this value to 0.
766 use_retained_scheduling_info=1
770 # RETAINED ATTRIBUTE MASKS (ADVANCED FEATURE)
771 # The following variables are used to specify specific host and
772 # service attributes that should *not* be retained by Icinga during
775 # The values of the masks are bitwise ANDs of values specified
776 # by the "MODATTR_" definitions found in include/common.h.
777 # For example, if you do not want the current enabled/disabled state
778 # of flap detection and event handlers for hosts to be retained, you
779 # would use a value of 24 for the host attribute mask...
780 # MODATTR_EVENT_HANDLER_ENABLED (8) + MODATTR_FLAP_DETECTION_ENABLED (16) = 24
782 # This mask determines what host attributes are not retained
783 retained_host_attribute_mask=0
785 # This mask determines what service attributes are not retained
786 retained_service_attribute_mask=0
788 # These two masks determine what process attributes are not retained.
789 # There are two masks, because some process attributes have host and service
790 # options. For example, you can disable active host checks, but leave active
791 # service checks enabled.
792 retained_process_host_attribute_mask=0
793 retained_process_service_attribute_mask=0
795 # These two masks determine what contact attributes are not retained.
796 # There are two masks, because some contact attributes have host and
797 # service options. For example, you can disable host notifications for
798 # a contact, but leave service notifications enabled for them.
799 retained_contact_host_attribute_mask=0
800 retained_contact_service_attribute_mask=0
805 # This is the seconds per unit interval as used in the
806 # host/contact/service configuration files. Setting this to 60 means
807 # that each interval is one minute long (60 seconds). Other settings
808 # have not been tested much, so your mileage is likely to vary...
814 # AGGRESSIVE HOST CHECKING OPTION
815 # If you don't want to turn on aggressive host checking features, set
816 # this value to 0 (the default). Otherwise set this value to 1 to
817 # enable the aggressive check option. Read the docs for more info
818 # on what aggressive host check is or check out the source code in
821 use_aggressive_host_checking=0
825 # SERVICE CHECK EXECUTION OPTION
826 # This determines whether or not Icinga will actively execute
827 # service checks when it initially starts. If this option is
828 # disabled, checks are not actively made, but Icinga can still
829 # receive and process passive check results that come in. Unless
830 # you're implementing redundant hosts or have a special need for
831 # disabling the execution of service checks, leave this enabled!
832 # Values: 1 = enable checks, 0 = disable checks
834 execute_service_checks=1
838 # PASSIVE SERVICE CHECK ACCEPTANCE OPTION
839 # This determines whether or not Icinga will accept passive
840 # service checks results when it initially (re)starts.
841 # Values: 1 = accept passive checks, 0 = reject passive checks
843 accept_passive_service_checks=1
847 # HOST CHECK EXECUTION OPTION
848 # This determines whether or not Icinga will actively execute
849 # host checks when it initially starts. If this option is
850 # disabled, checks are not actively made, but Icinga can still
851 # receive and process passive check results that come in. Unless
852 # you're implementing redundant hosts or have a special need for
853 # disabling the execution of host checks, leave this enabled!
854 # Values: 1 = enable checks, 0 = disable checks
856 execute_host_checks=1
860 # PASSIVE HOST CHECK ACCEPTANCE OPTION
861 # This determines whether or not Icinga will accept passive
862 # host checks results when it initially (re)starts.
863 # Values: 1 = accept passive checks, 0 = reject passive checks
865 accept_passive_host_checks=1
869 # NOTIFICATIONS OPTION
870 # This determines whether or not Icinga will sent out any host or
871 # service notifications when it is initially (re)started.
872 # Values: 1 = enable notifications, 0 = disable notifications
874 enable_notifications=1
878 # EVENT HANDLER USE OPTION
879 # This determines whether or not Icinga will run any host or
880 # service event handlers when it is initially (re)started. Unless
881 # you're implementing redundant hosts, leave this option enabled.
882 # Values: 1 = enable event handlers, 0 = disable event handlers
884 enable_event_handlers=1
888 # PROCESS PERFORMANCE DATA OPTION
889 # This determines whether or not Icinga will process performance
890 # data returned from service and host checks. If this option is
891 # enabled, host performance data will be processed using the
892 # host_perfdata_command (defined below) and service performance
893 # data will be processed using the service_perfdata_command (also
894 # defined below). Read the HTML docs for more information on
896 # Values: 1 = process performance data, 0 = do not process performance data
898 process_performance_data=0
902 # HOST AND SERVICE PERFORMANCE DATA PROCESSING COMMANDS
903 # These commands are run after every host and service check is
904 # performed. These commands are executed only if the
905 # process_performance_data option (above) is set to 1. The command
906 # argument is the short name of a command definition that you
907 # define in your host configuration file. Read the HTML docs for
908 # more information on performance data.
910 #host_perfdata_command=process-host-perfdata
911 #service_perfdata_command=process-service-perfdata
915 # HOST AND SERVICE PERFORMANCE DATA FILES
916 # These files are used to store host and service performance data.
917 # Performance data is only written to these files if the
918 # process_performance_data option (above) is set to 1.
920 #host_perfdata_file=/tmp/host-perfdata
921 #service_perfdata_file=/tmp/service-perfdata
925 # HOST AND SERVICE PERFORMANCE DATA FILE TEMPLATES
926 # These options determine what data is written (and how) to the
927 # performance data files. The templates may contain macros, special
928 # characters (\t for tab, \r for carriage return, \n for newline)
929 # and plain text. A newline is automatically added after each write
930 # to the performance data file. Some examples of what you can do are
933 #host_perfdata_file_template=[HOSTPERFDATA]\t$TIMET$\t$HOSTNAME$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$
934 #service_perfdata_file_template=[SERVICEPERFDATA]\t$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$
938 # HOST AND SERVICE PERFORMANCE DATA FILE MODES
939 # This option determines whether or not the host and service
940 # performance data files are opened in write ("w") or append ("a")
941 # mode. If you want to use named pipes, you should use the special
942 # pipe ("p") mode which avoid blocking at startup, otherwise you will
943 # likely want the defult append ("a") mode.
945 #host_perfdata_file_mode=a
946 #service_perfdata_file_mode=a
950 # HOST AND SERVICE PERFORMANCE DATA FILE PROCESSING INTERVAL
951 # These options determine how often (in seconds) the host and service
952 # performance data files are processed using the commands defined
953 # below. A value of 0 indicates the files should not be periodically
956 #host_perfdata_file_processing_interval=0
957 #service_perfdata_file_processing_interval=0
961 # HOST AND SERVICE PERFORMANCE DATA FILE PROCESSING COMMANDS
962 # These commands are used to periodically process the host and
963 # service performance data files. The interval at which the
964 # processing occurs is determined by the options above.
966 #host_perfdata_file_processing_command=process-host-perfdata-file
967 #service_perfdata_file_processing_command=process-service-perfdata-file
970 # HOST AND SERVICE PERFORMANCE DATA PROCESS EMPTY RESULTS
971 # THese options determine wether the core will process empty perfdata
972 # results or not. This is needed for distributed monitoring, and intentionally
973 # turned on by default.
974 # If you don't require empty perfdata - saving some cpu cycles
975 # on unwanted macro calculation - you can turn that off. Be careful!
976 # Values: 1 = enable, 0 = disable
978 #host_perfdata_process_empty_results=1
979 #service_perfdata_process_empty_results=1
983 # ALLOW EMPTY HOSTGROUP ASSIGMENT FOR SERVICES
984 # This boolean option determines whether services assigned to empty
985 # host groups (host groups with no host members) will cause Icinga to
986 # exit with error on start up (or during a configuration check) or not.
987 # It's useful to be able to assign services to empty hostgroups when
988 # configuration files or pre-cached object files are distributed to
989 # various pollers, or when the process of generating Icinga config is
990 # automated, or when a set of services is slowly being phased out but
991 # should be kept around.
992 # The default behavior if the option is not present in the main
993 # configuration file is for Icinga to exit with error if services are
994 # associated with host groups that have no hosts associated with them.
996 #allow_empty_hostgroup_assignment=0
1000 # OBSESS OVER SERVICE CHECKS OPTION
1001 # This determines whether or not Icinga will obsess over service
1002 # checks and run the ocsp_command defined below. Unless you're
1003 # planning on implementing distributed monitoring, do not enable
1004 # this option. Read the HTML docs for more information on
1005 # implementing distributed monitoring.
1006 # Values: 1 = obsess over services, 0 = do not obsess (default)
1008 obsess_over_services=0
1012 # OBSESSIVE COMPULSIVE SERVICE PROCESSOR COMMAND
1013 # This is the command that is run for every service check that is
1014 # processed by Icinga. This command is executed only if the
1015 # obsess_over_services option (above) is set to 1. The command
1016 # argument is the short name of a command definition that you
1017 # define in your host configuration file. Read the HTML docs for
1018 # more information on implementing distributed monitoring.
1020 #ocsp_command=somecommand
1024 # OBSESS OVER HOST CHECKS OPTION
1025 # This determines whether or not Icinga will obsess over host
1026 # checks and run the ochp_command defined below. Unless you're
1027 # planning on implementing distributed monitoring, do not enable
1028 # this option. Read the HTML docs for more information on
1029 # implementing distributed monitoring.
1030 # Values: 1 = obsess over hosts, 0 = do not obsess (default)
1036 # OBSESSIVE COMPULSIVE HOST PROCESSOR COMMAND
1037 # This is the command that is run for every host check that is
1038 # processed by Icinga. This command is executed only if the
1039 # obsess_over_hosts option (above) is set to 1. The command
1040 # argument is the short name of a command definition that you
1041 # define in your host configuration file. Read the HTML docs for
1042 # more information on implementing distributed monitoring.
1044 #ochp_command=somecommand
1048 # TRANSLATE PASSIVE HOST CHECKS OPTION
1049 # This determines whether or not Icinga will translate
1050 # DOWN/UNREACHABLE passive host check results into their proper
1051 # state for this instance of Icinga. This option is useful
1052 # if you have distributed or failover monitoring setup. In
1053 # these cases your other Icinga servers probably have a different
1054 # "view" of the network, with regards to the parent/child relationship
1055 # of hosts. If a distributed monitoring server thinks a host
1056 # is DOWN, it may actually be UNREACHABLE from the point of
1057 # this Icinga instance. Enabling this option will tell Icinga
1058 # to translate any DOWN or UNREACHABLE host states it receives
1059 # passively into the correct state from the view of this server.
1060 # Values: 1 = perform translation, 0 = do not translate (default)
1062 translate_passive_host_checks=0
1066 # PASSIVE HOST CHECKS ARE SOFT OPTION
1067 # This determines whether or not Icinga will treat passive host
1068 # checks as being HARD or SOFT. By default, a passive host check
1069 # result will put a host into a HARD state type. This can be changed
1070 # by enabling this option.
1071 # Values: 0 = passive checks are HARD, 1 = passive checks are SOFT
1073 passive_host_checks_are_soft=0
1077 # ORPHANED HOST/SERVICE CHECK OPTIONS
1078 # These options determine whether or not Icinga will periodically
1079 # check for orphaned host service checks. Since service checks are
1080 # not rescheduled until the results of their previous execution
1081 # instance are processed, there exists a possibility that some
1082 # checks may never get rescheduled. A similar situation exists for
1083 # host checks, although the exact scheduling details differ a bit
1084 # from service checks. Orphaned checks seem to be a rare
1085 # problem and should not happen under normal circumstances.
1086 # If you have problems with service checks never getting
1087 # rescheduled, make sure you have orphaned service checks enabled.
1088 # Values: 1 = enable checks, 0 = disable checks
1090 check_for_orphaned_services=1
1091 check_for_orphaned_hosts=1
1095 # SERVICE CHECK TIMEOUT STATE
1096 # This setting determines the state Icinga will report when a
1097 # service check times out meaning it does not respond within
1098 # service_check_timeout seconds. The default is set to Unknown
1100 # Valid settings are:
1102 # u - Unknown (default)
1106 service_check_timeout_state=u
1110 # SERVICE FRESHNESS CHECK OPTION
1111 # This option determines whether or not Icinga will periodically
1112 # check the "freshness" of service results. Enabling this option
1113 # is useful for ensuring passive checks are received in a timely
1115 # Values: 1 = enabled freshness checking, 0 = disable freshness checking
1117 check_service_freshness=1
1121 # SERVICE FRESHNESS CHECK INTERVAL
1122 # This setting determines how often (in seconds) Icinga will
1123 # check the "freshness" of service check results. If you have
1124 # disabled service freshness checking, this option has no effect.
1126 service_freshness_check_interval=60
1130 # HOST FRESHNESS CHECK OPTION
1131 # This option determines whether or not Icinga will periodically
1132 # check the "freshness" of host results. Enabling this option
1133 # is useful for ensuring passive checks are received in a timely
1135 # Values: 1 = enabled freshness checking, 0 = disable freshness checking
1137 check_host_freshness=0
1141 # HOST FRESHNESS CHECK INTERVAL
1142 # This setting determines how often (in seconds) Icinga will
1143 # check the "freshness" of host check results. If you have
1144 # disabled host freshness checking, this option has no effect.
1146 host_freshness_check_interval=60
1151 # ADDITIONAL FRESHNESS THRESHOLD LATENCY
1152 # This setting determines the number of seconds that Icinga
1153 # will add to any host and service freshness thresholds that
1154 # it calculates (those not explicitly specified by the user).
1156 additional_freshness_latency=15
1161 # FLAP DETECTION OPTION
1162 # This option determines whether or not Icinga will try
1163 # and detect hosts and services that are "flapping".
1164 # Flapping occurs when a host or service changes between
1165 # states too frequently. When Icinga detects that a
1166 # host or service is flapping, it will temporarily suppress
1167 # notifications for that host/service until it stops
1168 # flapping. Flap detection is very experimental, so read
1169 # the HTML documentation before enabling this feature!
1170 # Values: 1 = enable flap detection
1171 # 0 = disable flap detection (default)
1173 enable_flap_detection=1
1177 # FLAP DETECTION THRESHOLDS FOR HOSTS AND SERVICES
1178 # Read the HTML documentation on flap detection for
1179 # an explanation of what this option does. This option
1180 # has no effect if flap detection is disabled.
1182 low_service_flap_threshold=5.0
1183 high_service_flap_threshold=20.0
1184 low_host_flap_threshold=5.0
1185 high_host_flap_threshold=20.0
1189 # DATE FORMAT OPTION
1190 # This option determines how short dates are displayed. Valid options
1192 # us (MM-DD-YYYY HH:MM:SS)
1193 # euro (DD-MM-YYYY HH:MM:SS)
1194 # iso8601 (YYYY-MM-DD HH:MM:SS)
1195 # strict-iso8601 (YYYY-MM-DDTHH:MM:SS)
1204 # This option is used to override the default timezone that this
1205 # instance of Icinga runs in. If not specified, Icinga will use
1206 # the system configured timezone.
1208 # NOTE: In order to display the correct timezone in the CGIs, you
1209 # will also need to alter the Apache directives for the CGI path
1210 # to include your timezone. Example:
1212 # <Directory "/usr/local/icinga/sbin/">
1213 # SetEnv TZ "Australia/Brisbane"
1217 #use_timezone=US/Mountain
1218 #use_timezone=Australia/Brisbane
1223 # P1.PL FILE LOCATION
1224 # This value determines where the p1.pl perl script (used by the
1225 # embedded Perl interpreter) is located. If you didn't compile
1226 # Icinga with embedded Perl support, this option has no effect.
1228 p1_file=/usr/lib/icinga/p1.pl
1232 # EMBEDDED PERL INTERPRETER OPTION
1233 # This option determines whether or not the embedded Perl interpreter
1234 # will be enabled during runtime. This option has no effect if Icinga
1235 # has not been compiled with support for embedded Perl.
1236 # This option is intentionally disabled by default, because embedded
1237 # perl can cause memory leaks and make Icinga unstable if not properly
1239 # Only enable this setting when you really know what you are doing!
1240 # Values: 0 = disable interpreter, 1 = enable interpreter
1242 enable_embedded_perl=1
1246 # EMBEDDED PERL USAGE OPTION
1247 # This option determines whether or not Icinga will process Perl plugins
1248 # and scripts with the embedded Perl interpreter if the plugins/scripts
1249 # do not explicitly indicate whether or not it is okay to do so. Read
1250 # the HTML documentation on the embedded Perl interpreter for more
1251 # information on how this option works.
1253 use_embedded_perl_implicitly=1
1257 # EVENT HANDLERS FOR STALKED HOSTS/SERVICES
1258 # Allow running event handlers for stalked hosts/services in order
1259 # to forward to external systems.
1260 # Values: 0 = disabled (default), 1 = enabled
1262 stalking_event_handlers_for_hosts=0
1263 stalking_event_handlers_for_services=0
1267 # NOTIFICATIONS FOR STALKED HOSTS/SERVICES
1268 # Allow notifications for stalked hosts/services globally
1269 # for all contacts in order to notify about a stalking
1271 # Values: 0 = disabled (default), 1 = enabled
1273 stalking_notifications_for_hosts=0
1274 stalking_notifications_for_services=0
1278 # ILLEGAL OBJECT NAME CHARACTERS
1279 # This option allows you to specify illegal characters that cannot
1280 # be used in host names, service descriptions, or names of other
1283 illegal_object_name_chars=`~!$%^&*|'"<>?,()=
1287 # ILLEGAL MACRO OUTPUT CHARACTERS
1288 # This option allows you to specify illegal characters that are
1289 # stripped from macros before being used in notifications, event
1290 # handlers, etc. This DOES NOT affect macros used in service or
1291 # host check commands.
1292 # The following macros are stripped of the characters you specify:
1299 # $SERVICEACKAUTHOR$
1300 # $SERVICEACKCOMMENT$
1302 illegal_macro_output_chars=`~$&|'"<>
1306 # REGULAR EXPRESSION MATCHING
1307 # This option controls whether or not regular expression matching
1308 # takes place in the object config files. Regular expression
1309 # matching is used to match host, hostgroup, service, and service
1310 # group names/descriptions in some fields of various object types.
1311 # Values: 1 = enable regexp matching, 0 = disable regexp matching
1313 use_regexp_matching=0
1317 # "TRUE" REGULAR EXPRESSION MATCHING
1318 # This option controls whether or not "true" regular expression
1319 # matching takes place in the object config files. This option
1320 # only has an effect if regular expression matching is enabled
1321 # (see above). If this option is DISABLED, regular expression
1322 # matching only occurs if a string contains wildcard characters
1323 # (* and ?). If the option is ENABLED, regexp matching occurs
1324 # all the time (which can be annoying).
1325 # Values: 1 = enable true matching, 0 = disable true matching
1327 use_true_regexp_matching=0
1331 # ADMINISTRATOR EMAIL/PAGER ADDRESSES
1332 # The email and pager address of a global administrator (likely you).
1333 # Icinga never uses these values itself, but you can access them by
1334 # using the $ADMINEMAIL$ and $ADMINPAGER$ macros in your notification
1337 admin_email=root@localhost
1338 admin_pager=pageroot@localhost
1342 # DAEMON CORE DUMP OPTION
1343 # This option determines whether or not Icinga is allowed to create
1344 # a core dump when it runs as a daemon. Note that it is generally
1345 # considered bad form to allow this, but it may be useful for
1346 # debugging purposes. Enabling this option doesn't guarantee that
1347 # a core file will be produced, but that's just life...
1348 # Values: 1 - Allow core dumps
1349 # 0 - Do not allow core dumps (default)
1355 # LARGE INSTALLATION TWEAKS OPTION
1356 # This option determines whether or not Icinga will take some shortcuts
1357 # which can save on memory and CPU usage in large Icinga installations.
1358 # Read the documentation for more information on the benefits/tradeoffs
1359 # of enabling this option.
1360 # Values: 1 - Enabled tweaks
1361 # 0 - Disable tweaks (default)
1363 use_large_installation_tweaks=1
1367 # ENABLE ENVIRONMENT MACROS
1368 # This option determines whether or not Icinga will make all standard
1369 # macros available as environment variables when host/service checks
1370 # and system commands (event handlers, notifications, etc.) are
1371 # executed. Enabling this option can cause performance issues in
1372 # large installations, as it will consume a bit more memory and (more
1373 # importantly) consume more CPU.
1374 # Keep in mind that various addons/plugins will require this setting
1375 # to be enabled (e.g. check_oracle_health) for special usage.
1376 # Values: 1 - Enable environment variable macros
1377 # 0 - Disable environment variable macros (default)
1379 enable_environment_macros=1
1383 # CHILD PROCESS MEMORY OPTION
1384 # This option determines whether or not Icinga will free memory in
1385 # child processes (processed used to execute system commands and host/
1386 # service checks). If you specify a value here, it will override
1388 # Value: 1 - Free memory in child processes
1389 # 0 - Do not free memory in child processes
1391 #free_child_process_memory=1
1395 # CHILD PROCESS FORKING BEHAVIOR
1396 # This option determines how Icinga will fork child processes
1397 # (used to execute system commands and host/service checks). Normally
1398 # child processes are fork()ed twice, which provides a very high level
1399 # of isolation from problems. Fork()ing once is probably enough and will
1400 # save a great deal on CPU usage (in large installs), so you might
1401 # want to consider using this. If you specify a value here, it will
1403 # Value: 1 - Child processes fork() twice
1404 # 0 - Child processes fork() just once
1406 #child_processes_fork_twice=1
1411 # This option determines how much (if any) debugging information will
1412 # be written to the debug file. OR values together to log multiple
1413 # types of information.
1419 # 4 = Process information
1420 # 8 = Scheduled events
1421 # 16 = Host/service checks
1422 # 32 = Notifications
1424 # 128 = External commands
1426 # 512 = Scheduled downtime
1435 # This option determines how verbose the debug log out will be.
1436 # Values: 0 = Brief output
1445 # This option determines where Icinga should write debugging information.
1447 debug_file=/var/log/icinga/icinga.debug
1451 # MAX DEBUG FILE SIZE
1452 # This option determines the maximum size (in bytes) of the debug file. If
1453 # the file grows larger than this size, it will be renamed with a .old
1454 # extension. If a file already exists with a .old extension it will
1455 # automatically be deleted. This helps ensure your disk space usage doesn't
1456 # get out of control when debugging Icinga.
1459 max_debug_file_size=100000000
1464 # This option enables or disables event profiling for stats of event counts
1465 # and time taken for events. Option can't be used on Solaris with gcc3.
1466 # Values: 0 - disabled
1469 event_profiling_enabled=0