Progress on New Workflow and Distributed pymonYesterday a bunch of effort was made further integrating the new workflow code into the pymon code base. It's actually starting to get
exciting now, since there's only one more step until completion. Currently,
there is custom workflow code in pymon.clients.rules and this needs to be
converted to actions that are taken by pymon.workflow.service
onEnterState(), onLeaveState(), and onTransition().
In addition, the groundwork has been laid for unifying service state
information from peered pymon instances (distributed pymon). The only thing
left to do on that is figure out how to represent conflicting data from
different sources (e.g., instance1 says service B is down and instance2
says that same service is up).
New Project Space at Google CodeWe are pleased to annouce that the pymon project has a new project home at Google Code. Due to the
terrible abuse of Trac by spammers, the previous project site was limited
as far as who could update the wiki and submit issues to the tracker. With
pymon at google, the security of the project resources should remain while
increasing the convenience for users and contributors.
A significant bonus is that public subversion access will now be available
for all to checkout.
SourceForge.net will continue to host pymon's website and downloads.
However, from now on
bug submissions and source code will be available only from
Distributed pymon In ProgressTonight I began working on the code that will enabled pymon to work with peer instances on other machines, providing access to the locally hosted monitored services data as well as the status of the services monitored by its peer installations. The mechanism is very simple, employing the simplejson python library to publish service state data at regular intervals. When an administrator wants to peer a pymon installtion (or many installations), only a single entry need be updated/added in the Apache-style configuration file.
Mail List Has Moved
[ 2006.04.05] The mail list for CoyMon is now officially hosted at google groups here. Soon, the old mailman instance will be turned off, so be sure you post to the new list linked above. Everyone has been migrated over, though, so there should be no interruption of service. Additionally, archives for the previous year will be hosted indefinitely in the same old location.
PyCon 2006 Sprint Summary
[ 2006.03.12] I just posted a blog entry for the results of the pymon sprint at the python conference this year. It went really well, and we covered a lot of ground. After examining the requirements for componentizing pymon, we moved on to some fun stuff that people have been wanting us to work on for ages: an interactive shell for pymon whose functionality and command structure are inspired by Cisco's various OS (in particular the PIX OS). The mail list archives have a couple posts here and here that show the results in action.
Component and Unit Testing Refactor
[ 2006.02.27] I started working on a new pymon branch today, one where I will be implementing full componentization (interfaces, adapters, adatper-lookups/registries, etc.) for pymon. This will not only extend the lifetime and maintainability of the entire code base, but will allow us to write elegant unit tests. Unit testing becomes ciritcal for complex code or even simple code that does lots of complex interactions (or expects a wide variety of data).