Jag stötte på ett problem med att postfix av någon anledning hade hängt sig på en av våra hostingservrar, det resulterade i att en massa mail inte gick iväg(typ 500st låg i kön), detta drabbade alla siter som ligger hostade på den maskinen, så det är viktigt att det inte händer igen. Som tur var så räckte det med att starta om postfix för att få mailen att flöda igen.
Vi övervakar våra siter och maskiner med icinga som är en fork av nagios, det gör att man lika gärna kan använda nagiosplugins till icinga.
Pluginpaketet “Nagiosplugins” (http://nagiosplugins.org/) innehåller ett script för check av mailq som standard, vilket jag såklart använde!
Jag skapade ett nytt ‘command’ i min commands.cfg:
define command{
command_name check_mailq
command_line $USER1$/check_mailq -w $ARG1$ -c $ARG2$
}
Där -w är gränsen för Warning och -c är gränsen för critical $ARG1$ och $ARG2$ är placeholders för argument som specificeras när kommandot anropas. För att kunna använda mitt kommando så la jag in det direkt på hosten, eftersom det bara är den maskinen jag vill köra den kontrollen på.
define service{
host_name localhost
service_description Check Mailq
check_command check_mailq!10!20
}
Som ni ser så anger jag 10 mail i kö som warning gränsen och 20 mail i kö som critical, om det är så att det blir för många falsklarm så får jag justera det senare. Så här ser det sedan ut i Icinga WebUI:
![]()