These 23 commits are when the Protocol Buffers files have changed:
| Commit: | 636c29a | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
proto: add PreviewGraphDuration RPC The duration graph is the last panel the Create SLO preview can't render. GraphDuration resolves its objective by expr, which only works once the SLO is stored, so a draft has no way in. PreviewGraphDuration takes the editor's YAML instead, mirroring how Preview already materializes an objective. Generated stubs regenerated with make proto.
| Commit: | 4116d93 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(ui): load metric/label/value suggestions live from Prometheus The Create SLO editor's autocomplete was backed by a small static catalog of demo metrics, so it suggested the wrong (and far too few) names against a real cluster. Add LabelNames/LabelValues RPCs to PrometheusService, surfacing the label discovery already available in the underlying Prometheus client but previously narrowed away by Pyrra's prometheusAPI wrappers. The editor now queries these live and unbounded (no start/end), matching how Prometheus' own UI drives its typeahead — metric names, then label names inside {}, then label values after an operator, scoped to the metric/label currently typed. The dropdown itself scrolls rather than truncating results.
| Commit: | 9f0bcd4 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | GitHub | |
feat(api): add the Preview RPC for the Create SLO editor (#1900) * feat(api): add Preview RPC for the Create SLO editor The editor's live Detail preview needs a draft SLO materialized into an Objective without persisting it. Preview parses the submitted YAML through the same path a stored config takes and fills in the queries like List, entirely in the API layer with no backend round-trip, so the editor can render the detail page against real Prometheus data. The frontend's previewObjective now calls this RPC instead of failing closed. * feat(slo): add raw query variants for the Create SLO preview The Preview endpoint materializes an SLO that doesn't exist yet, so none of its recording rules (`:increase`, `:burnrate`, ...) have been generated. Querying those would return no data. Add QueryTotalRaw/QueryErrorsRaw/QueryErrorBudgetRaw that compute the total, errors and error budget directly from the underlying metrics with increase()/count_over_time() over the window, and switch the Preview handler to use them. The raw matchers omit the recording-rule-only `slo` label and the latency `le` disambiguation. Results are ungrouped so the preview tiles show a single overall availability number. Covered by tests asserting no raw query references a recording rule across all indicator types. * feat(ui): add grouping chooser to the SLO Create preview When the draft SLO declares grouping labels, Preview now shows a table of all matching label sets — pills per row, current availability — instead of going straight to the Detail view. Clicking a row re-materialises the objective scoped to that single label set and renders its tiles and graphs. A "← Groupings" back link returns to the chooser. Backend: added PreviewRequest.grouping (proto + codegen); the Preview handler folds those matchers into the indicator to scope raw queries to one series. QueryTotalRaw/QueryErrorsRaw now emit `sum by (<grouping>) …` so the grouped preview returns one series per label set, giving the frontend enough data to build the chooser without an extra discovery round-trip.
| Commit: | fc46398 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(ui): add grouping chooser to the SLO Create preview When the draft SLO declares grouping labels, Preview now shows a table of all matching label sets — pills per row, current availability — instead of going straight to the Detail view. Clicking a row re-materialises the objective scoped to that single label set and renders its tiles and graphs. A "← Groupings" back link returns to the chooser. Backend: added PreviewRequest.grouping (proto + codegen); the Preview handler folds those matchers into the indicator to scope raw queries to one series. QueryTotalRaw/QueryErrorsRaw now emit `sum by (<grouping>) …` so the grouped preview returns one series per label set, giving the frontend enough data to build the chooser without an extra discovery round-trip.
| Commit: | f0ceaf9 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(api): add Preview RPC for the Create SLO editor The editor's live Detail preview needs a draft SLO materialized into an Objective without persisting it. Preview parses the submitted YAML through the same path a stored config takes and fills in the queries like List, entirely in the API layer with no backend round-trip, so the editor can render the detail page against real Prometheus data. The frontend's previewObjective now calls this RPC instead of failing closed.
| Commit: | edd3ba2 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
proto: add PreviewGraphDuration RPC The duration graph is the last panel the Create SLO preview can't render. GraphDuration resolves its objective by expr, which only works once the SLO is stored, so a draft has no way in. PreviewGraphDuration takes the editor's YAML instead, mirroring how Preview already materializes an objective. Generated stubs regenerated with make proto.
| Commit: | 3e36673 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(ui): load metric/label/value suggestions live from Prometheus The Create SLO editor's autocomplete was backed by a small static catalog of demo metrics, so it suggested the wrong (and far too few) names against a real cluster. Add LabelNames/LabelValues RPCs to PrometheusService, surfacing the label discovery already available in the underlying Prometheus client but previously narrowed away by Pyrra's prometheusAPI wrappers. The editor now queries these live and unbounded (no start/end), matching how Prometheus' own UI drives its typeahead — metric names, then label names inside {}, then label values after an operator, scoped to the metric/label currently typed. The dropdown itself scrolls rather than truncating results.
| Commit: | 354c7fb | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(ui): add grouping chooser to the SLO Create preview When the draft SLO declares grouping labels, Preview now shows a table of all matching label sets — pills per row, current availability — instead of going straight to the Detail view. Clicking a row re-materialises the objective scoped to that single label set and renders its tiles and graphs. A "← Groupings" back link returns to the chooser. Backend: added PreviewRequest.grouping (proto + codegen); the Preview handler folds those matchers into the indicator to scope raw queries to one series. QueryTotalRaw/QueryErrorsRaw now emit `sum by (<grouping>) …` so the grouped preview returns one series per label set, giving the frontend enough data to build the chooser without an extra discovery round-trip.
| Commit: | 230d0ee | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
feat(api): add Preview RPC for the Create SLO editor The editor's live Detail preview needs a draft SLO materialized into an Objective without persisting it. Preview parses the submitted YAML through the same path a stored config takes and fills in the queries like List, entirely in the API layer with no backend round-trip, so the editor can render the detail page against real Prometheus data. The frontend's previewObjective now calls this RPC instead of failing closed.
| Commit: | eb991cf | |
|---|---|---|
| Author: | Matthias Loibl | |
proto: add PreviewGraphDuration RPC The duration graph is the last panel the Create SLO preview can't render. GraphDuration resolves its objective by expr, which only works once the SLO is stored, so a draft has no way in. PreviewGraphDuration takes the editor's YAML instead, mirroring how Preview already materializes an objective. Generated stubs regenerated with make proto.
| Commit: | 3cf351f | |
|---|---|---|
| Author: | Matthias Loibl | |
feat(ui): load metric/label/value suggestions live from Prometheus The Create SLO editor's autocomplete was backed by a small static catalog of demo metrics, so it suggested the wrong (and far too few) names against a real cluster. Add LabelNames/LabelValues RPCs to PrometheusService, surfacing the label discovery already available in the underlying Prometheus client but previously narrowed away by Pyrra's prometheusAPI wrappers. The editor now queries these live and unbounded (no start/end), matching how Prometheus' own UI drives its typeahead — metric names, then label names inside {}, then label values after an operator, scoped to the metric/label currently typed. The dropdown itself scrolls rather than truncating results.
| Commit: | f663acf | |
|---|---|---|
| Author: | Matthias Loibl | |
feat(ui): add grouping chooser to the SLO Create preview When the draft SLO declares grouping labels, Preview now shows a table of all matching label sets — pills per row, current availability — instead of going straight to the Detail view. Clicking a row re-materialises the objective scoped to that single label set and renders its tiles and graphs. A "← Groupings" back link returns to the chooser. Backend: added PreviewRequest.grouping (proto + codegen); the Preview handler folds those matchers into the indicator to scope raw queries to one series. QueryTotalRaw/QueryErrorsRaw now emit `sum by (<grouping>) …` so the grouped preview returns one series per label set, giving the frontend enough data to build the chooser without an extra discovery round-trip.
| Commit: | e1411ef | |
|---|---|---|
| Author: | Matthias Loibl | |
feat(api): add Preview RPC for the Create SLO editor The editor's live Detail preview needs a draft SLO materialized into an Objective without persisting it. Preview parses the submitted YAML through the same path a stored config takes and fills in the queries like List, entirely in the API layer with no backend round-trip, so the editor can render the detail page against real Prometheus data. The frontend's previewObjective now calls this RPC instead of failing closed.
| Commit: | 911e98c | |
|---|---|---|
| Author: | Matthias Loibl | |
Fix rebasing boolGauge
The documentation is generated from this commit.
| Commit: | 0ec1af2 | |
|---|---|---|
| Author: | Matthias Loibl | |
Continue adding native histograms support
| Commit: | 9dbb502 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
Create an interactive editor
| Commit: | 48cb2d9 | |
|---|---|---|
| Author: | Julien Pivotto | |
| Committer: | Julien Pivotto | |
Add support for a new type of indicator called "GaugeBool" GaugeBool is specifically designed for gauges that range from 0 to 1, such as the `up` or `probe_success` gauges commonly found in Prometheus ecosystems. These gauges represent the availability or success of a system and are important indicators of the overall health of the system. Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
| Commit: | 351830d | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
Use react-query to query objectives and prometheus service
| Commit: | 6dc0e36 | |
|---|---|---|
| Author: | Matthias Loibl | |
ui: Create a duration histogram graph for latency SLOs
| Commit: | 8cf9044 | |
|---|---|---|
| Author: | Matthias Loibl | |
Bring back GetStatus time parameter after rebase
| Commit: | b514730 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
Generate all missing API calls
| Commit: | a82ae73 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
Add connect-web and try adding prometheus proto as dep
| Commit: | 9b57101 | |
|---|---|---|
| Author: | Matthias Loibl | |
| Committer: | Matthias Loibl | |
Start adding connect-go for the API and backend API