tehuti-io / tehuti Goto Github PK
View Code? Open in Web Editor NEWA simple metrics library.
License: Apache License 2.0
A simple metrics library.
License: Apache License 2.0
Make the methods in MetricsRepository (MetricsRepository#sensor() and MetricsRepository#addMetric()) consistent.
Right now, Repository name, Sensor name, and Metric name are orthogonal. It makes more sense if prefixing the former in front of the latter and separating them by dot. That being said, if repository A has a sensor called B which contains metric C, the full name of this metric would be A.B.C.
Since JMX has the similar naming convention, this also makes it easier mapping metrics into corresponding JMX attribute.
Reporter right now registers stats at metric-level. If the metric belongs to a existing sensor, it unregisters the sensor first, and then re-registers the whole again. It is overhead. Reporter would better have a method for sensor-level registration.
Tehuti MetricsReporter used to not have feature that unregisters metrics so that MetricChange was only in charge of adding new metrics. This method's name becomes vague since we are introducing the unregister feature.
It is reasonable (and useful) to let the Metric be able to reset Stats corresponding to it. Right now, only Stats is able to reset values by it own.
It might be better to move JmxReporter#prefix to MetricsReporter and add a compareTo method in MetricsReporter that returns true if (this.getClass == a.getClass) && this.prefix == a.prefix).
In that way, we could check if there is existing reporter before adding new reporter in MetricsRepository.
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.