Metrics & Monitoring #10
Replies: 3 comments 1 reply
|
I think a separate metrics tab makes sense. We can tweak |
|
I've been working on a proof of concept for this. Added a new 'Monitoring' page which has 2 main sections - 'System' and 'Pup metrics' The 'configure' button opens a modal with buttons for each metric so the user can enable/disable them as needed: When a supported service is enabled, a new 'Services' section is added:
What do you think @SomeoneWeird @edtubbs ? |
|
@elusiveshiba I like what you've POC'd here. It fits with the 'staple and stable features' phase of the project. As an appliance operator, I can visit the monitoring tab and answer: A. Appliance health:
B. Curious questions and comparisons
Feedback/Considerations:
|








Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Improvement Suggestion
The current iteration of our dashboards in dpanel is a stopgap to getting something more fierce in place, that would allow the user to do monitoring, and view metrics, across all running pups (and the system itself).
Without taking into consideration requirements or feedback that could change the following, I suggest two iterations to improve:
Phase 1 - Dashboard Tab
We build an overarching "Dashboards" tab into dpanel that collates exposed metrics from each pup into a single view.
We can add a dropdown at the top, and let users create customised dashboards that only include specific metrics from specific pups, mixed together.
The outcome that we should support is that a user running multiple Dogecoin Core nodes (such as existing core, core "green", sakura etc) should be able to easily view side-by-side metrics and make quick, high level comparisons.
This may require is increasing the density of metric collection, and expanding how we keep & store some of this data.
Prior to phase 2, we might want to look at running a prometheus-compatible collector that runs on the host, instead of having our custom metrics endpoint. This would mean that we make a breaking change here, instead of there, also means that if a user decides to optionally not install prometheus, metrics are support backwards-compatible supported, plus the fact that a lot of software has out of the box support for emitting prometheus-style metrics.
Phase 2 - Prom & Grafana
Without a Team behind us, we should not be wanting to re-create extensive timescale databases and frontend graphing components ourselves.
I propose that for hardware that would support it, we allow Dogebox users to install a "Monitoring Suite" pup that has both grafana and prometheus configured. If installed, metrics would be routed into this pup, rather than processed on the host, and our dashboard screen should iframe grafana (with some pre-configured dashboards for core etc).
This should be optional, as we don't want to leave users running on less-powerful hardware behind, so if this pup is not installed, we should just fall back to the UI improved in phase 1.
This will need to be specced out a little more to figure out what we can actually do via the grafana API, as they likely let you embed configured dashboard components, but don't let you embed a non-configured, configurable component.
All reactions