@henrychong-ai/mcp-neo4j-knowledge-graph 1.1.7 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +69 -0
  2. package/dist/embeddings/EmbeddingJobManager.d.ts +15 -0
  3. package/dist/embeddings/EmbeddingJobManager.js +72 -0
  4. package/dist/embeddings/EmbeddingJobManager.js.map +1 -1
  5. package/dist/index.js +51 -16
  6. package/dist/index.js.map +1 -1
  7. package/dist/metrics/PrometheusMetrics.d.ts +71 -0
  8. package/dist/metrics/PrometheusMetrics.js +159 -0
  9. package/dist/metrics/PrometheusMetrics.js.map +1 -0
  10. package/dist/retrieval/HybridRetriever.d.ts +53 -0
  11. package/dist/retrieval/HybridRetriever.js +161 -0
  12. package/dist/retrieval/HybridRetriever.js.map +1 -0
  13. package/dist/retrieval/index.d.ts +11 -0
  14. package/dist/retrieval/index.js +10 -0
  15. package/dist/retrieval/index.js.map +1 -0
  16. package/dist/retrieval/scorers/ConnectionStrengthScorer.d.ts +37 -0
  17. package/dist/retrieval/scorers/ConnectionStrengthScorer.js +117 -0
  18. package/dist/retrieval/scorers/ConnectionStrengthScorer.js.map +1 -0
  19. package/dist/retrieval/scorers/GraphTraversalScorer.d.ts +32 -0
  20. package/dist/retrieval/scorers/GraphTraversalScorer.js +106 -0
  21. package/dist/retrieval/scorers/GraphTraversalScorer.js.map +1 -0
  22. package/dist/retrieval/scorers/TemporalFreshnessScorer.d.ts +40 -0
  23. package/dist/retrieval/scorers/TemporalFreshnessScorer.js +105 -0
  24. package/dist/retrieval/scorers/TemporalFreshnessScorer.js.map +1 -0
  25. package/dist/retrieval/scorers/VectorSimilarityScorer.d.ts +20 -0
  26. package/dist/retrieval/scorers/VectorSimilarityScorer.js +69 -0
  27. package/dist/retrieval/scorers/VectorSimilarityScorer.js.map +1 -0
  28. package/dist/retrieval/types.d.ts +161 -0
  29. package/dist/retrieval/types.js +16 -0
  30. package/dist/retrieval/types.js.map +1 -0
  31. package/dist/server/handlers/callToolHandler.js +15 -0
  32. package/dist/server/handlers/callToolHandler.js.map +1 -1
  33. package/dist/storage/neo4j/Neo4jStorageProvider.d.ts +19 -0
  34. package/dist/storage/neo4j/Neo4jStorageProvider.js +192 -8
  35. package/dist/storage/neo4j/Neo4jStorageProvider.js.map +1 -1
  36. package/package.json +7 -4
package/README.md CHANGED
@@ -466,8 +466,77 @@ OPENAI_EMBEDDING_MODEL=text-embedding-3-small
466
466
 
467
467
  # Debug Settings
468
468
  DEBUG=true
469
+
470
+ # Prometheus Metrics (Optional - Production Monitoring)
471
+ ENABLE_PROMETHEUS_METRICS=true # Enable metrics collection and HTTP endpoint
472
+ ```
473
+
474
+ ### Prometheus Metrics
475
+
476
+ The MCP server includes built-in Prometheus metrics for production observability. Metrics are **disabled by default** to minimize local machine overhead and only enabled when explicitly configured.
477
+
478
+ #### Enabling Metrics
479
+
480
+ Set the environment variable to enable metrics collection:
481
+
482
+ ```bash
483
+ export ENABLE_PROMETHEUS_METRICS=true
484
+ ```
485
+
486
+ When enabled, the metrics server starts on **port 9091** and exposes a `/metrics` endpoint in Prometheus exposition format.
487
+
488
+ #### Available Metrics
489
+
490
+ **Query Performance:**
491
+ - `mcp_query_duration_seconds` - Histogram tracking query execution time
492
+ - Labels: `operation` (loadGraph, searchNodes, openNodes, semanticSearch), `cache_status` (hit, miss, disabled)
493
+ - Buckets: 1ms, 5ms, 10ms, 50ms, 100ms, 500ms, 1s, 5s
494
+
495
+ **Cache Performance (ready for future cache integration):**
496
+ - `mcp_cache_hits_total` - Counter for cache hits
497
+ - `mcp_cache_misses_total` - Counter for cache misses
498
+ - `mcp_cache_invalidations_total` - Counter for cache invalidations
499
+ - `mcp_cache_size_current` - Gauge for current cache size
500
+
501
+ **Process Metrics:**
502
+ - Default Node.js process metrics (CPU, memory, event loop, garbage collection)
503
+
504
+ #### Accessing Metrics
505
+
506
+ Once enabled, metrics are available at:
507
+
508
+ ```bash
509
+ curl http://localhost:9091/metrics
469
510
  ```
470
511
 
512
+ #### Production Deployment
513
+
514
+ For production deployments (e.g., vps-2), configure Prometheus to scrape the metrics endpoint:
515
+
516
+ ```yaml
517
+ scrape_configs:
518
+ - job_name: "mcp-kg-server"
519
+ scrape_interval: 30s
520
+ static_configs:
521
+ - targets: ["localhost:9091"]
522
+ labels:
523
+ instance: "mcp-neo4j-knowledge-graph"
524
+ environment: "production"
525
+ ```
526
+
527
+ Metrics can then be visualized in Grafana with custom dashboards showing:
528
+ - Query performance trends
529
+ - Cache hit/miss ratios
530
+ - System resource utilization
531
+ - Operation latency distributions
532
+
533
+ #### Port Selection
534
+
535
+ Port 9091 is chosen to avoid conflicts with common Prometheus exporters:
536
+ - 9090: Prometheus server
537
+ - 9099: neo4j-exporter
538
+ - 9100: node-exporter
539
+
471
540
  ### Command Line Options
472
541
 
473
542
  The Neo4j CLI tools support the following options:
@@ -208,5 +208,20 @@ export declare class EmbeddingJobManager {
208
208
  * @returns Cached embedding or undefined
209
209
  */
210
210
  getCacheEntry(key: string): CachedEmbedding | undefined;
211
+ /**
212
+ * Schedule incremental regeneration for entities without embeddings
213
+ * This method queries all entities and schedules embedding jobs only for those missing embeddings
214
+ *
215
+ * @returns Number of entities scheduled for embedding generation
216
+ */
217
+ scheduleIncrementalRegeneration(): Promise<number>;
218
+ /**
219
+ * Get all entities from storage provider
220
+ * This is a helper method to retrieve all entities for incremental regeneration
221
+ *
222
+ * @private
223
+ * @returns Array of all entities
224
+ */
225
+ private _getAllEntitiesFromStorage;
211
226
  }
212
227
  export {};
@@ -541,5 +541,77 @@ export class EmbeddingJobManager {
541
541
  getCacheEntry(key) {
542
542
  return this.cache.get(key);
543
543
  }
544
+ /**
545
+ * Schedule incremental regeneration for entities without embeddings
546
+ * This method queries all entities and schedules embedding jobs only for those missing embeddings
547
+ *
548
+ * @returns Number of entities scheduled for embedding generation
549
+ */
550
+ async scheduleIncrementalRegeneration() {
551
+ this.logger.info('Starting incremental embedding regeneration check');
552
+ try {
553
+ // Get all entities from storage
554
+ const allEntities = await this._getAllEntitiesFromStorage();
555
+ this.logger.debug('Retrieved entities for embedding check', {
556
+ totalCount: allEntities.length
557
+ });
558
+ // Filter for entities without embeddings
559
+ const entitiesWithoutEmbeddings = allEntities.filter(entity => !entity.embedding);
560
+ this.logger.info('Found entities without embeddings', {
561
+ count: entitiesWithoutEmbeddings.length,
562
+ totalEntities: allEntities.length,
563
+ coverage: `${Math.round((allEntities.length - entitiesWithoutEmbeddings.length) / allEntities.length * 100)}%`
564
+ });
565
+ // Schedule embedding jobs for entities without embeddings
566
+ let scheduledCount = 0;
567
+ for (const entity of entitiesWithoutEmbeddings) {
568
+ try {
569
+ await this.scheduleEntityEmbedding(entity.name, 1);
570
+ scheduledCount++;
571
+ }
572
+ catch (error) {
573
+ this.logger.warn('Failed to schedule embedding for entity', {
574
+ entityName: entity.name,
575
+ error: error instanceof Error ? error.message : String(error)
576
+ });
577
+ }
578
+ }
579
+ this.logger.info('Incremental regeneration scheduling complete', {
580
+ scheduled: scheduledCount,
581
+ missing: entitiesWithoutEmbeddings.length
582
+ });
583
+ return scheduledCount;
584
+ }
585
+ catch (error) {
586
+ this.logger.error('Failed during incremental regeneration', {
587
+ error: error instanceof Error ? error.message : String(error),
588
+ stack: error instanceof Error ? error.stack : undefined
589
+ });
590
+ throw error;
591
+ }
592
+ }
593
+ /**
594
+ * Get all entities from storage provider
595
+ * This is a helper method to retrieve all entities for incremental regeneration
596
+ *
597
+ * @private
598
+ * @returns Array of all entities
599
+ */
600
+ async _getAllEntitiesFromStorage() {
601
+ // Use the storage provider's loadGraph method to get all entities
602
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
603
+ const storageProviderAny = this.storageProvider;
604
+ if (typeof storageProviderAny.loadGraph === 'function') {
605
+ const graph = await storageProviderAny.loadGraph();
606
+ return graph.entities || [];
607
+ }
608
+ else if (typeof storageProviderAny.getAllEntities === 'function') {
609
+ return await storageProviderAny.getAllEntities();
610
+ }
611
+ else {
612
+ this.logger.error('Storage provider does not support entity retrieval');
613
+ throw new Error('Storage provider does not support getAllEntities or loadGraph');
614
+ }
615
+ }
544
616
  }
545
617
  //# sourceMappingURL=EmbeddingJobManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmbeddingJobManager.js","sourceRoot":"","sources":["../../src/embeddings/EmbeddingJobManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EmbeddingJobManager.js","sourceRoot":"","sources":["../../src/embeddings/EmbeddingJobManager.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,13 +5,18 @@ import { initializeStorageProvider } from './config/storage.js';
5
5
  import { setupServer } from './server/setup.js';
6
6
  import { EmbeddingJobManager } from './embeddings/EmbeddingJobManager.js';
7
7
  import { EmbeddingServiceFactory } from './embeddings/EmbeddingServiceFactory.js';
8
+ import { PrometheusMetrics } from './metrics/PrometheusMetrics.js';
8
9
  import { logger } from './utils/logger.js';
10
+ import cron from 'node-cron';
9
11
  // Re-export the types and classes for use in other modules
10
12
  export * from './KnowledgeGraphManager.js';
11
13
  // Export the Relation type
12
14
  export { Relation } from './types/relation.js';
13
15
  // Initialize storage and create KnowledgeGraphManager
14
16
  const storageProvider = initializeStorageProvider();
17
+ // Initialize Prometheus metrics (environment-gated)
18
+ const prometheusMetrics = PrometheusMetrics.getInstance();
19
+ prometheusMetrics.startServer(9091);
15
20
  // Initialize embedding job manager only if storage provider supports it
16
21
  let embeddingJobManager = undefined;
17
22
  try {
@@ -106,21 +111,7 @@ try {
106
111
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
112
  adaptedStorageProvider, embeddingService, rateLimiterOptions, null, // Use default cache options
108
113
  logger);
109
- // Schedule periodic processing for embedding jobs
110
- const EMBEDDING_PROCESS_INTERVAL = 10000; // 10 seconds - more frequent processing
111
- setInterval(async () => {
112
- try {
113
- // Process pending embedding jobs
114
- await embeddingJobManager?.processJobs(10);
115
- }
116
- catch (error) {
117
- // Log error but don't crash
118
- logger.error('Error in scheduled job processing', {
119
- error: error instanceof Error ? error.message : String(error),
120
- stack: error instanceof Error ? error.stack : undefined,
121
- });
122
- }
123
- }, EMBEDDING_PROCESS_INTERVAL);
114
+ logger.info('EmbeddingJobManager initialized (background jobs will start only in production)');
124
115
  }
125
116
  catch (error) {
126
117
  // Fail gracefully if embedding job manager initialization fails
@@ -209,8 +200,52 @@ export async function main() {
209
200
  const transport = new StdioServerTransport();
210
201
  await server.connect(transport);
211
202
  }
212
- // Only run main if not in a test environment
203
+ // Only run main and background jobs if not in a test environment
213
204
  if (!process.env.VITEST && !process.env.NODE_ENV?.includes('test')) {
205
+ // Schedule periodic processing for embedding jobs (production only)
206
+ if (embeddingJobManager) {
207
+ const EMBEDDING_PROCESS_INTERVAL = 10000; // 10 seconds - more frequent processing
208
+ setInterval(async () => {
209
+ try {
210
+ // Process pending embedding jobs
211
+ await embeddingJobManager?.processJobs(10);
212
+ }
213
+ catch (error) {
214
+ // Log error but don't crash
215
+ logger.error('Error in scheduled job processing', {
216
+ error: error instanceof Error ? error.message : String(error),
217
+ stack: error instanceof Error ? error.stack : undefined,
218
+ });
219
+ }
220
+ }, EMBEDDING_PROCESS_INTERVAL);
221
+ // Schedule daily incremental embedding regeneration
222
+ // Runs at 3 AM Singapore time (19:00 UTC = 3 AM UTC+8)
223
+ cron.schedule('0 19 * * *', async () => {
224
+ logger.info('Starting daily incremental embedding regeneration (3 AM SGT)');
225
+ try {
226
+ const scheduledCount = await embeddingJobManager?.scheduleIncrementalRegeneration();
227
+ logger.info('Daily regeneration completed', {
228
+ entitiesScheduled: scheduledCount,
229
+ time: new Date().toISOString(),
230
+ });
231
+ }
232
+ catch (error) {
233
+ logger.error('Daily regeneration failed', {
234
+ error: error instanceof Error ? error.message : String(error),
235
+ stack: error instanceof Error ? error.stack : undefined,
236
+ time: new Date().toISOString(),
237
+ });
238
+ }
239
+ }, {
240
+ timezone: 'UTC',
241
+ });
242
+ logger.info('Embedding automation configured', {
243
+ periodicProcessing: `Every ${EMBEDDING_PROCESS_INTERVAL}ms`,
244
+ dailyRegeneration: '3 AM Singapore time (19:00 UTC)',
245
+ timezone: 'UTC',
246
+ });
247
+ }
248
+ // Start MCP server
214
249
  main().catch((error) => {
215
250
  // Log error but don't use console.error
216
251
  logger.error(`Main process terminated: ${error}`);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import promClient from 'prom-client';
2
+ /**
3
+ * PrometheusMetrics - Manages Prometheus metrics collection for the MCP Knowledge Graph server
4
+ *
5
+ * Provides metrics for:
6
+ * - Query result cache performance (hits, misses, invalidations)
7
+ * - Cache size monitoring
8
+ * - Query execution duration with cache status tracking
9
+ *
10
+ * Metrics are exposed on /metrics endpoint on port 9091 when enabled via environment variable.
11
+ */
12
+ export declare class PrometheusMetrics {
13
+ private static instance;
14
+ private register;
15
+ private server;
16
+ readonly cacheHits: promClient.Counter;
17
+ readonly cacheMisses: promClient.Counter;
18
+ readonly cacheInvalidations: promClient.Counter;
19
+ readonly cacheSize: promClient.Gauge;
20
+ readonly queryDuration: promClient.Histogram;
21
+ private constructor();
22
+ /**
23
+ * Get singleton instance of PrometheusMetrics
24
+ */
25
+ static getInstance(): PrometheusMetrics;
26
+ /**
27
+ * Start the metrics HTTP server on specified port
28
+ * Only starts if ENABLE_PROMETHEUS_METRICS=true in environment
29
+ */
30
+ startServer(port?: number): void;
31
+ /**
32
+ * Stop the metrics HTTP server
33
+ */
34
+ stopServer(): void;
35
+ /**
36
+ * Record a cache hit
37
+ */
38
+ recordCacheHit(): void;
39
+ /**
40
+ * Record a cache miss
41
+ */
42
+ recordCacheMiss(): void;
43
+ /**
44
+ * Record a cache invalidation
45
+ */
46
+ recordCacheInvalidation(): void;
47
+ /**
48
+ * Update current cache size
49
+ */
50
+ updateCacheSize(size: number): void;
51
+ /**
52
+ * Record query execution duration
53
+ * @param durationSeconds - Duration in seconds
54
+ * @param cacheStatus - 'hit' | 'miss' | 'disabled'
55
+ * @param operation - Operation name (e.g., 'readGraph', 'searchNodes')
56
+ */
57
+ recordQueryDuration(durationSeconds: number, cacheStatus: 'hit' | 'miss' | 'disabled', operation: string): void;
58
+ /**
59
+ * Create a timer for measuring query duration
60
+ * Returns a function that stops the timer and records the metric
61
+ */
62
+ startQueryTimer(operation: string): (cacheStatus: 'hit' | 'miss' | 'disabled') => void;
63
+ /**
64
+ * Get metrics in Prometheus exposition format
65
+ */
66
+ getMetrics(): Promise<string>;
67
+ /**
68
+ * Reset all metrics (useful for testing)
69
+ */
70
+ reset(): void;
71
+ }
@@ -0,0 +1,159 @@
1
+ import promClient from 'prom-client';
2
+ import http from 'http';
3
+ /**
4
+ * PrometheusMetrics - Manages Prometheus metrics collection for the MCP Knowledge Graph server
5
+ *
6
+ * Provides metrics for:
7
+ * - Query result cache performance (hits, misses, invalidations)
8
+ * - Cache size monitoring
9
+ * - Query execution duration with cache status tracking
10
+ *
11
+ * Metrics are exposed on /metrics endpoint on port 9091 when enabled via environment variable.
12
+ */
13
+ export class PrometheusMetrics {
14
+ constructor() {
15
+ this.server = null;
16
+ this.register = new promClient.Registry();
17
+ // Add default metrics (process CPU, memory, etc.)
18
+ promClient.collectDefaultMetrics({ register: this.register });
19
+ // Initialize cache hit counter
20
+ this.cacheHits = new promClient.Counter({
21
+ name: 'mcp_cache_hits_total',
22
+ help: 'Total number of cache hits',
23
+ registers: [this.register],
24
+ });
25
+ // Initialize cache miss counter
26
+ this.cacheMisses = new promClient.Counter({
27
+ name: 'mcp_cache_misses_total',
28
+ help: 'Total number of cache misses',
29
+ registers: [this.register],
30
+ });
31
+ // Initialize cache invalidation counter
32
+ this.cacheInvalidations = new promClient.Counter({
33
+ name: 'mcp_cache_invalidations_total',
34
+ help: 'Total number of cache invalidations',
35
+ registers: [this.register],
36
+ });
37
+ // Initialize cache size gauge
38
+ this.cacheSize = new promClient.Gauge({
39
+ name: 'mcp_cache_size_current',
40
+ help: 'Current number of items in the cache',
41
+ registers: [this.register],
42
+ });
43
+ // Initialize query duration histogram
44
+ this.queryDuration = new promClient.Histogram({
45
+ name: 'mcp_query_duration_seconds',
46
+ help: 'Query execution duration in seconds',
47
+ labelNames: ['cache_status', 'operation'],
48
+ buckets: [0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5], // 1ms to 5s
49
+ registers: [this.register],
50
+ });
51
+ }
52
+ /**
53
+ * Get singleton instance of PrometheusMetrics
54
+ */
55
+ static getInstance() {
56
+ if (!PrometheusMetrics.instance) {
57
+ PrometheusMetrics.instance = new PrometheusMetrics();
58
+ }
59
+ return PrometheusMetrics.instance;
60
+ }
61
+ /**
62
+ * Start the metrics HTTP server on specified port
63
+ * Only starts if ENABLE_PROMETHEUS_METRICS=true in environment
64
+ */
65
+ startServer(port = 9091) {
66
+ const enabled = process.env.ENABLE_PROMETHEUS_METRICS === 'true';
67
+ if (!enabled) {
68
+ console.log('[PrometheusMetrics] Metrics collection disabled (ENABLE_PROMETHEUS_METRICS != true)');
69
+ return;
70
+ }
71
+ if (this.server) {
72
+ console.log(`[PrometheusMetrics] Server already running on port ${port}`);
73
+ return;
74
+ }
75
+ this.server = http.createServer(async (req, res) => {
76
+ if (req.url === '/metrics') {
77
+ res.setHeader('Content-Type', this.register.contentType);
78
+ const metrics = await this.register.metrics();
79
+ res.end(metrics);
80
+ }
81
+ else {
82
+ res.statusCode = 404;
83
+ res.end('Not Found');
84
+ }
85
+ });
86
+ this.server.listen(port, () => {
87
+ console.log(`[PrometheusMetrics] Metrics server listening on http://localhost:${port}/metrics`);
88
+ });
89
+ }
90
+ /**
91
+ * Stop the metrics HTTP server
92
+ */
93
+ stopServer() {
94
+ if (this.server) {
95
+ this.server.close(() => {
96
+ console.log('[PrometheusMetrics] Metrics server stopped');
97
+ });
98
+ this.server = null;
99
+ }
100
+ }
101
+ /**
102
+ * Record a cache hit
103
+ */
104
+ recordCacheHit() {
105
+ this.cacheHits.inc();
106
+ }
107
+ /**
108
+ * Record a cache miss
109
+ */
110
+ recordCacheMiss() {
111
+ this.cacheMisses.inc();
112
+ }
113
+ /**
114
+ * Record a cache invalidation
115
+ */
116
+ recordCacheInvalidation() {
117
+ this.cacheInvalidations.inc();
118
+ }
119
+ /**
120
+ * Update current cache size
121
+ */
122
+ updateCacheSize(size) {
123
+ this.cacheSize.set(size);
124
+ }
125
+ /**
126
+ * Record query execution duration
127
+ * @param durationSeconds - Duration in seconds
128
+ * @param cacheStatus - 'hit' | 'miss' | 'disabled'
129
+ * @param operation - Operation name (e.g., 'readGraph', 'searchNodes')
130
+ */
131
+ recordQueryDuration(durationSeconds, cacheStatus, operation) {
132
+ this.queryDuration.observe({ cache_status: cacheStatus, operation }, durationSeconds);
133
+ }
134
+ /**
135
+ * Create a timer for measuring query duration
136
+ * Returns a function that stops the timer and records the metric
137
+ */
138
+ startQueryTimer(operation) {
139
+ const start = Date.now();
140
+ return (cacheStatus) => {
141
+ const durationSeconds = (Date.now() - start) / 1000;
142
+ this.recordQueryDuration(durationSeconds, cacheStatus, operation);
143
+ };
144
+ }
145
+ /**
146
+ * Get metrics in Prometheus exposition format
147
+ */
148
+ async getMetrics() {
149
+ return await this.register.metrics();
150
+ }
151
+ /**
152
+ * Reset all metrics (useful for testing)
153
+ */
154
+ reset() {
155
+ this.register.resetMetrics();
156
+ }
157
+ }
158
+ PrometheusMetrics.instance = null;
159
+ //# sourceMappingURL=PrometheusMetrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrometheusMetrics.js","sourceRoot":"","sources":["../../src/metrics/PrometheusMetrics.ts"],"names":[],"mappings":"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"}