Werk #13732: mk_oracle on AIX, Solaris and UNIX: Solve sync. vs. async sections on hosts with systemd

Component Checks & agents
Title mk_oracle on AIX, Solaris and UNIX: Solve sync. vs. async sections on hosts with systemd
Date Aug 4, 2022
Checkmk Editon Checkmk Raw (CRE)
Checkmk Version 2.2.0i1 2.1.0p13 2.0.0p29
Level Trivial Change
Class Bug Fix
Compatibility Incompatible - Manual interaction might be required

The agent plugin {{mk_oracle}} implements its own caching functionality because of long running SQL statements (and custom SQLs with own cache interalls). But the execution of synchronous and asynchronous SQls does not work properly with systemd anymore if the plugin is installed to {{../check_mk_agent/plugins/}} because the {{check-mk-agent-sync.service}} would wait for all child processes and may take too long.

In order to solve this situation on hosts with systemd the {{mk_oracle}} must be installed to {{../check_mk_agent/plugins/NUMBER}} and is now triggered by the {{check-mk-agent-async.service}} (which runs permanently, every minute).

Details:

  • The plugin is now able to detect the installation folder
  • On distros without systemd you can keep the plugin below {{../check_mk_agent/plugins/}}
  • On distros with systemd you have to install the plugin to {{../check_mk_agent/plugins/NUMBER/}}
  • The recommended NUMBER for this folder is 60

If the {{mk_oracle}} is installed to {{../check_mk_agent/plugins/NUMBER}} the result (which consists of the sync. and async. SQLs) is saved into the Checkmk agent's spool directory

The limit of this spoolfile is three times the NUMBER (interval).

If the plugin is executed with any CL option, then the output is shown on {{stdout}} as before.

To the list of all Werks