mirror of
https://github.com/Unleash/unleash.git
synced 2025-09-10 17:53:36 +02:00
Ability to execute a task immediately
This commit is contained in:
parent
8cda5cd986
commit
e2cd347e8e
@ -22,17 +22,19 @@ export class DbMetricsMonitor {
|
||||
|
||||
constructor() {}
|
||||
|
||||
registerGaugeDbMetric<T>(definition: GaugeDefinition<T>) {
|
||||
registerGaugeDbMetric<T>(definition: GaugeDefinition<T>): Task {
|
||||
const gauge = createGauge(definition);
|
||||
this.gauges.set(definition.name, gauge);
|
||||
this.tasks.add(async () => {
|
||||
const task = async () => {
|
||||
const result = await definition.query();
|
||||
if (result) {
|
||||
if (result !== null && result !== undefined) {
|
||||
const { count, labels } = definition.map(result);
|
||||
gauge.reset();
|
||||
gauge.labels(labels).set(count);
|
||||
}
|
||||
});
|
||||
};
|
||||
this.tasks.add(task);
|
||||
return task;
|
||||
}
|
||||
|
||||
refreshDbMetrics = async () => {
|
||||
|
@ -117,13 +117,16 @@ export default class MetricsMonitor {
|
||||
help: 'Number of times a feature flag has been used',
|
||||
labelNames: ['toggle', 'active', 'appName'],
|
||||
});
|
||||
dbMetrics.registerGaugeDbMetric({
|
||||
|
||||
// schedule and execute immediately
|
||||
await dbMetrics.registerGaugeDbMetric({
|
||||
name: 'feature_toggles_total',
|
||||
help: 'Number of feature flags',
|
||||
labelNames: ['version'],
|
||||
query: () => instanceStatsService.getToggleCount(),
|
||||
map: (count) => ({ count, labels: { version } }),
|
||||
});
|
||||
})();
|
||||
|
||||
dbMetrics.registerGaugeDbMetric({
|
||||
name: 'max_feature_environment_strategies',
|
||||
help: 'Maximum number of environment strategies in one feature',
|
||||
|
Loading…
Reference in New Issue
Block a user