Features: Prometheus for celery workers
This commit is contained in:
parent
8db354c85a
commit
5b2c642afc
4 changed files with 21 additions and 11 deletions
|
|
@ -83,7 +83,7 @@ services:
|
||||||
--max-tasks-per-child=100 \
|
--max-tasks-per-child=100 \
|
||||||
--max-memory-per-child=512000 \
|
--max-memory-per-child=512000 \
|
||||||
--soft-time-limit=10800 \
|
--soft-time-limit=10800 \
|
||||||
--time-limit=21600"
|
--time-limit=21600 & poetry run celery_prometheus_exporter"
|
||||||
volumes:
|
volumes:
|
||||||
- .:/app
|
- .:/app
|
||||||
env_file:
|
env_file:
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,7 @@ scrape_configs:
|
||||||
metrics_path: /prometheus/metrics
|
metrics_path: /prometheus/metrics
|
||||||
scheme: http
|
scheme: http
|
||||||
static_configs:
|
static_configs:
|
||||||
- targets: [ 'worker:8000' ]
|
- targets: [ 'worker:8888' ]
|
||||||
|
|
||||||
- job_name: 'evibes-beat'
|
|
||||||
metrics_path: /prometheus/metrics
|
|
||||||
scheme: http
|
|
||||||
static_configs:
|
|
||||||
- targets: [ 'beat:8000' ]
|
|
||||||
|
|
||||||
# - job_name: 'redis'
|
# - job_name: 'redis'
|
||||||
# static_configs:
|
# static_configs:
|
||||||
|
|
|
||||||
19
poetry.lock
generated
19
poetry.lock
generated
|
|
@ -397,6 +397,21 @@ yaml = ["PyYAML (>=3.10)"]
|
||||||
zookeeper = ["kazoo (>=1.3.1)"]
|
zookeeper = ["kazoo (>=1.3.1)"]
|
||||||
zstd = ["zstandard (==0.23.0)"]
|
zstd = ["zstandard (==0.23.0)"]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "celery-prometheus-exporter"
|
||||||
|
version = "1.7.0"
|
||||||
|
description = "Simple Prometheus metrics exporter for Celery"
|
||||||
|
optional = true
|
||||||
|
python-versions = "*"
|
||||||
|
files = [
|
||||||
|
{ file = "celery-prometheus-exporter-1.7.0.tar.gz", hash = "sha256:8fc2d5909921c44f01c8c1b7d956d92e6966f2e14eec196bf60735e39a0e0991" },
|
||||||
|
{ file = "celery_prometheus_exporter-1.7.0-py2-none-any.whl", hash = "sha256:a3ba0d3340b546ae82b36fef7645ccbc54c2b696fc3df05bb9ee28a402e710e1" },
|
||||||
|
]
|
||||||
|
|
||||||
|
[package.dependencies]
|
||||||
|
celery = ">=3"
|
||||||
|
prometheus-client = ">=0.0.20"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "certifi"
|
name = "certifi"
|
||||||
version = "2025.4.26"
|
version = "2025.4.26"
|
||||||
|
|
@ -4502,9 +4517,9 @@ type = ["pytest-mypy"]
|
||||||
ai = ["openai"]
|
ai = ["openai"]
|
||||||
graph = ["pygraphviz"]
|
graph = ["pygraphviz"]
|
||||||
jupyter = ["jupyter"]
|
jupyter = ["jupyter"]
|
||||||
worker = ["celery", "django-celery-beat", "django-celery-results"]
|
worker = ["celery", "celery-prometheus-exporter", "django-celery-beat", "django-celery-results"]
|
||||||
|
|
||||||
[metadata]
|
[metadata]
|
||||||
lock-version = "2.0"
|
lock-version = "2.0"
|
||||||
python-versions = ">=3.12,<3.13"
|
python-versions = ">=3.12,<3.13"
|
||||||
content-hash = "41d93348d32ac7451ed8251fda80b409ae24ba8cc7cb2b28ef525114f5d4823b"
|
content-hash = "8381fcab87bd578eaae8f88e24133866b78914a1967df332cdc09189d1fbd937"
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ cryptography = "44.0.3"
|
||||||
redis = "6.0.0"
|
redis = "6.0.0"
|
||||||
httpx = "0.28.1"
|
httpx = "0.28.1"
|
||||||
celery = { version = "5.5.2", optional = true }
|
celery = { version = "5.5.2", optional = true }
|
||||||
|
celery-prometheus-exporter = { version = "1.7.0", optional = true }
|
||||||
pillow = "11.2.1"
|
pillow = "11.2.1"
|
||||||
south = "1.0.2"
|
south = "1.0.2"
|
||||||
pygraphviz = { version = "1.14", optional = true }
|
pygraphviz = { version = "1.14", optional = true }
|
||||||
|
|
@ -69,7 +70,7 @@ drf-spectacular = { extras = ["sidecar"], version = "0.28.0" }
|
||||||
|
|
||||||
[tool.poetry.extras]
|
[tool.poetry.extras]
|
||||||
graph = ["pygraphviz"]
|
graph = ["pygraphviz"]
|
||||||
worker = ["celery", "django-celery-beat", "django-celery-results"]
|
worker = ["celery", "django-celery-beat", "django-celery-results", "celery-prometheus-exporter"]
|
||||||
AI = ["openai"]
|
AI = ["openai"]
|
||||||
jupyter = ["jupyter"]
|
jupyter = ["jupyter"]
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue