* Improved discovery routine & added log_healthy in check_hpux_ignite_backup()
* Improved config file comments
This commit is contained in:
parent
3fdb464eb2
commit
ada5fbb1e2
@ -12,7 +12,7 @@ state_file=discovered.file_change
|
|||||||
|
|
||||||
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
do_meta_check=yes
|
do_meta_check="yes"
|
||||||
|
|
||||||
# specify files or directories check (directories are automatically expanded)
|
# specify files or directories check (directories are automatically expanded)
|
||||||
# format:
|
# format:
|
||||||
@ -20,9 +20,10 @@ do_meta_check=yes
|
|||||||
# excl:<full path> (excludes a path)
|
# excl:<full path> (excludes a path)
|
||||||
# note: shell wild cards in the file paths are not supported! Exclusions have
|
# note: shell wild cards in the file paths are not supported! Exclusions have
|
||||||
# a higher priority than inclusions.
|
# a higher priority than inclusions.
|
||||||
incl:file1
|
# Examples:
|
||||||
incl:dir1
|
#incl:file1
|
||||||
excl:dir1/file2
|
#incl:dir1
|
||||||
|
#excl:dir1/file2
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
# check clone age? (yes|no)
|
# check clone age? (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_clone=yes
|
check_clone="yes"
|
||||||
|
|
||||||
# maximum days before the drd clone gets flagged as 'too old'
|
# maximum days before the drd clone gets flagged as 'too old'
|
||||||
# [default: 30]
|
# [default: 30]
|
||||||
@ -16,7 +16,7 @@ clone_age=30
|
|||||||
|
|
||||||
# check sync age? (yes|no)
|
# check sync age? (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_sync=yes
|
check_sync="yes"
|
||||||
|
|
||||||
# maximum days before the drd sync gets flagged as 'too old'
|
# maximum days before the drd sync gets flagged as 'too old'
|
||||||
# [default: 30]
|
# [default: 30]
|
||||||
|
@ -12,7 +12,7 @@ state_file=discovered.file_change
|
|||||||
|
|
||||||
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
do_meta_check=yes
|
do_meta_check="yes"
|
||||||
|
|
||||||
# specify files or directories check (directories are automatically expanded)
|
# specify files or directories check (directories are automatically expanded)
|
||||||
# format:
|
# format:
|
||||||
@ -20,9 +20,10 @@ do_meta_check=yes
|
|||||||
# excl:<full path> (excludes a path)
|
# excl:<full path> (excludes a path)
|
||||||
# note: shell wild cards in the file paths are not supported! Exclusions have
|
# note: shell wild cards in the file paths are not supported! Exclusions have
|
||||||
# a higher priority than inclusions.
|
# a higher priority than inclusions.
|
||||||
incl:file1
|
# Examples:
|
||||||
incl:dir1
|
#incl:file1
|
||||||
excl:dir1/file2
|
#incl:dir1
|
||||||
|
#excl:dir1/file2
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
# specify whether non-mounted FS should be alerted on (yes|no)
|
# specify whether non-mounted FS should be alerted on (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
ignore_missing_fs=yes
|
ignore_missing_fs="yes"
|
||||||
|
|
||||||
# specify mount points and their options (use the mount options as displayed
|
# specify mount points and their options (use the mount options as displayed
|
||||||
# by the 'mount' command; order of the options is not important)
|
# by the 'mount' command; order of the options is not important)
|
||||||
|
@ -9,15 +9,15 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# specify whether to perform inode usage check
|
# specify whether to perform inode usage check
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_inodes_usage=yes
|
check_inodes_usage="yes"
|
||||||
|
|
||||||
# specify whether to perform space usage check
|
# specify whether to perform space usage check
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_space_usage=yes
|
check_space_usage="yes"
|
||||||
|
|
||||||
# specify the maximum % of inodes usage a filesystem may reach (general threshold)
|
# specify the maximum % of inodes usage a filesystem may reach (general threshold)
|
||||||
# [default: 90]
|
# [default: 90]
|
||||||
@ -31,6 +31,7 @@ max_space_usage=90
|
|||||||
# for a given filesystem, the general threshold will be used (see above). When
|
# for a given filesystem, the general threshold will be used (see above). When
|
||||||
# defining a threshold of 0 (zero), then the check will for this give filesystem
|
# defining a threshold of 0 (zero), then the check will for this give filesystem
|
||||||
# will be skipped (this allows for exclusion of filesystems)
|
# will be skipped (this allows for exclusion of filesystems)
|
||||||
|
# Format:
|
||||||
# [fs:<mount_point>:<max_inode_usage_%>:<max_space_usage_%]
|
# [fs:<mount_point>:<max_inode_usage_%>:<max_space_usage_%]
|
||||||
# Examples:
|
# Examples:
|
||||||
# check myfs1 with a custom inodes + space usage threshold
|
# check myfs1 with a custom inodes + space usage threshold
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
# [parid;runtime_status;boot_status]
|
# [parid;runtime_status;boot_status]
|
||||||
# runtime_status should be 'on' or 'off'
|
# runtime_status should be 'on' or 'off'
|
||||||
# boot_status should be 'auto' or 'manual'
|
# boot_status should be 'auto' or 'manual'
|
||||||
|
# Examples:
|
||||||
#1;on;auto
|
#1;on;auto
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,6 +6,11 @@
|
|||||||
# [default: indicates hardcoded script values if no value is defined here]
|
# [default: indicates hardcoded script values if no value is defined here]
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
|
# specify whether to also log passed health checks
|
||||||
|
# (warning: this may rapidly grow the HC log)
|
||||||
|
# [default: no]
|
||||||
|
log_healthy="yes"
|
||||||
|
|
||||||
# maximum days before backup gets flagged as 'too old'
|
# maximum days before backup gets flagged as 'too old'
|
||||||
# [default: 14]
|
# [default: 14]
|
||||||
backup_age=14
|
backup_age=14
|
||||||
|
@ -12,11 +12,11 @@ ioscan_classes="ctl,diag,disk,ext_bus,fc,fcp,i2o,ipmi,lan,lvm,olar,vxvm"
|
|||||||
|
|
||||||
# specify whether ioscan needs to be run in kernel-cached or not (yes|no)
|
# specify whether ioscan needs to be run in kernel-cached or not (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
kernel_mode=yes
|
kernel_mode="yes"
|
||||||
|
|
||||||
# specify whether ioscan needs to report in Agile view or not (yes|no)
|
# specify whether ioscan needs to report in Agile view or not (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
agile_view=yes
|
agile_view="yes"
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -8,8 +8,9 @@
|
|||||||
|
|
||||||
# specify kernel parameters and their values or expression (as reported by kctune)
|
# specify kernel parameters and their values or expression (as reported by kctune)
|
||||||
# [param:<param_name>:<param_value>]
|
# [param:<param_name>:<param_value>]
|
||||||
param:nproc:5000
|
# Examples:
|
||||||
param:filecache_max:50%
|
#param:nproc:5000
|
||||||
|
#param:filecache_max:50%
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -13,7 +13,8 @@ max_kcusage=90
|
|||||||
# specify individual kernel parameters and their maximum usage threshold (percentage)
|
# specify individual kernel parameters and their maximum usage threshold (percentage)
|
||||||
# definitions here will overrides max_kcusage for these parameters
|
# definitions here will overrides max_kcusage for these parameters
|
||||||
# [param:<param_name>:<param_threshold>]
|
# [param:<param_name>:<param_threshold>]
|
||||||
param:nproc:70
|
# Examples:
|
||||||
|
# param:nproc:70
|
||||||
|
|
||||||
# specify parameters that should be excluded from the check
|
# specify parameters that should be excluded from the check
|
||||||
# comma-separated list (as shown by kctune/kcusage)
|
# comma-separated list (as shown by kctune/kcusage)
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# maximum allowed offset (in milliseconds (positive integers only))
|
# maximum allowed offset (in milliseconds (positive integers only))
|
||||||
# [default: 500]
|
# [default: 500]
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# list of OVPA daemons to check (comma-separated list)
|
# list of OVPA daemons to check (comma-separated list)
|
||||||
# [default: oacore,midaemon,perfalarm,ttd,ovcd,ovbbccb,perfd (v12)]
|
# [default: oacore,midaemon,perfalarm,ttd,ovcd,ovbbccb,perfd (v12)]
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# OE version that should be checked (version string as displayed by 'swlist')
|
# OE version that should be checked (version string as displayed by 'swlist')
|
||||||
# [default: none]
|
# [default: none]
|
||||||
@ -21,7 +21,7 @@ required_patches=""
|
|||||||
|
|
||||||
# check that all installed filesets are configured?
|
# check that all installed filesets are configured?
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_filesets=yes
|
check_filesets="yes"
|
||||||
|
|
||||||
# list of filesets to exclude from the check (comma-separated list)
|
# list of filesets to exclude from the check (comma-separated list)
|
||||||
# [default: none]
|
# [default: none]
|
||||||
|
@ -9,11 +9,11 @@
|
|||||||
# specify whether to also log passed health checks (yes|no)
|
# specify whether to also log passed health checks (yes|no)
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# specify whether to check for new events? (yes|no)
|
# specify whether to check for new events? (yes|no)
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_events=yes
|
check_events="yes"
|
||||||
|
|
||||||
# specify the age interval for which to check events
|
# specify the age interval for which to check events
|
||||||
# (format: X:mm|X:hh|X:dd|X:yy, where X stands for an integer and
|
# (format: X:mm|X:hh|X:dd|X:yy, where X stands for an integer and
|
||||||
@ -32,7 +32,7 @@ events_severity="CRITICAL"
|
|||||||
|
|
||||||
# specify whether to send a test event? (yes|no)
|
# specify whether to send a test event? (yes|no)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
send_test_event=yes
|
send_test_event="yes"
|
||||||
|
|
||||||
# specify wait time for test event (seconds)
|
# specify wait time for test event (seconds)
|
||||||
# [default: 60]
|
# [default: 60]
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
# list of required cluster statuses (format : "parameter=value")
|
# list of required cluster statuses (format : "parameter=value")
|
||||||
|
# Examples:
|
||||||
#status=up
|
#status=up
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
# list of required package statuses (format : "package_name:parameter=value")
|
# list of required package statuses (format : "package_name:parameter=value")
|
||||||
|
# Examples:
|
||||||
#my_package|status=up
|
#my_package|status=up
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,9 +7,10 @@
|
|||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
# client name; maximum amount of warnings allowed; maximum backup age (hours/days/weeks)
|
# client name; maximum amount of warnings allowed; maximum backup age (hours/days/weeks)
|
||||||
testclient1;0;10h
|
# Examples:
|
||||||
testclient2;0;2d
|
#testclient1;0;10h
|
||||||
testclient3;0;5w
|
#testclient2;0;2d
|
||||||
|
#testclient3;0;5w
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -12,7 +12,7 @@ state_file=discovered.file_change
|
|||||||
|
|
||||||
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
# specify if file names need to be checked/flagged for meta characters [yes|no]
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
do_meta_check=yes
|
do_meta_check="yes"
|
||||||
|
|
||||||
# specify files or directories check (directories are automatically expanded)
|
# specify files or directories check (directories are automatically expanded)
|
||||||
# format:
|
# format:
|
||||||
@ -20,9 +20,10 @@ do_meta_check=yes
|
|||||||
# excl:<full path> (excludes a path)
|
# excl:<full path> (excludes a path)
|
||||||
# note: shell wild cards in the file paths are not supported! Exclusions have
|
# note: shell wild cards in the file paths are not supported! Exclusions have
|
||||||
# a higher priority than inclusions.
|
# a higher priority than inclusions.
|
||||||
incl:file1
|
# Examples:
|
||||||
incl:dir1
|
#incl:file1
|
||||||
excl:dir1/file2
|
#incl:dir1
|
||||||
|
#excl:dir1/file2
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -9,15 +9,15 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# specify whether to perform inode usage check
|
# specify whether to perform inode usage check
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_inodes_usage=yes
|
check_inodes_usage="yes"
|
||||||
|
|
||||||
# specify whether to perform space usage check
|
# specify whether to perform space usage check
|
||||||
# [default: yes]
|
# [default: yes]
|
||||||
check_space_usage=yes
|
check_space_usage="yes"
|
||||||
|
|
||||||
# specify the maximum % of inodes usage a filesystem may reach (general threshold)
|
# specify the maximum % of inodes usage a filesystem may reach (general threshold)
|
||||||
# [default: 90]
|
# [default: 90]
|
||||||
@ -31,6 +31,7 @@ max_space_usage=90
|
|||||||
# for a given filesystem, the general threshold will be used (see above). When
|
# for a given filesystem, the general threshold will be used (see above). When
|
||||||
# defining a threshold of 0 (zero), then the check will for this give filesystem
|
# defining a threshold of 0 (zero), then the check will for this give filesystem
|
||||||
# will be skipped (this allows for exclusion of filesystems)
|
# will be skipped (this allows for exclusion of filesystems)
|
||||||
|
# Format:
|
||||||
# [fs:<mount_point>:<max_inode_usage_%>:<max_space_usage_%]
|
# [fs:<mount_point>:<max_inode_usage_%>:<max_space_usage_%]
|
||||||
# Examples:
|
# Examples:
|
||||||
# check myfs1 with a custom inodes + space usage threshold
|
# check myfs1 with a custom inodes + space usage threshold
|
||||||
|
@ -9,15 +9,15 @@
|
|||||||
# specify whether to also log passed health checks
|
# specify whether to also log passed health checks
|
||||||
# (warning: this may rapidly grow the HC log)
|
# (warning: this may rapidly grow the HC log)
|
||||||
# [default: no]
|
# [default: no]
|
||||||
log_healthy=yes
|
log_healthy="yes"
|
||||||
|
|
||||||
# whether to force the use of chronyd?
|
# whether to force the use of chronyd?
|
||||||
# [default: no]
|
# [default: no]
|
||||||
force_chrony=no
|
force_chrony="no"
|
||||||
|
|
||||||
# whether to force the use of ntpd?
|
# whether to force the use of ntpd?
|
||||||
# [default: no]
|
# [default: no]
|
||||||
force_ntp=no
|
force_ntp="no"
|
||||||
|
|
||||||
# maximum allowed offset (in milliseconds (positive integers only)
|
# maximum allowed offset (in milliseconds (positive integers only)
|
||||||
# [default: 500]
|
# [default: 500]
|
||||||
@ -25,7 +25,7 @@ max_offset=500
|
|||||||
|
|
||||||
# use IPv4 for ntpq
|
# use IPv4 for ntpq
|
||||||
# [default: no]
|
# [default: no]
|
||||||
ntpq_use_ipv4=no
|
ntpq_use_ipv4="no"
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -17,7 +17,8 @@ log_healthy="no"
|
|||||||
# user:<user name>;<limit name>;<soft threshold in %>;<hard threshold in %>
|
# user:<user name>;<limit name>;<soft threshold in %>;<hard threshold in %>
|
||||||
# note: <limit name> must exactly match the descriptor in /proc/<PID>/limits
|
# note: <limit name> must exactly match the descriptor in /proc/<PID>/limits
|
||||||
# thresholds are optional (will not be checked when not specified)
|
# thresholds are optional (will not be checked when not specified)
|
||||||
user;postfix;Max open files;;75
|
# Examples:
|
||||||
|
#user;postfix;Max open files;;75
|
||||||
|
|
||||||
# -- process stanzas --
|
# -- process stanzas --
|
||||||
# supported limit checks: Max open files
|
# supported limit checks: Max open files
|
||||||
@ -25,7 +26,8 @@ user;postfix;Max open files;;75
|
|||||||
# process:<process name>;<limit name>;<soft threshold in %>;<hard threshold in %>
|
# process:<process name>;<limit name>;<soft threshold in %>;<hard threshold in %>
|
||||||
# note: <limit name> must exactly match the descriptor in /proc/<PID>/limits
|
# note: <limit name> must exactly match the descriptor in /proc/<PID>/limits
|
||||||
# thresholds are optional (will not be checked when not specified)
|
# thresholds are optional (will not be checked when not specified)
|
||||||
process;nfsd;Max open files;100;80
|
# Examples:
|
||||||
|
#process;nfsd;Max open files;100;80
|
||||||
|
|
||||||
|
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
# list of required cluster statuses (format : "parameter=value")
|
# list of required cluster statuses (format : "parameter=value")
|
||||||
|
# Examples:
|
||||||
#status=up
|
#status=up
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
# list of required package statuses (format : "package_name:parameter=value")
|
# list of required package statuses (format : "package_name:parameter=value")
|
||||||
|
# Examples:
|
||||||
#my_package|status=up
|
#my_package|status=up
|
||||||
|
|
||||||
|
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
# [ctid;runtime_status;boot_status]
|
# [ctid;runtime_status;boot_status]
|
||||||
# runtime_status should be 'running' or 'stopped'
|
# runtime_status should be 'running' or 'stopped'
|
||||||
# boot_status should be 'yes' or 'no'
|
# boot_status should be 'yes' or 'no'
|
||||||
|
# Examples:
|
||||||
#100;running;yes
|
#100;running;yes
|
||||||
|
|
||||||
|
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
# @(#) 2016-06-03: small fix [Patrick Van der Veken]
|
# @(#) 2016-06-03: small fix [Patrick Van der Veken]
|
||||||
# @(#) 2018-10-28: fixed (linter) errors [Patrick Van der Veken]
|
# @(#) 2018-10-28: fixed (linter) errors [Patrick Van der Veken]
|
||||||
# @(#) 2019-01-24: arguments fix [Patrick Van der Veken]
|
# @(#) 2019-01-24: arguments fix [Patrick Van der Veken]
|
||||||
|
# @(#) 2019-01-31: Improve discovery routine + add log_healthy [Patrick Van der Veken]
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# DO NOT CHANGE THIS FILE UNLESS YOU KNOW WHAT YOU ARE DOING!
|
# DO NOT CHANGE THIS FILE UNLESS YOU KNOW WHAT YOU ARE DOING!
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
@ -39,7 +40,9 @@ function check_hpux_ignite_backup
|
|||||||
typeset _CONFIG_FILE="${CONFIG_DIR}/$0.conf"
|
typeset _CONFIG_FILE="${CONFIG_DIR}/$0.conf"
|
||||||
# backup DONE identifier
|
# backup DONE identifier
|
||||||
typeset _IGNITE_NEEDLE="^DONE"
|
typeset _IGNITE_NEEDLE="^DONE"
|
||||||
typeset _VERSION="2019-01-24" # YYYY-MM-DD
|
typeset _IGNITE_SERVER_FILE="/var/opt/ignite/server/ignite.defs"
|
||||||
|
typeset _IGNITE_CLIENTS_DIR="/var/opt/ignite/clients"
|
||||||
|
typeset _VERSION="2019-01-31" # YYYY-MM-DD
|
||||||
typeset _SUPPORTED_PLATFORMS="HP-UX" # uname -s match
|
typeset _SUPPORTED_PLATFORMS="HP-UX" # uname -s match
|
||||||
# ------------------------- CONFIGURATION ends here ---------------------------
|
# ------------------------- CONFIGURATION ends here ---------------------------
|
||||||
|
|
||||||
@ -50,6 +53,8 @@ typeset _ARGS=$(data_comma2space "$*")
|
|||||||
typeset _ARG=""
|
typeset _ARG=""
|
||||||
typeset _MSG=""
|
typeset _MSG=""
|
||||||
typeset _STC=0
|
typeset _STC=0
|
||||||
|
typeset _CFG_HEALTHY=""
|
||||||
|
typeset _LOG_HEALTHY=0
|
||||||
typeset _BACKUP_AGE=0
|
typeset _BACKUP_AGE=0
|
||||||
typeset _EXCLUDE_HOSTS=""
|
typeset _EXCLUDE_HOSTS=""
|
||||||
typeset _IGNITE_HOST=""
|
typeset _IGNITE_HOST=""
|
||||||
@ -89,24 +94,55 @@ esac
|
|||||||
log "backup age to check: ${_BACKUP_AGE} days"
|
log "backup age to check: ${_BACKUP_AGE} days"
|
||||||
_EXCLUDE_HOSTS=$(_CONFIG_FILE="${_CONFIG_FILE}" data_get_lvalue_from_config 'exclude_hosts')
|
_EXCLUDE_HOSTS=$(_CONFIG_FILE="${_CONFIG_FILE}" data_get_lvalue_from_config 'exclude_hosts')
|
||||||
[[ -n "${_EXCLUDE_HOSTS}" ]] && log "excluding hosts: $(print ${_EXCLUDE_HOSTS})"
|
[[ -n "${_EXCLUDE_HOSTS}" ]] && log "excluding hosts: $(print ${_EXCLUDE_HOSTS})"
|
||||||
|
_CFG_HEALTHY=$(_CONFIG_FILE="${_CONFIG_FILE}" data_get_lvalue_from_config 'log_healthy')
|
||||||
|
case "${_CFG_HEALTHY}" in
|
||||||
|
yes|YES|Yes)
|
||||||
|
_LOG_HEALTHY=1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# do not override hc_arg
|
||||||
|
(( _LOG_HEALTHY > 0 )) || _LOG_HEALTHY=0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# log_healthy
|
||||||
|
(( ARG_LOG_HEALTHY > 0 )) && _LOG_HEALTHY=1
|
||||||
|
if (( _LOG_HEALTHY > 0 ))
|
||||||
|
then
|
||||||
|
if (( ARG_LOG > 0 ))
|
||||||
|
then
|
||||||
|
log "logging/showing passed health checks"
|
||||||
|
else
|
||||||
|
log "showing passed health checks (but not logging)"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "not logging/showing passed health checks"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# check if this host is an Ignite-UX server
|
||||||
|
if [[ ! -f ${_IGNITE_SERVER_FILE} ]]
|
||||||
|
then
|
||||||
|
warn "host is not an Ignite-UX server"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
# perform check on Ignite 'client_status' files
|
# perform check on Ignite 'client_status' files
|
||||||
if [[ -d /var/opt/ignite/clients ]]
|
if [[ -d ${_IGNITE_CLIENTS_DIR} ]]
|
||||||
then
|
then
|
||||||
_OLD_PWD="$(pwd)"
|
_OLD_PWD="$(pwd)"
|
||||||
# shellcheck disable=SC2164
|
# shellcheck disable=SC2164
|
||||||
cd /var/opt/ignite/clients
|
cd ${_IGNITE_CLIENTS_DIR}
|
||||||
|
# shellcheck disable=SC2181
|
||||||
if (( $? > 0 ))
|
if (( $? > 0 ))
|
||||||
then
|
then
|
||||||
_MSG="unable to run command: cd /var/opt/ignite/clients"
|
warn "unable to run command: {cd ${_IGNITE_CLIENTS_DIR}}"
|
||||||
log_hc "$0" 1 "${_MSG}"
|
|
||||||
# dump debug info
|
# dump debug info
|
||||||
(( ARG_DEBUG > 0 && ARG_DEBUG_LEVEL > 0 )) && dump_logs
|
(( ARG_DEBUG > 0 && ARG_DEBUG_LEVEL > 0 )) && dump_logs
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# check backup states
|
# check backup states
|
||||||
find * -prune -type l | while read _IGNITE_HOST
|
find -- * -prune -type l 2>/dev/null | while read -r _IGNITE_HOST
|
||||||
do
|
do
|
||||||
# check exclude
|
# check exclude
|
||||||
[[ "${_EXCLUDE_HOSTS#*${_IGNITE_HOST}}" != "${_EXCLUDE_HOSTS}" ]] && continue
|
[[ "${_EXCLUDE_HOSTS#*${_IGNITE_HOST}}" != "${_EXCLUDE_HOSTS}" ]] && continue
|
||||||
@ -146,12 +182,15 @@ then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# handle unit result
|
# handle unit result
|
||||||
log_hc "$0" ${_STC} "${_MSG}"
|
if (( _LOG_HEALTHY > 0 || _STC > 0 ))
|
||||||
_STC=0
|
then
|
||||||
|
log_hc "$0" ${_STC} "${_MSG}"
|
||||||
|
_STC=0
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# check backup ages
|
# check backup ages
|
||||||
find * -prune -type l | while read _IGNITE_HOST
|
find -- * -prune -type l 2>/dev/null | while read -r _IGNITE_HOST
|
||||||
do
|
do
|
||||||
# check exclude
|
# check exclude
|
||||||
[[ "${_EXCLUDE_HOSTS#*${_IGNITE_HOST}}" != "${_EXCLUDE_HOSTS}" ]] && continue
|
[[ "${_EXCLUDE_HOSTS#*${_IGNITE_HOST}}" != "${_EXCLUDE_HOSTS}" ]] && continue
|
||||||
@ -175,23 +214,27 @@ then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# handle unit result
|
# handle unit result
|
||||||
log_hc "$0" ${_STC} "${_MSG}"
|
if (( _LOG_HEALTHY > 0 || _STC > 0 ))
|
||||||
_STC=0
|
then
|
||||||
|
log_hc "$0" ${_STC} "${_MSG}"
|
||||||
|
_STC=0
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# shellcheck disable=SC2164
|
# shellcheck disable=SC2164
|
||||||
cd "${_OLD_PWD}"
|
cd "${_OLD_PWD}"
|
||||||
|
# shellcheck disable=SC2181
|
||||||
if (( $? > 0 ))
|
if (( $? > 0 ))
|
||||||
then
|
then
|
||||||
_MSG="unable to run command: cd /var/opt/ignite/clients"
|
_MSG="unable to run command: {cd ${_IGNITE_CLIENTS_DIR}}"
|
||||||
log_hc "$0" 1 "${_MSG}"
|
log_hc "$0" 1 "${_MSG}"
|
||||||
# dump debug info
|
# dump debug info
|
||||||
(( ARG_DEBUG > 0 && ARG_DEBUG_LEVEL > 0 )) && dump_logs
|
(( ARG_DEBUG > 0 && ARG_DEBUG_LEVEL > 0 )) && dump_logs
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
_MSG="Host is not an Ignite/UX server"
|
warn "could not access/find the Ignite-UX's clients directory at ${_IGNITE_CLIENTS_DIR}"
|
||||||
log_hc "$0" ${_STC} "${_MSG}"
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
@ -208,6 +251,7 @@ CONFIG : $3 with:
|
|||||||
PURPOSE : Checks the state and age of saved Ignite-UX client backups (should only be
|
PURPOSE : Checks the state and age of saved Ignite-UX client backups (should only be
|
||||||
run only on the Ignite-UX server). Backups with warnings are considered
|
run only on the Ignite-UX server). Backups with warnings are considered
|
||||||
to OK. Backups older than \$backup_age will not pass the health check.
|
to OK. Backups older than \$backup_age will not pass the health check.
|
||||||
|
LOG HEALTHY : Supported
|
||||||
|
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user