Wäre es nicht vorteilhaft, GitHub - Strech/sidekiq-prometheus-exporter: All the basic metrics of Sidekiq with pluggable contribs prepared for Prometheus · GitHub in das Projekt aufzunehmen? Mir fehlen beispielsweise mit diesem Plugin die Anzahl der abgeschlossenen und fehlgeschlagenen Jobs, und das ist eine der wichtigsten Kennzahlen, um zu erkennen, ob etwas fehlschlägt…
Dieses Projekt ist vollständig eigenständig und nichts, was wir integrieren würden.
Falls dir Metriken fehlen, erstelle bitte eine #feature-Anfrage, um sie hinzuzufügen, oder füge sie in einem PR hinzu.
Leider ist Ruby nicht mein Fall, daher scheint ein PR für mich ein holpriger Weg zu sein. Ich kann es versuchen, aber für mich wird es eine steile Lernkurve geben. Andererseits erlaubt das oben genannte offizielle Repository keine Erstellung von Tickets, sodass ich nur an wenigen Stellen nach neuen Funktionen fragen kann. Nämlich – hier.
Daher bitte ich darum, die aktuelle Bibliothek um die unten aufgeführten Metriken zu erweitern. Dies ist, nicht zufällig, die Liste der Metriken aus der oben genannten Bibliothek. Ich habe bereits diejenigen markiert, die in der aktuellen Version verfügbar sind. Die fettgedruckten scheinen am offensichtlichsten zu sein, um Sidekiq, das im Hintergrund ausgeführt wird, vollständig zu überwachen.
| Metrik | Typ | Beschreibung | Bereits implementierte Metrik |
|---|---|---|---|
| Counter | Die Gesamtzahl der verarbeiteten Jobs | discourse_sidekiq_job_count | |
| sidekiq_failed_jobs_total | Counter | Die Gesamtzahl der fehlgeschlagenen Jobs | |
| Gauge | Die Anzahl der Worker über alle Prozesse hinweg | discourse_sidekiq_workers | |
| Gauge | Die Anzahl der Prozesse | discourse_sidekiq_processes | |
| sidekiq_busy_workers | Gauge | Die Anzahl der Worker, die einen Job ausführen | |
| Gauge | Die Anzahl der eingereihten Jobs | discourse_sidekiq_jobs_enqueued | |
| sidekiq_scheduled_jobs | Gauge | Die Anzahl der Jobs, die für eine zukünftige Ausführung geplant sind | |
| sidekiq_retry_jobs | Gauge | Die Anzahl der Jobs, die für den nächsten Versuch geplant sind | |
| sidekiq_dead_jobs | Gauge | Die Anzahl der abgestorbenen Jobs | |
| sidekiq_queue_latency_seconds | Gauge | Die Anzahl der Sekunden zwischen dem Einreihen des ältesten Jobs in die Warteschlange und der aktuellen Zeit (Labels: name) | |
| sidekiq_queue_max_processing_time_seconds | Gauge | Die Anzahl der Sekunden zwischen dem Start der Ausführung des ältesten Jobs der Warteschlange und der aktuellen Zeit (Labels: name) | |
| sidekiq_queue_enqueued_jobs | Gauge | Die Anzahl der eingereihten Jobs in der Warteschlange (Labels: name) |
Bitte korrigiert mich, falls ich etwas übersehen oder missverstanden habe.