Skip to content

chart: reference lines for limits and for events #1374

Description

@81reap

What are you building with SQLPage ?

Host telemetry dashboards for a fleet of NixOS machines. Metrics are collected to Parquet, queried with DuckDB, and rendered entirely by SQLPage.

What is your problem ? A description of the problem, not the solution you are proposing.

While I am able to graph data, it is often lost without additional context of expected limits, ranges, and events. For example

  • a CPU temperature against the part's Tjmax
  • a power draw against a supply or circuit budget
  • a request latency against an SLO
  • a disk usage against a capacity alarm

This also holds along the x-axis. A latency chart shows that something
went wrong at 11:30, but not that 10:00 was a deploy and 11:30 to 13:00 was an
incident. Reading it means keeping a second window open.

While it would also be nice for SQLPage to be able to page/alert me or trigger a webhook, I think it is out of scope for this request. See #1350 and #1351

What are you currently doing ? Since your solution is not implemented in SQLPage currently, what are you doing instead ?

I am doing a mix of different things.

  1. Emitting y-lines as an extra series to plot. This kinda works, but breaks with stacked and area charts.
  2. Putting threshold context in the title.

Describe the solution you'd like

I would like to be able to pass in any number of x and y reference lines with the option to upgrade reference lines into reference areas by adding more metadata to the request. Changes should be additive so that it is easy to add/remove reference lines from an end user perspective.

Describe alternatives you've considered

  1. Emitting y-lines as an extra series to plot. This kinda works, but breaks with stacked and area charts.
  2. Putting threshold context in the title.

Additional context

example refrence line :: https://docs.aws.amazon.com/quick/latest/userguide/reference-lines.html

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions