Migrate metrics to prometheus (#17810)
<img width="1316" height="611" alt="image" src="https://github.com/user-attachments/assets/277a63ed-2a8b-41ff-be78-281de8891579" />
This commit is contained in:
+10
-6
@@ -52,15 +52,17 @@ export class BullMQDriver
|
||||
) {}
|
||||
|
||||
onModuleInit() {
|
||||
this.metricsService.createObservableGauge(
|
||||
'twenty_queue_jobs_waiting_total',
|
||||
{ description: 'Current number of jobs waiting in queue' },
|
||||
async (observableResult) => {
|
||||
this.metricsService.createObservableGauge({
|
||||
metricName: 'twenty_queue_jobs_waiting_total',
|
||||
options: { description: 'Current number of jobs waiting in queue' },
|
||||
callback: async () => {
|
||||
let totalWaiting = 0;
|
||||
|
||||
for (const [queueName, queue] of Object.entries(this.queueMap)) {
|
||||
try {
|
||||
const waitingCount = await queue.count();
|
||||
|
||||
observableResult.observe(waitingCount, { queue: queueName });
|
||||
totalWaiting += waitingCount;
|
||||
} catch (error) {
|
||||
this.logger.error(
|
||||
`Failed to collect waiting jobs metrics for queue ${queueName}`,
|
||||
@@ -68,8 +70,10 @@ export class BullMQDriver
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
return totalWaiting;
|
||||
},
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
register(queueName: MessageQueue): void {
|
||||
|
||||
Reference in New Issue
Block a user