psyomn / cynic Goto Github PK
View Code? Open in Web Editor NEWSimple monitoring, contract and heuristic tool. Dependency free!
License: Apache License 2.0
Simple monitoring, contract and heuristic tool. Dependency free!
License: Apache License 2.0
Alerting is done a little too naive, and needs some fixing with the recent revamp changes.
Would be nice to have a builder that has some standard presets to distribute services over time.
Timed checkups for golang versions would be nice. Also would be a nice experiment to bring over to other projects.
use this https://github.com/tcnksm/go-latest with this https://github.com/golang/go/releases in the travis build, to automatically poke about new versions of go released
Timing wheels are a pretty good candidate for what cynic does. The implementation should use them.
For example, there should be a better way to store everything instead of lumping everything into one big mudball map, that is accessed on /status
There should be things like /status/group1
, /status/group2
etc.
Not all timers should:
An easy way to do this is to add an extra field in the services/events that says whether it's active or not. We then maintain a map with service ids to event pointers, set them to inactive and remove from the map.
Upon wheel rotation, the unused timers will be removed by overwriting.
Services should just be about where to fetch data. Processing of said data should be done by some other module.
Due to the turbulent nature of cynic, Service/Event may have one too many fields and cleaning things up resolves future headaches.
Might be easier to reason about things this way, and should be relatively cheap to do. This should simplify the programming logic in Wheel.Add
Labels should have unique increasing ids as well.
Might be worth storing a repository of data in memory (or disk if need to), and have services query the state.
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.