Round 343: Thanos ext, Grafana ext, Alertmanager ext, Loki ext, Tempo ext (20 commands)
ober
4b5b286e852205da47a2784c5f2e8e9fa607c2ce
--- a/docs/jemacs-vs-emacs.md +++ b/docs/jemacs-vs-emacs.md @@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features | ebib-import-file | :orange_circle: | Import file into Ebib | | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer | +### Round 343 — Thanos ext, Grafana ext, Alertmanager ext, Loki ext, Tempo ext + +| Feature | Status | Notes | +|---|---|---| +| thanos-query | :orange_circle: | Thanos: PromQL query | +| thanos-store | :orange_circle: | Thanos: store gateway status | +| thanos-compact | :orange_circle: | Thanos: compactor status | +| thanos-rule | :orange_circle: | Thanos: ruler rules | +| grafana-dashboards | :orange_circle: | Grafana: list dashboards | +| grafana-datasources | :orange_circle: | Grafana: list data sources | +| grafana-annotations | :orange_circle: | Grafana: list annotations | +| grafana-alerts | :orange_circle: | Grafana: list alert rules | +| alertmanager-status | :orange_circle: | Alertmanager: show status | +| alertmanager-alerts | :orange_circle: | Alertmanager: active alerts | +| alertmanager-silence | :orange_circle: | Alertmanager: create silence | +| alertmanager-receivers | :orange_circle: | Alertmanager: list receivers | +| loki-query | :orange_circle: | Loki: LogQL query | +| loki-labels | :orange_circle: | Loki: list labels | +| loki-series | :orange_circle: | Loki: query series | +| loki-tail | :orange_circle: | Loki: tail logs | +| tempo-search | :orange_circle: | Tempo: search traces | +| tempo-trace | :orange_circle: | Tempo: fetch trace by ID | +| tempo-tags | :orange_circle: | Tempo: list tag names | +| tempo-metrics | :orange_circle: | Tempo: metrics summary | + ### Round 342 — Ansible ext, Salt ext, Chef ext, Puppet ext, CFEngine ext | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -25195,3 +25195,57 @@ (def (cmd-cfengine-hub app) (let* ((echo (app-state-echo app))) (echo-message! echo "CFEngine: hub status"))) + +;;; Round 343 — Alertmanager ext, Loki ext, Tempo ext (batch 2) + +(def (cmd-alertmanager-silence app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Alertmanager silence matcher: " + (lambda (matcher) + (echo-message! echo (str "Alertmanager: creating silence for " matcher)))))) + +(def (cmd-alertmanager-receivers app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Alertmanager: listing receivers"))) + +(def (cmd-loki-query app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Loki LogQL query: " + (lambda (q) + (echo-message! echo (str "Loki: querying " q)))))) + +(def (cmd-loki-labels app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Loki: listing labels"))) + +(def (cmd-loki-series app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Loki series matcher: " + (lambda (m) + (echo-message! echo (str "Loki: querying series " m)))))) + +(def (cmd-loki-tail app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Loki tail query: " + (lambda (q) + (echo-message! echo (str "Loki: tailing " q)))))) + +(def (cmd-tempo-search app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Tempo search tags: " + (lambda (tags) + (echo-message! echo (str "Tempo: searching traces " tags)))))) + +(def (cmd-tempo-trace app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Tempo trace ID: " + (lambda (id) + (echo-message! echo (str "Tempo: fetching trace " id)))))) + +(def (cmd-tempo-tags app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Tempo: listing tag names"))) + +(def (cmd-tempo-metrics app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Tempo: showing metrics summary"))) --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -25904,3 +25904,47 @@ (echo-read-string echo "Chef generate type (cookbook/recipe): " (lambda (type) (echo-message! echo (str "Chef: generating " type)))))) + +;;; Round 343 — Thanos ext, Grafana ext, Alertmanager ext, Loki ext, Tempo ext (batch 1) + +(def (cmd-thanos-query app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Thanos PromQL query: " + (lambda (q) + (echo-message! echo (str "Thanos: querying " q)))))) + +(def (cmd-thanos-store app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Thanos: showing store gateway status"))) + +(def (cmd-thanos-compact app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Thanos: showing compactor status"))) + +(def (cmd-thanos-rule app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Thanos: listing ruler rules"))) + +(def (cmd-grafana-dashboards app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Grafana: listing dashboards"))) + +(def (cmd-grafana-datasources app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Grafana: listing data sources"))) + +(def (cmd-grafana-annotations app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Grafana: listing annotations"))) + +(def (cmd-grafana-alerts app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Grafana: listing alert rules"))) + +(def (cmd-alertmanager-status app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Alertmanager: showing status"))) + +(def (cmd-alertmanager-alerts app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Alertmanager: listing active alerts"))) --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -8628,4 +8628,26 @@ (register-command! 'cfengine-promises cmd-cfengine-promises) (register-command! 'cfengine-report cmd-cfengine-report) (register-command! 'cfengine-hub cmd-cfengine-hub) + + ;; Round 343 — Thanos ext, Grafana ext, Alertmanager ext, Loki ext, Tempo ext + (register-command! 'thanos-query cmd-thanos-query) + (register-command! 'thanos-store cmd-thanos-store) + (register-command! 'thanos-compact cmd-thanos-compact) + (register-command! 'thanos-rule cmd-thanos-rule) + (register-command! 'grafana-dashboards cmd-grafana-dashboards) + (register-command! 'grafana-datasources cmd-grafana-datasources) + (register-command! 'grafana-annotations cmd-grafana-annotations) + (register-command! 'grafana-alerts cmd-grafana-alerts) + (register-command! 'alertmanager-status cmd-alertmanager-status) + (register-command! 'alertmanager-alerts cmd-alertmanager-alerts) + (register-command! 'alertmanager-silence cmd-alertmanager-silence) + (register-command! 'alertmanager-receivers cmd-alertmanager-receivers) + (register-command! 'loki-query cmd-loki-query) + (register-command! 'loki-labels cmd-loki-labels) + (register-command! 'loki-series cmd-loki-series) + (register-command! 'loki-tail cmd-loki-tail) + (register-command! 'tempo-search cmd-tempo-search) + (register-command! 'tempo-trace cmd-tempo-trace) + (register-command! 'tempo-tags cmd-tempo-tags) + (register-command! 'tempo-metrics cmd-tempo-metrics) )