Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prometheus Exporter #1303

Merged
merged 6 commits into from
Dec 6, 2024
Merged

Prometheus Exporter #1303

merged 6 commits into from
Dec 6, 2024

Conversation

eliasol
Copy link
Contributor

@eliasol eliasol commented Dec 6, 2024

Add a new command: cmsPrometheusExporter

This will start a new HTTP server that listens on a port (defaults to 8811) for requests to /metrics. At this endpoint many metrics about a contest (or all contests) are exposed for Prometheus to be collected. Those metrics consider both system values (queue status, connected workers, ...) and contest values (submissions, users, questions, ...)

This exporter works by executing simple queries to the database, and obtains the queue information asking Evaluation Service.

The metrics exposed may leak information about the contest, so it's important to secure this endpoint (for example using a reverse proxy, or binding localhost).

With this exporter it's possible to build interactive and real-time dashboard for monitoring the status of the contest.

@veluca93 veluca93 mentioned this pull request Dec 6, 2024
Copy link

codecov bot commented Dec 6, 2024

Codecov Report

Attention: Patch coverage is 0% with 151 lines in your changes missing coverage. Please review.

Please upload report for BASE (master@6aa76fc). Learn more about missing BASE report.
Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
cmscontrib/PrometheusExporter.py 0.00% 151 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff            @@
##             master    #1303   +/-   ##
=========================================
  Coverage          ?   68.60%           
=========================================
  Files             ?      330           
  Lines             ?    26316           
  Branches          ?        0           
=========================================
  Hits              ?    18055           
  Misses            ?     8261           
  Partials          ?        0           
Flag Coverage Δ
functionaltests 46.54% <0.00%> (?)
unittests 55.99% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@eliasol eliasol force-pushed the prometheus-exporter branch from 659ed10 to db2b478 Compare December 6, 2024 11:07
veluca93
veluca93 previously approved these changes Dec 6, 2024
@veluca93 veluca93 merged commit df9a5fa into cms-dev:master Dec 6, 2024
3 checks passed
@eliasol eliasol deleted the prometheus-exporter branch December 6, 2024 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants