File tree Expand file tree Collapse file tree
packages/divbase-api/src/divbase_api/worker Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1111from celery import Celery
1212from celery .signals import (
1313 after_task_publish ,
14+ beat_init ,
15+ celeryd_init ,
1416 task_prerun ,
1517 worker_process_init ,
1618)
8082)
8183
8284
85+ @celeryd_init .connect
86+ @beat_init .connect
87+ def validate_settings (** kwargs ):
88+ """
89+ Validate worker settings on celery daemon startup (celeryd_init) and celery Beat startup (beat_init)
90+ Will raise an exception if any required settings are missing or settings misconfigured.
91+ """
92+ worker_settings .validate ()
93+ logger .info ("Worker settings validated successfully on worker process init." )
94+
95+
8396@worker_process_init .connect
84- def validate_settings_and_init_worker_metrics (** kwargs ):
97+ def init_worker_metrics (** kwargs ):
8598 """
8699 Start the Prometheus metrics server for the Celery worker. This signal is triggered once per forked worker process.
87100 With celery prefork concurrency=1, only one worker process will start the metrics server.
88101 """
89- worker_settings .validate ()
90- logger .info ("Worker settings validated successfully on worker process init." )
91102 if worker_settings .metrics .enabled_per_task :
103+ logger .info ("Starting worker metrics server on port 8101 (ENABLE_WORKER_METRICS_PER_TASK is set to '1')." )
92104 start_metrics_server (port = 8101 )
93105 else :
94106 logger .info ("Worker metrics collection disabled (ENABLE_WORKER_METRICS_PER_TASK not set to '1')." )
You can’t perform that action at this time.
0 commit comments