Merge pull request #7223 from KAMI911/feature/check_logfile

Add check_logfiles to ITL
This commit is contained in:
Michael Friedrich 2019-07-12 10:25:38 +02:00 committed by GitHub
commit 0501b12d01
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 135 additions and 0 deletions

View File

@ -2907,6 +2907,38 @@ logstash_inflight_crit | **Optional.** Critical threshold of inflight events
logstash_cpu_warn | **Optional.** Warning threshold for cpu usage in percent.
logstash_cpu_crit | **Optional.** Critical threshold for cpu usage in percent.
#### logfiles <a id="plugins-contrib-command-logfiles"></a>
The [logfiles](https://labs.consol.de/nagios/check_logfiles/) plugin finds
specified patterns in log files.
Name | Description
----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
logfiles_tag | **Optional.** A short unique descriptor for this search. It will appear in the output of the plugin and is used to separare the different services.
logfiles_logfile | **Optional.** This is the name of the log file you want to scan.
logfiles_rotation | **Optional.** This is the method how log files are rotated. One of the predefined methods or a regular expression, which helps identify the rotated archives. If this key is missing, check_logfiles assumes that the log file will be simply overwritten instead of rotated.
logfiles_critical_pattern | **Optional.** A regular expression which will trigger a critical error.
logfiles_warning_pattern | **Optional.** A regular expression which will trigger a warning error.
logfiles_critical_exception | **Optional.** A regular expression, the exceptions which are not counted as critical errors.
logfiles_warning_exception | **Optional.** A regular expression, the exceptions which are not counted as warning errors.
logfiles_ok_pattern | **Optional.** A regular expression which resets the error counters.
logfiles_no_protocol | **Optional.** Normally all the matched lines are written into a protocol file with this files name appearing in the plugins output. This option switches this off.
logfiles_syslog_server | **Optional.** With this option you limit the pattern matching to lines originating from the host check_logfiles is running on.
logfiles_syslog_client | **Optional.** With this option you limit the pattern matching to lines originating from the host named in this option.
logfiles_sticky | **Optional.** Errors are propagated through successive runs.
logfiles_unstick | **Optional.** Resets sticky errors.
logfiles_config | **Optional.** The name of a configuration file.
logfiles_configdir | **Optional.** The name of a configuration directory. Configfiles ending in .cfg or .conf are (recursively) imported.
logfiles_searches | **Optional.** A list of tags of those searches which are to be run. Using this parameter, not all searches listed in the config file are run, but only those selected.
logfiles_selectedsearches | **Optional.** A list of tags of those searches which are to be run. Using this parameter, not all searches listed in the config file are run, but only those selected.
logfiles_report | **Optional.** This option turns on multiline output (Default: off). The setting html generates a table which display the last hits in the service details view. Possible values are: short, long, html or off.
logfiles_max_length | **Optional.** With this parameter long lines are truncated (Default: off). Some programs (e.g. TrueScan) generate entries in the eventlog of such a length, that the output of the plugin becomes longer than 1024 characters. NSClient++ discards these.
logfiles_winwarncrit | **Optional.** With this parameter messages in the eventlog are classified by the type WARNING/ERROR (Default: off). Replaces or complements warning/criticalpattern.
logfiles_run_unique | **Optional.** This parameter prevents check_logfiles from starting when theres already another instance using the same config file. (exits with UNKNOWN).
logfiles_timeout | **Optional.** This parameter causes an abort of a running search after a defined number of seconds. It is an aborted in a controlled manner, so that the lines which have been read so far, are used for the computation of the final result.
logfiles_warning | **Optional.** Complex handler-scripts can be provided with a warning-parameter this way. Inside the scripts the value is accessible as the macro CL_WARNING.
logfiles_critical | **Optional.** Complex handler-scripts can be provided with a critical-parameter this way. Inside the scripts the value is accessible as the macro CL_CRITICAL.
### Metrics <a id="plugin-contrib-metrics"></a>

View File

@ -55,3 +55,106 @@ object CheckCommand "logstash" {
vars.logstash_heap_warn = 70
vars.logstash_heap_crit = 80
}
object CheckCommand "logfiles" {
command = [ PluginContribDir + "/check_logfiles" ]
arguments = {
"--tag" = {
value = "$logfiles_tag$"
description = "A short unique descriptor for this search. It will appear in the output of the plugin and is used to separare the different services."
}
"--logfile" = {
value = "$logfiles_logfile$"
description = "This is the name of the log file you want to scan."
}
"--rotation" = {
value = "$logfiles_rotation$"
description = "This is the method how log files are rotated. One of the predefined methods or a regular expression, which helps identify the rotated archives. If this key is missing, check_logfiles assumes that the log file will be simply overwritten instead of rotated."
}
"--criticalpattern" = {
value = "$logfiles_critical_pattern$"
description = "A regular expression which will trigger a critical error."
}
"--warningpattern" = {
value = "$logfiles_warning_pattern$"
description = "A regular expression which will trigger a warning error."
}
"--criticalexception" = {
value = "$logfiles_critical_exception$"
description = "A regular expression, the exceptions which are not counted as critical errors."
}
"--warningexception" = {
value = "$logfiles_warning_exception$"
description = "A regular expression, the exceptions which are not counted as warning errors."
}
"--okpattern" = {
value = "$logfiles_ok_pattern$"
description = "A regular expression which resets the error counters."
}
"--noprotocol" = {
set_if = "$logfiles_no_protocol$"
description = "Normally all the matched lines are written into a protocol file with this files name appearing in the plugins output. This option switches this off."
}
"--syslogserver" = {
set_if = "$logfiles_syslog_server$"
description = "With this option you limit the pattern matching to lines originating from the host check_logfiles is running on."
}
"--syslogclient" = {
value = "$logfiles_syslog_client$"
description = "With this option you limit the pattern matching to lines originating from the host named in this option."
}
"--sticky" = {
value = "$logfiles_sticky$"
description = "Errors are propagated through successive runs."
}
"--unstick" = {
set_if = "$logfiles_unstick$"
description = "Resets sticky errors."
}
"--config" = {
value = "$logfiles_config$"
description = "The name of a configuration file."
}
"--configdir" = {
value = "$logfiles_configdir$"
description = "The name of a configuration directory. Configfiles ending in .cfg or .conf are (recursively) imported."
}
"--searches" = {
value = "$logfiles_searches$"
description = "A list of tags of those searches which are to be run. Using this parameter, not all searches listed in the config file are run, but only those selected."
}
"--selectedsearches" = {
value = "$logfiles_selectedsearches$"
description = "A list of tags of those searches which are to be run. Using this parameter, not all searches listed in the config file are run, but only those selected."
}
"--report" = {
value = "$logfiles_report$"
description = "This option turns on multiline output (Default: off). The setting html generates a table which display the last hits in the service details view. Possible values are: short, long, html or off"
}
"--maxlength" = {
value = "$logfiles_max_length$"
description = "With this parameter long lines are truncated (Default: off). Some programs (e.g. TrueScan) generate entries in the eventlog of such a length, that the output of the plugin becomes longer than 1024 characters. NSClient++ discards these."
}
"--winwarncrit" = {
value = "$logfiles_winwarncrit$"
description = "With this parameter messages in the eventlog are classified by the type WARNING/ERROR (Default: off). Replaces or complements warning/criticalpattern."
}
"--rununique" = {
set_if = "$logfiles_run_unique$"
description = "This parameter prevents check_logfiles from starting when theres already another instance using the same config file. (exits with UNKNOWN)"
}
"--timeout" = {
value = "$logfiles_timeout$"
description = "This parameter causes an abort of a running search after a defined number of seconds. It is an aborted in a controlled manner, so that the lines which have been read so far, are used for the computation of the final result."
}
"--warning" = {
value = "$logfiles_warning$"
description = "Complex handler-scripts can be provided with a warning-parameter this way. Inside the scripts the value is accessible as the macro CL_WARNING."
}
"--critical" = {
value = "$logfiles_critical$"
description = "Complex handler-scripts can be provided with a critical-parameter this way. Inside the scripts the value is accessible as the macro CL_CRITICAL."
}
}
}