Nagios/Icinga plugin to check Joomla Update status (passive check)
Wenn man Software von Hand und nicht aus den Repositories installiert, muss man sich auch von Hand um die Updates kuemmern. Da ich kein Plugin gefunden habe, dass mir den Joomla Update Status ueberprueft und in Nagios anzeigt, habe ich fix eines selber geschrieben. Es muss als passive Check aufgerufen werden, da es mit einer lokalen Datei auf dem Server ueberprueft, welche Version installiert ist. Das Plugin hat bei den Updates auf 2.5.7 und 2.5.8 verlaesslich angezeigt das ein Update existiert. Extensions sind nicht mit inbegriffen!
<?php /*** * Simple and dirty php script to check if the local joomla version * is up to date. This script only works on the server, were Joomla * is installed. If Nagios is not running on the same server, you * possibly need to run it via NSCA or similar systems. * * @version: 0.1 * * @author: jan.toenjes@intranda.com * * @changelog: initial version * ***/ /*** * CONFIGURATION * * localVersionFile: set the full path to the version.php file from your Joomla installation * remoteVersionUrl: set the link to the list.xml file from the Joomla core update server ***/ $localVersionFile = "/var/www/joomla/libraries/cms/version/version.php"; $remoteVersionUrl = "http://update.joomla.org/core/list.xml"; // get local Joomla Version define('_JEXEC', 1); require "$localVersionFile"; $jversion = new JVersion; $localJoomlaVersion = $jversion->getShortVersion(); // get remote Joomla Version $xml = simplexml_load_file($remoteVersionUrl); $remoteJoomlaVersion = $xml->extension['version']; // compare and return info if ($localJoomlaVersion < $remoteJoomlaVersion) { echo "A new version is available: $remoteJoomlaVersion"; exit (2); } else { echo "Your current Version $localJoomlaVersion is up to date"; } ?> |
Nagios: check Piwik Update Status
Wenn man Software nicht aus den Repositories einer Distribution, sondern von Hand installiert, muss man immer im Blick haben, ob fuer die Software nicht ein Update zur Verfuegung steht
Um sich dieses fuer Piwik zu vereinfachen habe ich dafuer ein sehr simples Nagios Plugin, check_piwik.sh, geschrieben:
#!/bin/bash ##### # # Simple Skript that checks if Piwik version from given URL is up to date # # Usage: ./check_piwik.php http://example.net/piwik/ MYTOKEN # ##### ## check if two parameters are given if [ "$#" -lt "2" ]; then echo -e "ERROR: You need to give two parameter, first option is URL and second option Token . Aborting." >&2 exit 1; fi PIWIKURL="$1" TOKEN="$2" ## check if needed programs are installed type -P curl &> /dev/null || { echo "ERROR: curl is required but seems not to be installed. Aborting." >&2 exit 1; } type -P sed &> /dev/null || { echo "ERROR: sed is required but seems not to be installed. Aborting." >&2 exit 1; } ## get latest piwik version from piwik api LATESTVERSION=$(curl -s http://api.piwik.org/1.0/getLatestVersion/) ## get piwik version from given url LOCALURL="$PIWIKURL/index.php?module=API&method=API.getPiwikVersion&format=xml&token_auth=$TOKEN" LOCALVERSION=$(curl -s $LOCALURL | sed -n -e 's/.*<result>\(.*\)<\/result>.*/\1/p') ## compare both strings if [ "$LATESTVERSION" != "$LOCALVERSION" ]; then echo "A new version is available: $LOCALVERSION -> $LATESTVERSION" exit 2 else echo "Your current version $LOCALVERSION is up to date" fi |
Es erwartet zwei Parameter, eine URL zu dem Piwik das ueberprueft werden soll, und den API Token fuer diese Installation. Dementsprechend muss in der command.cfg der Check wie folgt definiert werden:
define command {
command_name check_piwik
command_line $USER1$/check_piwik.sh $ARG1$ $ARG2$
} |
Der Check selbst wird dann wie folgt in die entsprechende Konfigurationsdatei eingetragen:
define service {
use my-service
host_name example.net
service_description Piwik
check_command check_piwik!http://example.net/piwik!abcdefghijklmnopqrstuvwxyz123
} |
Fertig eingerichtet bekommt man dann von seinem Nagios Auskunft ueber den Updatestatus der entsprechenden Installation:
![]()
![]()
Ubuntu: Update Sun-Java inkl. Firefox Plugin
- Auf der folgenden Seite die selbstextrahierende Datei fuer 32 oder 64bit herunterladen: Klick
- Terminal oeffnen und los:
user@desktop:~$ sudo su root@desktop:~$ cd /usr/lib/jvm/ root@desktop:~$ mv java-6-sun java-6-sun-old root@desktop:~$ chmod +x jre-6u30-linux-i586.bin root@desktop:~$ ./jre-6u30-linux-i586.bin root@desktop:~$ rm jre-6u30-linux-i586.bin root@desktop:~$ mv jre1.6.0_30/ java-6-sun-1.6.0.30 root@desktop:~$ ln -sf java-6-sun-1.6.0.30/ java-6-sun root@desktop:~$ ln -s /usr/lib/jvm/java-6-sun/lib/i386/libnpjp2.so /etc/alternatives/mozilla-javaplugin.so root@desktop:~$ ln -sf /etc/alternatives/mozilla-javaplugin.so /usr/lib/mozilla/plugins/libjavaplugin.so |
- Terminal schliessen, Firefox neustarten und dann kann man mit about:plugins sehen, dass alles so is wie es sein soll
Netgear ReadyNAS 2100 & NVX – Nagios [UPDATE2]
New version of the plugin. Quite some fixes and changes. Thanks to Peter Glas for contacting me and walking through the issues. You can find the updated version of the script here: check_readynas
