MOGIMon connects to the OpenGroupware database and periodically reads from the audit table ("log"). Since the connection is persistant and the log table is indexed this creates only and extremely small additional load on the OpenGroupware database server. The log id of the last processed entry is saved in a record keeping (SQLite) database so if you kill off MOGIMon it will resume later where it left off and play
Within the MOGIMon assembly is an interface called "IPusher". Do add a
plugin to MOGIMon you simply create an object that implements this interface - only FIVE methods - place it in the MOGIMon pusher directory and restart MOGIMon. The new pusher will automatically be detected and invoked every time there is a change; if there are changes your particular pusher isn't interested in then simply ignore them when you develop the pusher.
You can build a simple MOGIMon "Pusher" easily - mcs Hedera.cs -r:System.Data -r:/usr/local/lib/Whitemice.MOGI.dll -r:/var/lib/MOGIMon/Whitemice.MOGIMon.exe -target:library -out:/var/lib/MOGIMon/pushersMorrisonIndustries.Hedera.Pusher.dll
MOGIMon expects a a stanza in the OGoMojo.ini file like: [MOGIMon] OGoDSNUID=mogimon <---- Username for connecting to the OGo database OGoDSNPWD=****** <---- Password for connecting to the OGo database MinimumEntry=3957750 <---- Minimum audit entry to process, used if the record keeping database does not exists RecordFile=/var/lib/MOGIMon/db/RecordKeeper.db <--- Where to keep the record keeping database Username=adam <--- Used to connect to the OpenGroupware RPC2 server Secret=**** <--- Used to connect to the OpenGroupware RPC2 server LoopDelay=10000 <--- How long to pause between each check Hostname=gourd-amber <--- Hostname for the OpenGroupware RPC2 server PusherDirectory=/var/lib/MOGIMon/pushers <--- Directory where pushers are located
MOGIMon logs via the log4net - http://logging.apache.org/log4net/ assembly, and expects to find a Whitemice.MOGIMon.exe.log4net file that explains how to log.
Recommended MOGIMon directory structure: /var/lib/MOGIMon/ /var/lib/MOGIMon/Whitemice.MOGIMon.exe /var/lib/MOGIMon/Whitemice.MOGIMon.exe.log4net /var/lib/MOGIMon/db/RecordKeeper.db /var/lib/MOGIMon/pushers/
Last modified 2006-06-28 06:12 PM