From 08e8945609120dffdd6ac285b6fc20f85ff751e5 Mon Sep 17 00:00:00 2001 From: "th.l" <thl-cmk@outlook.com> Date: Sun, 9 Mar 2025 18:58:41 +0100 Subject: [PATCH] prefer curl/wget over squidclient see: https://bugs.squid-cache.org/show_bug.cgi?id=5283#c10 added option to decide if the plugin should be installed --- README.md | 2 +- mkp/squid-2.1.2-20250309.mkp | Bin 0 -> 6025 bytes source/agents/plugins/squid | 20 ++++++++++++++++-- .../gui/wato/check_parameters/squid_bakery.py | 20 +++++++++++++++--- .../cmk/base/cee/plugins/bakery/squid.py | 3 +++ source/packages/squid | 2 +- 6 files changed, 40 insertions(+), 7 deletions(-) create mode 100644 mkp/squid-2.1.2-20250309.mkp diff --git a/README.md b/README.md index a8f5fc9..1059af1 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[PACKAGE]: ../../raw/master/mkp/squid-2.1.1-20240514.mkp "squid-2.1.1-20240514.mkp" +[PACKAGE]: ../../raw/master/mkp/squid-2.1.2-20250309.mkp "squid-2.1.2-20250309.mkp" # Squid Web Proxy This CheckMK plugin monitors the performance of the _**Squid Web Proxy**_. This plugin is intended to use with the Agent Bakery of CheckMK. diff --git a/mkp/squid-2.1.2-20250309.mkp b/mkp/squid-2.1.2-20250309.mkp new file mode 100644 index 0000000000000000000000000000000000000000..29ca326adf5c594d6888fd9c6f8f9b806ccfc820 GIT binary patch literal 6025 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 literal 0 HcmV?d00001 diff --git a/source/agents/plugins/squid b/source/agents/plugins/squid index a3fb775..2f85c6e 100755 --- a/source/agents/plugins/squid +++ b/source/agents/plugins/squid @@ -10,6 +10,8 @@ # changed section from check_squid to squid # 2023-05-22: fixed missing "<" in section name # 2023-12-02: added -l "$ip_address" option +# 2025-03-09: changed to prefer curl/wget over squidclient ThX to mk-hs@forum.checkm.com +# (see: https://bugs.squid-cache.org/show_bug.cgi?id=5283#c10) # # squidclient mgr:server_list # squidclient mgr:info @@ -38,13 +40,27 @@ if [ -z "$ip_address" ]; then ip_address=localhost fi -if type squidclient > /dev/null 2>&1 ; then +if type wget > /dev/null 2>&1 ; then + echo "<<<squid_file_descriptors:sep(0)>>>" + wget -q -O - http://"$ip_address":"$port"/squid-internal-mgr/info | grep "file descriptors" + + echo "<<<squid:sep(0)>>>" + wget -q -O - http://"$ip_address":"$port"/squid-internal-mgr/5min | grep "=" + +elif type curl > /dev/null 2>&1 ; then + echo "<<<squid_file_descriptors:sep(0)>>>" + curl http://"$ip_address":"$port"/squid-internal-mgr/info | grep "file descriptors" + + echo "<<<squid:sep(0)>>>" + curl http://"$ip_address":"$port"/squid-internal-mgr/5min | grep "=" + +elif type squidclient > /dev/null 2>&1 ; then echo "<<<squid_file_descriptors:sep(0)>>>" squidclient -p "$port" -l "$ip_address" -T2 mgr:info | grep "file descriptors" echo "<<<squid:sep(0)>>>" # one squid instance - squidclient -p "$port" -l "$ip_address" -T2 mgr:5min | grep = + squidclient -p "$port" -l "$ip_address" -T2 mgr:5min | grep "=" # multiple squid instances # instance names must be without spaces and with colon char at the end diff --git a/source/gui/wato/check_parameters/squid_bakery.py b/source/gui/wato/check_parameters/squid_bakery.py index a028355..232faff 100644 --- a/source/gui/wato/check_parameters/squid_bakery.py +++ b/source/gui/wato/check_parameters/squid_bakery.py @@ -20,21 +20,26 @@ # add available_number_of_file_descriptors for check section # 2024-05-14: moved to check_parameters # separated WATO for bakery and check in two files +# 2025-03-08: added option to decide if the plugin should be installed from cmk.gui.i18n import _ from cmk.gui.valuespec import ( Dictionary, Integer, TextInput, + DropdownChoice, ) from cmk.gui.plugins.wato.utils import ( HostRulespec, rulespec_registry, ) -from cmk.gui.cee.plugins.wato.agent_bakery.rulespecs.utils import ( - RulespecGroupMonitoringAgentsAgentPlugins, -) +try: + from cmk.gui.cee.plugins.wato.agent_bakery.rulespecs.utils import ( + RulespecGroupMonitoringAgentsAgentPlugins, + ) +except ImportError: + exit() def _valuespec_agent_squid(): @@ -42,6 +47,15 @@ def _valuespec_agent_squid(): help=_('The plugin <tt>squid</tt> allows monitoring of Squid Web Proxies.'), title=_('Squid Web Proxy (Linux)'), elements=[ + ('install_plugin', + DropdownChoice( + title=_('Install the plugin'), + choices=[ + ('true', _('Install the plugin')), + ('false', _('Don\'t install the plugin')) + ], + default='true', + )), ('ip_address', TextInput( title=_('IP Address/Hostname'), diff --git a/source/lib/python3/cmk/base/cee/plugins/bakery/squid.py b/source/lib/python3/cmk/base/cee/plugins/bakery/squid.py index 05189f7..3b285e9 100644 --- a/source/lib/python3/cmk/base/cee/plugins/bakery/squid.py +++ b/source/lib/python3/cmk/base/cee/plugins/bakery/squid.py @@ -17,6 +17,7 @@ # 2023-09-21: moved file to ~/local/lib/check_mk/base/cee/plugins/bakery # fix crash if port not configured in wato # 2023-12-02: added IP-Address option +# 2025-03-08: added option to decide if the plugin should be installed from pathlib import Path from cmk.base.cee.plugins.bakery.bakery_api.v1 import ( @@ -29,6 +30,8 @@ from cmk.base.cee.plugins.bakery.bakery_api.v1 import ( def get_squid_files(conf) -> FileGenerator: + if conf.get('install_plugin') == 'false': + return yield Plugin( base_os=OS.LINUX, source=Path('squid'), diff --git a/source/packages/squid b/source/packages/squid index 9d4835c..508805b 100644 --- a/source/packages/squid +++ b/source/packages/squid @@ -15,7 +15,7 @@ 'lib': ['python3/cmk/base/cee/plugins/bakery/squid.py']}, 'name': 'squid', 'title': 'Squid3 Health Check', - 'version': '2.1.1-20240514', + 'version': '2.1.2-20250309', 'version.min_required': '2.1.0b1', 'version.packaged': 'cmk-mkp-tool 0.2.0', 'version.usable_until': '2.4.0b1'} -- GitLab