-
-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Labels
enhancementNew feature or requestNew feature or request
Description
We would like to be able to inject a dependency into the collect function in order to be able to monitor resources configured by another nest provider for example a queue.
We have done a POC to work around the fact there seems to be no way to do this as so:
{
provide: getToken('queue_size_scheduled_queue'),
inject: [getQueueToken('scheduledQueue')],
useFactory: (queue) => {
return getOrCreateMetric('Gauge', {
name: 'queue_size_scheduled_queue',
help: 'todo',
collect: async function () {
const value = await queue.getWaitingCount();
this.set(value);
},
});
},
}
In an ideal world we would like to use an api such as:
makeGaugeProvider({
name: 'queue_size_scheduled_queue',
help: 'some help',
collectInject: [getQueueToken('scheduledQueue')],
collect: async function (queue) {
const value = await queue.getWaitingCount();
this.set(value);
}
})
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request