Commit graph

82 commits

Author SHA1 Message Date
Julien 546f780006 UI: Disallow sub-second zoom as this cause inconsistenices in the X axis in uPlot
Fixes #9135

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-19 11:51:41 +02:00
Julius Volz a1908df922 Don't wrap action buttons below metric name in metrics explorer
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-16 19:51:35 +02:00
Julius Volz 9b0dc68d0d PromQL explain view: Support set operators
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-16 18:03:08 +02:00
Julius Volz 50af7d589b Fix tree line drawing by using a callback ref
In a non-dev build (no initial double-renders), the tree lines would not be
rendered correctly from the parent of a binop to its first child, because the
first child would be rendered before the parent, and the parent's ref hadn't
been set yet at that time. Switched from a normal ref to a callback-based ref
with explicit React state update to make sure that the child gets to know about
the parent's (later) rendered div element.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-16 08:42:20 +02:00
Julius Volz 0180cf31aa Factor out common icon and card styles
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-13 14:44:04 +02:00
Julius Volz ee808cda8b Fix HTML rendering for aggregator Explain view
Follow-up to https://github.com/prometheus/prometheus/pull/14893

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-10 17:09:34 +02:00
Julien 3782da7bbc Explain: Use param scalars in aggregations description
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-10 16:40:33 +02:00
Julien be6d443947 Mantine UI: Use actual lookback delta in explain
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-10 13:01:57 +02:00
Julius Volz 5956d482e8 Remove a few unneeded comments and component props
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-09 11:19:47 +02:00
Julius Volz d7bacf96c7 Remove commented-out and unused allowLineBreaks settings for binop explain
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-09 11:19:02 +02:00
Julius Volz d23872ef30 Graph range vector selectors as instant vector selectors with notice
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-08 21:11:06 +02:00
Julius Volz 1f1ca37fd7 Select root of tree by default in tree view
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-08 20:53:59 +02:00
Julius Volz cdcd43af5b Fix a lot of styling in tree view and binop explain view
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-08 20:53:44 +02:00
Julius Volz 8b4291537b Clarify explain view, add tree view close button, fix callback bug
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-08 15:17:00 +02:00
Julius Volz 7e0cd2e0b4 Improve binop explain view styling
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-08 15:16:02 +02:00
Julius Volz 5fd860f806 Complete building tree view and implement "Explain" tab
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-06 20:38:10 +02:00
Julius Volz 07856b4bb9 Make linter run by upgrading the ESLint config
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-06 20:35:55 +02:00
Julius Volz c1c2e32137 More cleanups to tree view stats
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-05 16:19:12 +02:00
Julius Volz 2d9f79f59e Show label stats in tree view
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-05 14:45:09 +02:00
Julius Volz 331a8e1d6c Use infinite scroll in metrics explorer for faster rendering
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-05 14:44:45 +02:00
Julius Volz 53affc64db Clear the query page when navigating away from it
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 21:41:27 +02:00
Julius Volz 8ee70c5fa0 Remove unused import
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 21:03:00 +02:00
Julius Volz 1f3de9c599 Change range input from Input to TextInput
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 20:43:33 +02:00
Julius Volz d36e049d79 Fix lint errors by removing unused imports and vars
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:49:08 +02:00
Julius Volz 7103b35568 Add "Show exemplars" button (doesn't do anything yet)
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:45:31 +02:00
Julius Volz 88519152e5 Minor cleanups
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:44:54 +02:00
Julius Volz c0ba4ee2bb Add beginnings of a PromLens-style tree view
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:43:08 +02:00
Julius Volz e5e212dad2 Remove wrong query key for format_query
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:35:17 +02:00
Julius Volz a99c01b53f Implement query history
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-04 17:25:34 +02:00
Julius Volz 5599db20cd Change use{Suspense}APIQuery key to an array
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-03 16:05:05 +02:00
Julius Volz 87a22500e1 Add PromQL logic code and labels explorer from PromLens, add testing deps
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-02 13:45:36 +02:00
Julius Volz bc48d19d8c Add initial metrics explorer
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-28 21:14:21 +02:00
Julius Volz 4ccadd5453 Remove unused import
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-28 16:30:45 +02:00
Julius Volz d3b6b0f288 Rename "value" to "step" in resolution state
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-28 14:59:17 +02:00
Julius Volz f195046b4d Remove obsolete TODO
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-28 14:58:24 +02:00
Julius Volz 38e21abe7f More specific TS typing for range query results (always matrix)
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-28 14:58:10 +02:00
Julius Volz 4efd47741e Correctly encode/decode new resolution states in URL
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-21 18:06:38 +02:00
Julius Volz 2c972dba26 Implement stacked graphs (dirty) and improve React wrapping
Some checks failed
CI / Go tests (push) Has been cancelled
CI / More Go tests (push) Has been cancelled
CI / Go tests with previous Go version (push) Has been cancelled
CI / UI tests (push) Has been cancelled
CI / Go tests on Windows (push) Has been cancelled
CI / Mixins tests (push) Has been cancelled
CI / Build Prometheus for common architectures (0) (push) Has been cancelled
CI / Build Prometheus for common architectures (1) (push) Has been cancelled
CI / Build Prometheus for common architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (0) (push) Has been cancelled
CI / Build Prometheus for all architectures (1) (push) Has been cancelled
CI / Build Prometheus for all architectures (10) (push) Has been cancelled
CI / Build Prometheus for all architectures (11) (push) Has been cancelled
CI / Build Prometheus for all architectures (2) (push) Has been cancelled
CI / Build Prometheus for all architectures (3) (push) Has been cancelled
CI / Build Prometheus for all architectures (4) (push) Has been cancelled
CI / Build Prometheus for all architectures (5) (push) Has been cancelled
CI / Build Prometheus for all architectures (6) (push) Has been cancelled
CI / Build Prometheus for all architectures (7) (push) Has been cancelled
CI / Build Prometheus for all architectures (8) (push) Has been cancelled
CI / Build Prometheus for all architectures (9) (push) Has been cancelled
CI / Check generated parser (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
CI / fuzzing (push) Has been cancelled
CI / codeql (push) Has been cancelled
CI / Report status of build Prometheus for all architectures (push) Has been cancelled
CI / Publish main branch artifacts (push) Has been cancelled
CI / Publish release artefacts (push) Has been cancelled
CI / Publish UI on npm Registry (push) Has been cancelled
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-16 20:41:18 +02:00
Julius Volz 406f8b6e23 Set DataTable display limits to original ones again
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-02 19:44:55 +02:00
Julius Volz f30a58afaf Completely refactor DataTable, show query infos and warnings
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-08-01 13:13:02 +02:00
Julius Volz a6b085ee5a Refactor DataTable, record & show query stats
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-31 16:19:38 +02:00
Julius Volz 5dca5a4718 Fix max number of displayed series in table
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-31 16:18:23 +02:00
Julius Volz c6d2ce8e7e Remove console.log() debug line
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-30 13:12:49 +02:00
Julius Volz 4343281c73 Show table alerts for limited series or disabled formatting
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-30 10:48:18 +02:00
Julius Volz 6321267996 Add missing ResolutionInput.tsx file to git
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-27 16:28:42 +02:00
Julius Volz f7a97417a5 Move resolution input into separate component + file
Also don't reload the graph on custom resolution input blur if the resolution
hasn't changed.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-23 23:13:06 +02:00
Julius Volz a2a177a04c Clean up uPlot CSS rules a bit
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-23 21:22:23 +02:00
Julius Volz 90cf8b3082 Move uPlot plugins and glue code to separate file
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-23 21:21:34 +02:00
Julius Volz 89d18bf681 Minor comment/code cleanups
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-23 20:00:42 +02:00
Julius Volz de1cb93cb1 More uPlot coloring improvements/fixes
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-07-23 20:00:10 +02:00