Commit graph

10 commits

Author SHA1 Message Date
Julius Volz c861b31b72 Support UTF-8 metric names and labels in web UI
Fixes most of https://github.com/prometheus/prometheus/issues/15202

This should address all areas of the UI except for the autocompletion in the
codemirror-promql text editor. The strategy here is that any time we print or
internally serialize (like for the PromLens tree view) either a metric name or
a label name as part of a selector or in other relevant parts of PromQL, we
check whether it contains characters beyond what was previously supported, and
if so, quote and escape it. In the case of metric names, we also have to move
them from the beginning of the selector into the curly braces.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-29 20:22:52 +01:00
Julien 7ebda924b8 fix(web): properly format sub-millisecond durations in target status page
Previously, scrapes durations that are very short (e.g., connection refused)
could show as empty (durations under 1 millisecond).

This commit ensures that sub-millisecond durations are correctly
displayed as "0ms" or "1ms" when necessary.

- Adjusted `humanizeDuration` to round sub-millisecond durations to the
  nearest millisecond.
- Updated unit tests to verify the correct handling of sub-millisecond
  values.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-20 12:02:17 +02:00
Julius Volz 57898c7929 Refactor and fix time formatting functions, add tests
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-16 19:51:08 +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 1049c90cb5 Clean up file hierarchy a bit, add some more comments
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-04-09 12:36:53 +02:00
Julius Volz 1f5605fe63 Time formatting / parsing improvements
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-04-03 14:43:56 +02:00
Julius Volz 2f95bbe570 Improve humanizeDuration() code and output
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-03-14 12:14:51 +01:00
Julius Volz 2bb14c5787 Lots of more progress on the new Mantine UI
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-03-07 13:16:54 +01:00
Julius Volz 128b6461e9 Start working on /alerts page, factor out rule definition display
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-02-23 17:37:56 +01:00
Julius Volz d6a347e5de Implement several status pages and other general aspects
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-02-21 11:13:48 +01:00