Graphite Emitter doesn't send metrics

Hi All,
I have just upgraded our Druid to 0.14 and the graphite emitter doesn’t work.
Our druid is on AWS EC2 instances.

I added the extensions load list, and add the graphite configuration, I tried to send all metrics by specifying “type”:“all”.

Am I missing something?

Maybe I need to open 2004 port?

druid.extensions.loadList=[“druid-s3-extensions”, “mysql-metadata-storage”, “druid-histogram”, “druid-datasketches”, “druid-kafka-indexing-service”, “druid-lookups-cached-global”, “graphite-emitter”

druid.monitoring.monitors=[“org.apache.druid.java.util.metrics.JvmMonitor”]

druid.monitoring.emissionPeriod=PT10s

druid.emitter=graphite

druid.emitter.logging.logLevel=info

Graphite configuration

druid.emitter.graphite.hostname=graphite.oribi.io

Text port = 2003, Pickle port = 2004. Graphite emitter uses Pickle protocol

druid.emitter.graphite.port=2004

druid.emitter.graphite.eventConverter={“type”:“all”, “namespacePrefix”: “my-app-druid-014”, “ignoreHostname”:false, “ignoreServiceName”:false}

in milliseconds

druid.emitter.graphite.flushPeriod=10000

druid.emitter.graphite.alertEmitters=[“logging”]

``

Hi,

I think the all value configured in graphite emitter just points to the metrics configured to be exported by the configured monitord.

So maybe you should activate them first.

Here is the list of available monitors : https://druid.apache.org/docs/latest/configuration/index.html#startup-logging

I noticed there is one or two missing monitors but you can get them when specified in the metrics description (here : https://druid.apache.org/docs/latest/operations/metrics.html)

For what I saw, the metric exposition is not correlated to the emission method (logging, http, graphite…) and this is the way I made it work :slight_smile:

Also, to ensure you’re not facing any network issue (as you are on aws, that could happen) you could set druid.emitter = logging just to see what is really exported in the log files and make it to send to graphite

I don’t understansd what do you mean “missing monitors” and not “correlated emission”.

According to this link the druid.emitter should be graphite and thats it…

The metrics produced by Druid depends on the monitors you put in this variable :druid.monitoring.monitors

If you don’t add, for example, org.apache.druid.server.metrics.QueryCountStatsMonitor in it, Druid won’t produce query/*/count metrics so it won’t be able to send them to wherever you want them to be sent.

What I tried to explain earlier is that “druid.monitoring.monitors” controls which metrics Druid will produce and “druid.emitter*” configuration will be responsible for where the produced metrics will be sent

Any Idea what is this message says?
I have a feeling this is my problem.

org.apache.druid.guice.JsonConfigurator - Skipping druid.emitter.graphite.eventConverter property: one of it’s prefixes is also used as a property key. Prefix: druid