Dear community,
this is my first post here, so I hope I’m posting in the right forum and get things right generally. I am using Checkmk since nearly 10 years now on the sites where I worked and currently work and I simply love it. Now I have a (albeit small) contribution to give back and I am curious whether it may be useful to anyone.
We have a BusyBox-based Linux appliance to monitor (Omneon Spectrum videoserver in a Broadcasting environment) and I found that there is already a stripped-down agent version for busybox in the treasures folder.
However, this version is based on Agent version 1.5.0 as far as I can see and lacks many modern architectural changes regarding caching, async execution etc., so I thought it may be better to try taking the new, 2.5.0 vanilla agent and adapt it step by step until it works. And in the end it did work like a charm. What I had to do:
- Simplify df, free and ps command usage, as they don’t support all command-line options on BusyBox
- For example, the injecton of cgroup:512 into the ps -o command has to be avoided as it didn’t work on BusyBox
- Adapt to the different parameter order of the “timeout” command in BusyBox - we check for that, and if timeout is the broken BusyBox version, but our real waitmax is in /usr/bin, we use that
- Adapt the usage of ntpq and also output systemtime using date, like the previous version by Matthias Haehnel did
My question now: is there any need for this, and if so, I thought of submitting this to doc/treasures. Should I just file a PR and overwrite the old 1.5.0 one, or add a new file, or something completely different?
For anybody interested, the code is already here in a Gist, for anyone to review:
Feedback is very welcome and appreciated!
Thank you all and “happy monitoring” ![]()
Fabian