mwhooker / jones Goto Github PK
View Code? Open in Web Editor NEWConfiguration on Zookeeper
License: Apache License 2.0
Configuration on Zookeeper
License: Apache License 2.0
Could also be useful for reverting (to) changes.
Debatable as to whether we should store in rdbms or zookeeper.
If we store in zookeeper we can actually have clients peg themselves to versions.
Use #11 to configure an email list to send alerts to.
Whenever a value changes, an email should go out with
If a mapping changes, say what changed
If a config changes, show the diff and the new view.
Configure Sentry, email, etc in Jones
some gunicorn workers don't have zk sessions
2013-03-05 09:47:00 [21319] [ERROR] Error handling request
Traceback (most recent call last):
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/gunicorn/workers/async.py", line 45, in handle
self.handle_request(listener, req, client, addr)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/gunicorn/workers/ggevent.py", line 119, in handle_request
super(GeventWorker, self).handle_request(*args)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/gunicorn/workers/async.py", line 93, in handle_request
respiter = self.wsgi(environ, resp.start_response)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1701, in __call__
return self.wsgi_app(environ, start_response)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/werkzeug/contrib/fixers.py", line 125, in __call__
return self.app(environ, start_response)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1689, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1687, in wsgi_app
response = self.full_dispatch_request()
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1360, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1358, in full_dispatch_request
rv = self.dispatch_request()
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 1344, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/opt/www/jones/releases/a39fefa809301bd72cc8ee9094441dc0688e25f0/jones/web.py", line 79, in index
return render_template('index.html')
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/templating.py", line 123, in render_template
ctx.app.update_template_context(context)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/flask/app.py", line 692, in update_template_context
context.update(func())
File "/opt/www/jones/releases/a39fefa809301bd72cc8ee9094441dc0688e25f0/jones/web.py", line 73, in inject_services
return dict(services=[child for child in zk.get_children('/services') if
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/kazoo/client.py", line 803, in get_children
return self.get_children_async(path, watch, include_data).get()
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/kazoo/client.py", line 824, in get_children_async
self._call(req, async_result)
File "/opt/www/jones/shared/env/lib/python2.6/site-packages/kazoo/client.py", line 364, in _call
raise SessionExpiredError()
set up RTD
default bootstrap is boring
Vanilla bootstrap is boring
when a new deploy of jones goes up, it doesn't find the necessary paths in zookeeper, so it doesn't work quite right. I think basically we need to create a /services path if it doesn't exist already.
add an assoc to a child and it appears in the ui in the parent.
Making changes when the http server is unavailable fails silently.
There's a rare race-condition which can be solved by calling zk.sync, however I'm tired now and can't find the method.
Add zookeeper transactions, sync, and read only mode to Jones
perhaps we use long polling to alert the client of new changes, or perhaps websockets. Maybe neither
We should use http://semver.org/ so we should document it
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.