Skip to content
Snippets Groups Projects
Commit d5405859 authored by Hahn Axel (hahn)'s avatar Hahn Axel (hahn)
Browse files

mysql: check if query cache is enabled as a shared function

parent f85d7ccb
No related branches found
No related tags found
No related merge requests found
...@@ -12,13 +12,19 @@ ...@@ -12,13 +12,19 @@
# - execute check_mysqlserver -i # - execute check_mysqlserver -i
# #
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
#
# for mysql query cache:
# https://www.techpaste.com/2013/01/query-cache-mysql-server/
#
# ----------------------------------------------------------------------
# 2020-08-xx v0.0 <axel.hahn@iml.unibe.ch> # 2020-08-xx v0.0 <axel.hahn@iml.unibe.ch>
# 2021-06-08 v0.0 <axel.hahn@iml.unibe.ch> update HOME .. better implement a param and ENV var # 2021-06-08 v0.1 <axel.hahn@iml.unibe.ch> update HOME .. better implement a param and ENV var
# 2021-06-24 v0.2 <axel.hahn@iml.unibe.ch> check if query cache is enabled as a shared function
# ====================================================================== # ======================================================================
. `dirname $0`/inc_pluginfunctions . `dirname $0`/inc_pluginfunctions
_version="0.1" _version="0.2"
# --- set HOME # --- set HOME
# HOME=/etc/icinga2-passive-client # HOME=/etc/icinga2-passive-client
...@@ -98,6 +104,7 @@ EOF ...@@ -98,6 +104,7 @@ EOF
fi fi
} }
# show usage
function _usage(){ function _usage(){
cat <<EOH cat <<EOH
______________________________________________________________________ ______________________________________________________________________
...@@ -178,6 +185,13 @@ function _mysqlrenderdelta() { ...@@ -178,6 +185,13 @@ function _mysqlrenderdelta() {
test -z $deltaUnit && deltaUnit="sec" test -z $deltaUnit && deltaUnit="sec"
_mysqlrendervar "$1" "$2" $deltaUnit $4 _mysqlrendervar "$1" "$2" $deltaUnit $4
} }
# helper function for caching checks
# The function aborts the check
function _verify_cache(){
_mysqlgetvar "have_query_cache" | grep "YES" >/dev/null || ph.abort "Query cache (have_query_cache) is not active"
_mysqlgetvar "query_cache_type" | grep "OFF" >/dev/null && ph.abort "Query cache (have_query_cache) is active but query_cache_type is OFF"
}
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# MAIN # MAIN
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
...@@ -286,14 +300,14 @@ case "${sMode}" in ...@@ -286,14 +300,14 @@ case "${sMode}" in
"qcache-blocks") "qcache-blocks")
descr="query cache blocks" descr="query cache blocks"
_mysqlgetvar "have_query_cache" | grep "YES" >/dev/null || ph.abort "Query cache is not active" _verify_cache
_mysqlrendervar Qcache_total_blocks "Qcache_" _mysqlrendervar Qcache_total_blocks "Qcache_"
_mysqlrendervar Qcache_free_blocks "Qcache_" _mysqlrendervar Qcache_free_blocks "Qcache_"
;; ;;
"qcache-queries") "qcache-queries")
descr="query cache data" descr="query cache data"
_mysqlgetvar "have_query_cache" | grep "YES" >/dev/null || ph.abort "Query cache is not active" _verify_cache
_mysqlrendervar Qcache_queries_in_cache "Qcache_" _mysqlrendervar Qcache_queries_in_cache "Qcache_"
_mysqlrenderdelta Qcache_not_cached "Qcache_" min float _mysqlrenderdelta Qcache_not_cached "Qcache_" min float
_mysqlrenderdelta Qcache_lowmem_prunes "Qcache_" min float _mysqlrenderdelta Qcache_lowmem_prunes "Qcache_" min float
...@@ -301,7 +315,7 @@ case "${sMode}" in ...@@ -301,7 +315,7 @@ case "${sMode}" in
"qcache-hits") "qcache-hits")
descr="query cache hits" descr="query cache hits"
_mysqlgetvar "have_query_cache" | grep "YES" >/dev/null || ph.abort "Query cache is not active" _verify_cache
_mysqlrenderdelta Qcache_hits "Qcache_" min _mysqlrenderdelta Qcache_hits "Qcache_" min
_mysqlrenderdelta Qcache_inserts "Qcache_" min _mysqlrenderdelta Qcache_inserts "Qcache_" min
_mysqlrenderdelta Qcache_not_cached "Qcache_" min _mysqlrenderdelta Qcache_not_cached "Qcache_" min
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment