kickstarter / dropwizard-influxdb-reporter Goto Github PK
View Code? Open in Web Editor NEWDropwizard Integrations for InfluxDB.
License: Apache License 2.0
Dropwizard Integrations for InfluxDB.
License: Apache License 2.0
I am trying to integrate a dropwizard service metrics with influxdb using your metrics reporter.But i getting the below exception while running the code present at
https://github.com/tosheer/analysis
``
IND00090:dropwizard-metrics-example tosheer.kalra$
java -jar target/metrics-example-1.0-SNAPSHOT.jar server config.yml
config.yml has an error:
Can you please give me some pointer regarding what i am doing wrong.
It's a little difficult to use this library in applications that use dropwizard metrics without the rest of the framework. It would be more user friendly to add setters to the Factory classes so its possible to create them manually.
The following would make this much more convenient to use.
new InfluxDbWriter.Factory()
.host(host)
.port(port)
.build(registry);
Even in the unit tests the way its constructed is a little awkward where it builds the object from a json string and deserializes it into the object since there is no access to set these parameters.
This also applies to the reporter factory.
By default a Dropwizard app exposes a gauge which reports a set of names of deadlocked threads.
See https://github.com/dropwizard/metrics/blob/3.2-development/metrics-jvm/src/main/java/com/codahale/metrics/jvm/ThreadStatesGaugeSet.java#L82
Currently the reporter throws an IllegalArgumentException
for this metric and writes a warning in the log:
WARN c.k.d.m.i.t.DropwizardTransformer: InfluxDbMeasurement field 'deadlocks' must be String or primitive: []
It would be nice to report the value of this metric as a string (a result of toString
on the collection).
When reporting metrics from a Dropwizard app I get the following warning log messages:
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: jvm_memory
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: thread_pools
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: jvm_gc
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: client_connections
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: jvm_memory
WARN c.k.d.m.i.t.DropwizardTransformer: Measurement has no valid fields: jvm_buffers
This seems counterintuitive, because the measurements get reported to InfluxDB.
Right after i add the dependency in the pom.xml and try to deploy on wildfly, i get this error
"Error getting reflective information for class org.eclipse.jetty.server.handler.IdleTimeoutHandler$1 with ClassLoader ModuleClassLoader for Module "deployment.test.war:main" from Service Module Loader"
Should i be manually adding any other dependencies? Tried adding this dependency
**<!-- https://mvnrepository.com/artifact/org.eclipse.jetty.server/source -->
<dependency>
<groupId>org.eclipse.jetty.server</groupId>
<artifactId>source</artifactId>
<version>8.1.3</version>
</dependency>**
but maven couldn't find any such dependency.
Just hit an issue where the http writer got a timeout exception from our metrics relay which may have been backed up or had a hiccup. This line closed the http writer which made it so metrics could not report for the rest of the JVM processes lifetime.
Is there a particular reason the writers are closed here? That makes it so they can't recover. I think the writers should be able to handle their own failures and it seems like they already can. The HTTP writer will just get a new http connection and try again on the next pass. Once its closed it just fails forever.
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.