Door: Michiel Verhoef.Categorie: Extensies.

Monitoren van 'veel' Joomla sites met JMonitoring

jmonitoringStel, je hebt in de loop van jaren een groot aantal Joomla sites gebouwd. Door de historie en de verschillende randvoorwaarden zijn deze websites verspreid geraakt over een groot aantal servers. Bovendien zijn sommige gebruikers van de websites bij vlagen erg enthousiast in het installeren van diverse extensies. Soms krijg je opeens een belletje: "Ik wilde gisteravond even mijn nieuwe aanbieding op mijn Joomla zetten en nu is ie stuk. Ben ik gehackt?"

Het plaatje is wel duidelijk denk ik, je bent het overzicht eigenlijk al langere tijd kwijt en wil daar verandering in brengen. Maar ja, hoe doe je dat?
Op dit punt beland, hoor je van JMonitoring extensies van www.inetis.ch.  

Voorjaar 2011 gaf Pierre-André Vullioud van Inetis een presentatie op de JandBeyond conferentie. De toenmalige oplossing was alleen voor Joomla 1.5 beschikbaar en maakte gebruik van de XML-RPC library. Het werkte wel, maar de toen nog nieuwe Joomla 1.6 kon je er niet mee benaderen. Gelukkig is Inetis verder gegaan met de ontwikkeling.

De nieuwe JMonitoring V2 bestaat uit twee hoofdonderdelen: de Master en de Distant, welke in de componenten lijst overigens 'slave' wordt genoemd.

De Master is beschikbaar voor Joomla1.6+, de Distant voor Joomla 1.5+. De oude techniek via de XML-RPC library is verlaten. Bij de oude 1.3 versie werd er geconnect door de master door remote in te loggen in de slave. Nu vindt de connectie plaats via een zogenaamd 'secret word' van de te monitoren website. Dit 'secret word' komt overeen met het 'secret word' dat je kunt vinden in de configuration.php, welke gegenereerd wordt tijdens het installeren van de Joomla website.

Installatie

Om te beginnen heb je dus een Joomla 1.6+ site nodig om de Master te installeren. Niets staat je in de weg om de Distant allereerst ook op je Master site te installeren. Let dus op bij de Distant dat je voor Joomla 1.5 een andere Distant nodig hebt. Vervolgens ga je in de Component lijst naar de slave-component en kopieert de JMonitoring secret key.

slave

Vervolgens ga je naar de jmonitoring-master Manager om een nieuwe site toe te voegen. Je kunt te monitoren site groeperen in categorieën, je kiest een naam voor de te monitoren site, typt de URL in en je paste de secret key (die nu secret word heet). Wat naamgeving en consequent taalgebruik is er nog wel wat verbetering mogelijk.

new_slave

Vervolgens ga je naar de master Manager:

manager

Hier kun je kiezen welke site al dan niet gemonitord (gepubliceerd!) moeten worden, nieuwe sites toevoegen, oude verwijderen, enz. Tevens kun je vanuit de lijst met sites zowel naar de Frontend als Backend klikken, krijg je de Joomla versie te zien, 
Er is de mogelijkheid te exporteren naar CSV, er is logging, enz.

Echt leuk wordt het als je op een site in de linker kolom klikt:

details

In de linker kolom zie je eigenschappen van de hosting omgeving van de specifieke site. In de rechter kolom worden de extensies van deze site getoond, componenten, modules en plugins, met de respectievelijke versienummers. Rechtsonder staan de JMonitoring plugins. Er zijn (momenteel) drie plugins waarvan ik er twee interessant vind, beide voor de slave: eentje die checkt of er nieuwe gebruikers zijn toegevoegd en eentje die checkt of er artikelen zijn gewijzigd of toegevoegd.

Praktijk

Alles is geïnstalleerd en geconfigureerd, werkt alles nu vanzelf?

Nee, er moet nog iets gebeuren. De Jmonitoring Master maakt een moment-opname van de slave op het moment dat daartoe een opdracht wordt gegeven. Helaas is het niet mogelijk om vanuit de backend te schedulen wanneer en hoe vaak dat moet gebeuren. Wel kun je handmatig vanuit de backend een éénmalig verzoek doen.

Methode twee is het aanroepen in je browser van een specifieke URL naar de master. Dit komt een beetje raar over, omdat er in het geheel geen frontend is. Je vraagt dus om een website waar je vervolgens niet naar gaat kijken. Maar de monitoring wordt wel gestart, en daar gaat het je toch om?

Methode drie is het aanroepen van dezelfde URL uit methode twee in een scheduler. Na elke aanroep kun je een mailtje met verslag ontvangen. 

Hoewel er heel veel meer te wensen is, zoals meer getailleerde informatie, rapportjes, grafieken, enz. vind ik de basale werking an sich prima. Verwacht echter niet dat de getoonde info er mooi uit ziet. Ook is het een mengseltje van Engels en Frans. Een Nederlandse versie is in beta.

Tenslotte...

Eén van de dingen die opvallen bij het gebruik van JMonitoring zijn de banners van OpenSource SupportDesk. Op dit moment is JMonitoring gratis. Het is evenwel niet mogelijk om tegen betaling te mogen 'branden' met je eigen banner. Dat zullen veel gebruikers wel willen uiteraard, omdat de banner ook bij de slave getoond wordt. En je wil natuurlijk dat je klanten jou bellen in plaats van een vreemde.