Within the last few months I have successfully migrated from BigBrother to Hobbit. The process was long and auderous since we had a large number of customizations in BigBrother. But now that we are on Hobbit, I really want to make use of the power of Hobbit and move away from the BB legacy method for ext scripts.
What I mean by BB legacy ext scripts, are client based ext scripts that send reports in via the bb status command. The Hobbit method is more server centric. In that clients report raw data to the server and the server processes that data, applying thresholds, formating reports, and possibly trending. Now to send raw data from the client there are two choices, data or client. Now in the past, I believe I saw a thread where Henrik mentioned that data was the preferred method for ext scripts & that client was more for the internal use between hobbit clients & server. But the lure of the client command is to great to ignore. Especially with the ability to access that raw data via the clientlog command.
So that brings me to my first problem when sending data via the client command the data needs to be structure in a very particular format. Where OSTYPE has to match a predefined Hobbit OSTYPE and a minimum set of SECTIONNAME need to be filled for the Hobbit server to accept the data. If they are missing the data just ends up in /dev/null. So I was curious if in the upcoming 4.3 (or newer version), that the client command could be opened up for more general usage ?
Now secondly after the data is actually accepted by the Server, the ability to do something with it is needed. Now that shouldn't be a problem with being able to attatch a script to a Hobbit channel or by scheduling a command to run clientlog every X minutes and process the data. But how does the script apply thresholds ? Now I am working under the assumption that for my custom data I would be able to add custom definitions to the hobbit-clients.cfg file. But how does my script access those thresholds ? Since Hobbit already has all the internals to acess this file, I would think that a Hobbit utility would fit the need. Maybe even a new BB command ? i.e. "bin/bb 1.2.3.4 "threshold server", where there could be an optional parameter "stats=" which could be CPU, PROCS, DISK, etc. By storing the custom ext thresholds in the hobbit-clients.cfg file, this allows the cgi hobbit-confreport.sh to report on the custom thresholds along with the built-in client thresholds.
A sample of a custom client report: bin/bb 1.2.3.4 "client BlahJVM01.websphere was60 [date] Thu Jan 24 09:03...... [jvm] java version: JDK 1.4.2_12 .... [memory] free: 88565 used: 43209 gc-calls: 39 gc-time: 4 [threadpool] current: 0 highwater: 10 active: 0 "
Sample hobbit-clients.cfg WASTHRD 10 20 WASMEMFREE 15000 5000
Sorry for the long winded email, I am just trying to move my ext scripts to the Hobbit methodology. It just makes more sense.. and offers many more options & power. And this was just my take on it. Thoughts ?
~Steve