check_mk plugin für iRedAdmin

Man kann in iRedAdmin auf der Startseite eine Übersicht der konfigurieren Domains einsehen. Um eine Entwicklung über einen längeren Zeitraum zu dokumentieren habe ich folgende Plugin für check_mk geschrieben.

iredadmin-check_mk

Die Konfiguration in WATO überspringe ich gleich und paste den reinen Code.
Ermittelt werden die Daten aus der MySQL bzw. MariaDB. Bei einer LDAP Installation von iredMail können diese also nicht genutzt werden. Es wird auch davon ausgegangen, dass eine .my.cnf im root Verzeichnis für den Datenbankzugriff existiert.

iredmail-Domainaliases

#!/bin/bash

WARN=100
CRIT=110

domainalias=$(mysql --defaults-extra-file=/root/.my.cnf -e "use vmail; select count(alias_domain) from alias_domain" -s 2>&1)

    if [ $domainalias -lt $WARN ] ; then
        status=0
        statustxt=OK
    elif [ $domainalias -lt $CRIT ] ; then
        status=1
        statustxt=WARNING
    else
        status=2
        statustxt=CRITICAL
    fi

echo "$status iRed-Domainaliases count=$domainalias;$WARN;$CRIT;0; $statustxt - $domainalias Domainaliases"

iredmail-Domains

#!/bin/bash

WARN=1000
CRIT=1100

domains=$(mysql --defaults-extra-file=/root/.my.cnf -e "use vmail; select count(domain) from domain" -s 2>&1)

    if [ $domains -lt $WARN ] ; then
        status=0
        statustxt=OK
    elif [ $domains -lt $CRIT ] ; then
        status=1
        statustxt=WARNING
    else
        status=2
        statustxt=CRITICAL
    fi


echo "$status iRed-Domains count=$domains;$WARN;$CRIT;0; $statustxt - $domains Domains"

iredmail-Mailaliases

#!/bin/bash

WARN=1000
CRIT=1100

mailalias=$(mysql --defaults-extra-file=/root/.my.cnf -e "use vmail; select count(address) from alias;" -s 2>&1)

    if [ $mailalias -lt $WARN ] ; then
        status=0
        statustxt=OK
    elif [ $mailalias -lt $CRIT ] ; then
        status=1
        statustxt=WARNING
    else
        status=2
        statustxt=CRITICAL
    fi


echo "$status iRed-Mailaliases count=$mailalias;$WARN;$CRIT;0; $statustxt - $mailalias Mailaliases"

iredmail-Mailboxes

#!/bin/bash

WARN=1000
CRIT=2100

mailboxes=$(mysql --defaults-extra-file=/root/.my.cnf -e "use vmail; select count(username) from mailbox" -s 2>&1)

    if [ $mailboxes -lt $WARN ] ; then
        status=0
        statustxt=OK
    elif [ $mailboxes -lt $CRIT ] ; then
        status=1
        statustxt=WARNING
    else
        status=2
        statustxt=CRITICAL
    fi

echo "$status iRed-Mailboxes count=$mailboxes;$WARN;$CRIT;0; $statustxt - $mailboxes Mailboxes"

iredadmin-main

Tags:, ,