PyPI Page: http://pypi.python.org/pypi/zk_watcher GitHub: https://github.com/Nextdoor/zkwatcher
'zk_watcher' has been bumped to v0.3.1 and had nearly a complete rewrite. Though there are a ton of small changes, there are two major changes to the code. 1. We've thrown away the Zookeeper C-based bindings (zc.zk backend) and replaced them with our own 'nd_service_registry' library (based on Kazoo). This simplifies the zk_watcher code because it doesn't really do much now on its own to track Zookeeper connections or node-status's. Instead, it focuses on its main job of proving whether or not your services are up and running. 2. The non-threaded model has been replaced with a threaded model. I know there are concerns with threading in Python ... but this new model is actually safer in the event that one of your 'check' commands fails to return in a reasonable amount of time. Additionally, our threading model is very simple and under testing has proved to be very reliable. There are a whole ton of other internal changes... and a few feature enhancements as well. The entire changelog can be found here: https://github.com/Nextdoor/zkwatcher/compare/v0.1.0...v0.3.1 We've been running this release in production for the last 3 weeks without any issues... but as usual, if you find bugs, please let us know! --Matt (ps, nd_service_registry will get its own announcement/documentation email after a few more weeks of tuning/tweaking. its entirely functional right now, but further documentation is necessary before we really ask other people to use it. that being said, it can be found here https://github.com/Nextdoor/ndserviceregistry)
