Extension de la bibliothèque actuelle avec des métriques supplémentaires

Ne serait-il pas bénéfique d’inclure GitHub - Strech/sidekiq-prometheus-exporter: All the basic metrics of Sidekiq with pluggable contribs prepared for Prometheus · GitHub dans le projet ? Par exemple, je ne trouve pas les compteurs de jobs terminés et échoués avec ce plugin, alors que ce sont parmi les métriques les plus importantes pour détecter d’éventuels échecs…

2 « J'aime »

Ce projet est entièrement autonome et n’est pas quelque chose que nous intégrerions.

Si vous constatez l’absence de métriques, veuillez ouvrir une demande de fonctionnalité (#feature request) pour les ajouter ou les intégrer via une PR.

Malheureusement, Ruby n’est pas mon tasse de thé, donc soumettre une PR semble être un chemin difficile pour moi. Je peux essayer, mais cela impliquera une courbe d’apprentissage raide. D’un autre côté, le dépôt officiel mentionné ci-dessus ne permet pas la création de tickets, ce qui limite les endroits où je peux demander de nouvelles fonctionnalités. À savoir — ici.

C’est pourquoi je demande d’étendre la bibliothèque actuelle avec les métriques listées ci-dessous. Ce qui, non par hasard, correspond à la liste des métriques de la bibliothèque mentionnée plus haut. J’ai déjà marqué celles qui sont disponibles dans la version actuelle. Celles en gras semblent être les plus évidentes pour surveiller pleinement Sidekiq s’exécutant en arrière-plan.

Metric Type Description Métrique déjà implémentée
sidekiq_processed_jobs_total compteur Le nombre total de jobs traités discourse_sidekiq_job_count
sidekiq_failed_jobs_total compteur Le nombre total de jobs échoués
sidekiq_workers jauge Le nombre de workers sur tous les processus discourse_sidekiq_workers
sidekiq_processes jauge Le nombre de processus discourse_sidekiq_processes
sidekiq_busy_workers jauge Le nombre de workers exécutant un job
sidekiq_enqueued_jobs jauge Le nombre de jobs en file d’attente discourse_sidekiq_jobs_enqueued
sidekiq_scheduled_jobs jauge Le nombre de jobs planifiés pour une exécution future
sidekiq_retry_jobs jauge Le nombre de jobs planifiés pour une nouvelle tentative
sidekiq_dead_jobs jauge Le nombre de jobs morts
sidekiq_queue_latency_seconds jauge Le nombre de secondes entre le moment où le job le plus ancien a été mis en file d’attente et l’heure actuelle (labels : name)
sidekiq_queue_max_processing_time_seconds jauge Le nombre de secondes entre le moment où le job le plus ancien de la file d’attente a commencé à être exécuté et l’heure actuelle (labels : name)
sidekiq_queue_enqueued_jobs jauge Le nombre de jobs en file d’attente dans la file (labels : name)

S’il vous plaît, corrigez-moi si j’en ai oublié une ou si j’ai mal compris quelque chose.

1 « J'aime »