Beschreibung

Das Plugin check_mailbox_health ermöglicht die Abfrage von Mailservern (IMAP), das Auslesen und Zählen von Mails, das Filtern nach bestimmten Kriterien, sowie die Analyse von Mailinhalten und -attachments.

Motivation

Häufig findet die Kommunikation zwischen Firmen, zwischen Lieferant und Einkauf, zwischen Zulieferern und Werken per automatisiertem Email-Verkehr statt. Das Eintreffen von Mails zu einem erwarteten Zeitpunkt und die Art der Mail zu monitoren war die Anforderung, die zur Entstehung dieses Plugins führte.

Dokumentation

Kommandozeilenparameter

  • –hostname <hostname> Der Hostname bzw. die IP-Adresse des Mail-Servers.
  • –port <port> Die Portnummer, falls sie vom Standard abweicht.
  • –username <username> Der Mailbox-User.
  • –password <password> Dessen Passwort.
  • –folder <nr> Ein bestimmtes Postfach (default: INBOX)
  • –ssl Kommunikation mit dem Mailserver findet verschlüsselt statt.
  • –protocol <mail-protocol> Das verwendete Protokoll. (Derzeit nur IMAP)
  • –mode <modus> Mit dem mode-Parameter teilt man dem Plugin mit, was es tun soll. Siehe Liste der möglichen Werte weiter unten.
  • –select <Regel> Hier kann man einschränken, welche Art von Mails überhaupt betrachtet werden.
  • –name <objektname> Dient der genaueren Eingrenzung.
  • –name2 <objektname> Dito, zur genaueren Eingrenzung.
  • –name3 <objektname> Dito, zur genaueren Eingrenzung.
  • –regexp Ein Flag welches angibt, ob –name[2,3] als regulärer Ausdruck zu interpretieren ist.

Modi

Schlüsselwort Bedeutung Schwellwerte
connection-time Misst, wie lange Verbindungsaufbau und Login dauern 0..n Sekunden (Default: 1, 5)
mail-age Alarmiert, wenn Mails älter als n Minuten sind  
count-mails Zählt die Mails (die ggf. bestimmten Kriterien genügen)  
list-mails Listet die Mails auf (die ggf. bestimmten Kriterien genügen)  

Selektoren

Mit dem Parameter –select <selektor> schränkt man die Auswahl der Mails ein.

Selektor Bedeutung
subject Das Subject entspricht dem Parameter –name
content Der Parameter –name kommt im Mailtext vor
newer_than Die Mail ist neuer als Date::Manip-Ausdruck
older_than Die Mail ist älter als Date::Manip-Ausdruck
has_attachments Die Mail hat Attachments
attachments Die Mail hat Attachments, deren Mime-Typ dem Parameter –name entspricht

Das Argument des Parameters –name kann auch ein regulärer Ausdruck sein, in dem Fall ist noch –regexp anzugeben.

Installation

tar zxf g...tar.gz; cd check_mailbox_health...; ./configure; make
cp plugins-scripts/g sonstwohin

Beispiele

$ check_mailbox_health --mode connection-time \
    --username lausser --password greizweis \
    --warning 10 --critical 20
OK - 0.00 seconds to connect as lausser | 'connection_time'=0;10;20;;

$ check_mailbox_health --mode count-mails \
    --username lausser --password greizweis \
    --warning 1000 --critical 2000 
CRITICAL - 12463432 mails in mailbox | 'mails'=12463432;1000;2000;;

Download

check_mailbox_health-1.7.1.tar.gz

Changelog

  • 2016-11-28 1.7.1
    fix utf-encoded subjects
  • 2016-08-10 1.7
    delegate some selects to the imap-server
    add a greenmail simulator for tests
  • 2016-08-02 1.6.0.2
    update GLPlugin & bugfix in list-mails
  • 2016-06-03 1.6.0.1
    update GLPlugin
  • 2016-05-14 1.6
    add selectors “seen” and “is_bigger”
  • 2016-02-29 1.5
    update version, changelog, glplugin
  • 2016-02-09 1.4
    add glplugin submodule
  • 2015-07-13 1.3
    new directory layout, standalone
  • 2015-06-02 1.2
    add morph-message
    add date:manip strings for older_than newer_than
  • 2015-06-01 1.1
    start with –disable-standalone
  • 2015-05-30 1.0
    init

Gerhard Laußer
Check_mailbox_health wird unter der GNU General Public License zur Verfügung gestellt.

Autor

Gerhard Laußer (gerhard.lausser@consol.de) beantwortet gerne Fragen zu diesem Plugin.
Nein, das ist gelogen. Er verkauft gern Consulting.