Ad Widget

Collapse

Trigger with count and regular expression not working

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • mwildam
    Member
    • Feb 2021
    • 72

    #1

    Trigger with count and regular expression not working

    Hi folks, I have a trigger like this:
    Code:
    {DB:db.checkprocesses["{$DBNAME}","{$DBAGENTPROCESSES}","{$DBUSER}"].count(#30,"CRIT.*")}>=1
    where the db.checkprocesses is UserParameter running a shell script returning a text that may start with OK, WARN or CRIT (it's a script I have taken from an older Nagios configuration).
    As in this case the dingy process I am checking (parameter $DBAGENTPROCESSES passed to the item) is often absent for a while but then returning, I only want to fire an event, if the script returns CRIT for a longer period of time or for the last n data requests. When I test this trigger it does not fire at all (re-load of configuration cache done several times), although I have at least 3 CRIT messages there in the history within the last 30 values.
    So I really have no clue why that is not firing. Any ideas? Here is my data:
    Code:
    2021-05-10 12:44:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:39:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:35:33 CRIT - 1 db2 processes (db2agntdp) for database not running
    2021-05-10 12:34:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:29:14 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:24:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:19:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:14:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:09:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 12:04:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:59:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:54:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:49:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:44:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:39:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:34:14 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:29:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:24:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:19:15 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:14:38 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:14:14 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:08:05 OK - all required processes (db2agntdp) for database running
    2021-05-10 11:03:03 OK - all required processes (db2agntdp) for database running
    2021-05-10 10:58:00 CRIT - 1 db2 processes (db2agntdp) for database not running
    2021-05-10 10:52:59 CRIT - 1 db2 processes (db2agntdp) for database not running
    2021-05-10 10:47:56 OK - all required processes (db2agntdp) for database running
    2021-05-10 10:42:54 OK - all required processes (db2agntdp) for database running
    2021-05-10 10:37:52 OK - all required processes (db2agntdp) for database running
    2021-05-10 10:32:51 OK - all required processes (db2agntdp) for database running
    2021-05-10 10:27:49 OK - all required processes (db2agntdp) for database running
  • mwildam
    Member
    • Feb 2021
    • 72

    #2
    OK, I found the problem myself - I was missing the "regex" in the operator:

    Code:
    {DB:db.checkprocesses["{$DBNAME}","{$DBAGENTPROCESSES}","{$DBUSER}"].count(#30,"CRIT.*",regex)}>=1

    Comment

    Working...