Giter VIP home page Giter VIP logo

metricsd's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

metricsd's Issues

Configurable prefix

I attempted to add support for this myself (no real Scala experience here) but after getting down into the point where coda's metrics library started dumping stuff to graphite by grouped under the metric type, I decided to open an issue.

We like to group our metrics in graphite under "stats.company.. Right now the top-level of metrics is hardcoded. I was able to change THAT part but as I discovered the actual type of metric is being injected I THINK by coda's stuff in GraphiteReporter.

I'm thinking this would be a bigger change than the approach I was looking at. I'm willing to give it a shot (been looking for an itch to scratch in Scala) but wanted to see your thoughts.

I'd really like to use metricsd as I'm keen on the additional data types.

Remove the dependency to metrics lib

Hey, mojodna,
Sorry to put this in the issue list. If you have a maillist, please let know. I will move it.
Is it possible to remove the dependency to metrics lib? Based on the reading from here http://readthedocs.org/docs/graphite/en/latest/feeding-carbon.html. It should be very straight forward to write to carbon directly and we can choose different protocol: plaintext, pickle or even AMQP. Can you please explain to me what's the benefits you use metrics lib here?
Thank you.
Yongjun Rong

Question: Is metricsd still maintained?

Hi @mojodna and thanks for your work on metricsd, it's a really useful tool :)

It seems that there's been no activity on this project since Feb 1, 2013 though, so I'm wondering if you still have the time to maintain it?

Best,
Jan

Limit the number of metrics sent for histograms

Currently every histogram creates the following metrics

75percentile
95percentile
98percentile
999percentile
99percentile
max
mean
median
min
stddev

How can I change this list to say only feature 95percentile, max, mean, median, min ?

Introduce the ability to remove metrics

Once metricsd has been started, it logs any and all metrics that have been sent to it. Sometimes this is annoying, like when you're testing and generate metrics with the wrong name. Deleting them from the filesystem doesn't work, as metricsd will keep flushing the last values sent.

percentiles not decline after peak back to normal after a long time

When I send some very big values, and then send normal values, the percentiles won't change to normal sometimes in a very long time.

See the image. The yellow line is the values I'm sending, and the blue line is 95percentile. And I suppose it should decline after the peak. As histograms are biased to the last 5 min data values. But the 95percentile is a fixed value for a long time. After about 25min, it declines.

In my real usage, when there is a very very very high peak, this kind of impact will be much longer (for many days 95percentile keeps to be a fixed value).

Would it be better if percentiles can be configured to be based on past few minutes, instead of using the biased algorithm from Metrics?

example

List known metrics

In order for metric deletion to be more useful, metricsd should have a mechanism to list metrics that it knows about.

counter decrements will result in error

I'm using metricsd-0.4.1-jar-with-dependencies.jar with default settings under Ubuntu 10.04

counter increment works OK for me.
But when send message as "test:-10|c" will get this:

ERROR [2012-02-24 10:25:57,266] net.mojodna.metricsd.server.MetricsServiceHandler: Exception in MetricsServiceHandler
! scala.MatchError: test:-10|c (of class java.lang.String)
! at net.mojodna.metricsd.server.MetricsServiceHandler$$anonfun$messageReceived$1.apply(MetricsServiceHandler.scala:33)
! at net.mojodna.metricsd.server.MetricsServiceHandler$$anonfun$messageReceived$1.apply(MetricsServiceHandler.scala:31)
! at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:34)
! at scala.collection.mutable.ArrayOps.foreach(ArrayOps.scala:38)
! at net.mojodna.metricsd.server.MetricsServiceHandler.messageReceived(MetricsServiceHandler.scala:30)
! at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
! at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:71)
! at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
! at org.jboss.netty.channel.socket.nio.NioDatagramWorker.read(NioDatagramWorker.java:413)
! at org.jboss.netty.channel.socket.nio.NioDatagramWorker.processSelectedKeys(NioDatagramWorker.java:342)
! at org.jboss.netty.channel.socket.nio.NioDatagramWorker.run(NioDatagramWorker.java:255)
! at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
! at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
! at java.lang.Thread.run(Thread.java:636)

Unable to parse metric

MetricsD is unable to parse the following metric
Foo.Web.ServiceHost.QueueWorker.ExternalAnalyticsEventMessage.PendingMessages:3.000000000000000|g

ERROR [2013-11-21 00:36:08,585] net.mojodna.metricsd.server.MetricsServiceHandler: Exception in MetricsServiceHandler
! scala.MatchError: Foo.Web.ServiceHost.QueueWorker.ExternalAnalyticsEventMessage.PendingMessages:3.000000000000000|g (of class java.lang.String)
! at net.mojodna.metricsd.server.MetricsServiceHandler$$anonfun$messageReceived$1.apply(MetricsServiceHandler.scala:34)
! at net.mojodna.metricsd.server.MetricsServiceHandler$$anonfun$messageReceived$1.apply(MetricsServiceHandler.scala:32)
! at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:34)
! at scala.collection.mutable.ArrayOps.foreach(ArrayOps.scala:38)
! at net.mojodna.metricsd.server.MetricsServiceHandler.messageReceived(MetricsServiceHandler.scala:31)
! at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
! at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
! at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
! at org.jboss.netty.channel.socket.nio.NioDatagramWorker.read(NioDatagramWorker.java:98)
! at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:107)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.