locationtech / locationtech/geomesa

Add DropWizard metrics to our profiling code

Open
#8,034 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Scala
Stars
1.5k
Forks
446
Avg merge
1d 8h
Merged PRs (30d)
31

Description

Add DropWizard metrics to our profiling code

Hook up DropWizard metrics into our profiling code, specifically in AccumuloFeatureReader.
Possibly create an AccumuloReporter instance of a MetricsReporter interface.


Original JIRA Issue: https://geomesa.atlassian.net/browse/GEOMESA-719

Key: GEOMESA-719
Type: Story
Priority: Major
Status: To Do
Resolution: Unresolved
Reporter: Emilio Lahr-Vivaz
Created: Tue, 17 Mar 2015 14:36:25 -0400
Updated: Tue, 14 Apr 2020 15:07:56 -0400
Affects Version(s): 1.0.0-rc.5


Comments:

557058:48912df4-0004-4f90-9915-db26684ec006 (Fri, 10 Apr 2015 11:12:51 -0400):

DropWizard/Yammer metrics has been rejected by the Eclipse Foundation.

We maybe able to implement a facade and make it optionally pluggable.

557058:48912df4-0004-4f90-9915-db26684ec006 (Wed, 28 Sep 2016 14:05:51 -0400):

Emilio Lahr-Vivaz I think we got DropWizard metrics sorted out IP-wise.

What did we want to do here again?

557058:85267d80-736b-42c9-898c-3b6267da6a7f (Wed, 28 Sep 2016 14:15:58 -0400):

James Hughes Instead of just writing out query stats to accumulo like we currently do (when enabled), we could use dropwizard metrics so that the destination is pluggable.
This has gotten more complicated now, as we have a rest API for querying and modifying the query stats that is used heavily by Britt Evans - we'd want to keep it back compatible.

557058:48912df4-0004-4f90-9915-db26684ec006 (Tue, 14 Apr 2020 14:53:39 -0400):

Emilio Lahr-Vivaz thoughts on this one?

557058:da7f6dfa-f0a1-468b-aec5-2cb61273feb5 (Tue, 14 Apr 2020 15:07:30 -0400):

making our audits more pluggable would still be a good idea - right now we write to log files for everything non-accumulo and accumulo writes to a _queries table. exposing them to something like prometheus would be pretty sweet.

557058:da7f6dfa-f0a1-468b-aec5-2cb61273feb5 (Tue, 14 Apr 2020 15:07:56 -0400):

I see there's a prometheus dropwizard integration point: https://www.robustperception.io/exposing-dropwizard-metrics-to-prometheus

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with AccumuloFeatureReader and the existing query-stats flow, including the REST API and Accumulo _queries table mentioned in the discussion. Clarify the desired pluggable metrics or audit destination, then ensure the existing REST API remains backward compatible and that Prometheus exposure is supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
prometheus, scala
Domain
observability
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.