Skip to content

Conversation

@karalabe
Copy link
Member

@karalabe karalabe commented Jun 10, 2019

While porting over our Datadog metrics to a Grafana dashboard I've hit various missing data. Turned out that on Datadog we have access to the RPC APIs too (as well as the datadog agent on the host), so we used those to pull various infos. That is problematic if we use InfluxDB/Prometheus + Grafana, because those won't have RPC calling capabilities, nor local agents beside Geth.

This PR tries to surface the required counters through the proper metrics subsysem:

  • Track the head header, receipt and block via gauges. This gives us access to the sync status without RPC.
  • Track the pending, queued and local transactions via counters. This gives us access to txpool stats without RPC.
  • Track memory usage and database/freezer sizes. This gives us access to some general system stats without a local agent running side-by-side with Geth.

This PR permits the below Grafana charts:

Screenshot from 2019-06-10 13-14-08

@karalabe karalabe added this to the 1.9.0 milestone Jun 10, 2019
Copy link
Contributor

@holiman holiman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Once it's merged, let's find out the quirks by showing it side by side with our ddog charts. Won't be exact, though, since some meters are redefined from counters into meters, and some have changed namespace

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants