@newrelic/preflight 1.6.4 → 1.6.6
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.
- package/dist/alerts/local-alert-rule.d.ts +0 -2
- package/dist/alerts/local-alert-rule.d.ts.map +1 -1
- package/dist/alerts/local-alert-rule.js.map +1 -1
- package/dist/config.js +4 -4
- package/dist/config.js.map +1 -1
- package/dist/metrics/cost-per-outcome.d.ts +0 -8
- package/dist/metrics/cost-per-outcome.d.ts.map +1 -1
- package/dist/metrics/cost-per-outcome.js.map +1 -1
- package/dist/metrics/cost-tracker.d.ts +0 -2
- package/dist/metrics/cost-tracker.d.ts.map +1 -1
- package/dist/metrics/cost-tracker.js.map +1 -1
- package/dist/shared/config.d.ts +0 -5
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +5 -12
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/errors.d.ts +0 -6
- package/dist/shared/errors.d.ts.map +1 -1
- package/dist/shared/errors.js +15 -15
- package/dist/shared/errors.js.map +1 -1
- package/dist/shared/events/factory.d.ts.map +1 -1
- package/dist/shared/events/factory.js +31 -12
- package/dist/shared/events/factory.js.map +1 -1
- package/dist/shared/events/serialize.d.ts +10 -11
- package/dist/shared/events/serialize.d.ts.map +1 -1
- package/dist/shared/events/serialize.js +23 -24
- package/dist/shared/events/serialize.js.map +1 -1
- package/dist/shared/harvest/event-buffer.d.ts +2 -3
- package/dist/shared/harvest/event-buffer.d.ts.map +1 -1
- package/dist/shared/harvest/event-buffer.js +7 -8
- package/dist/shared/harvest/event-buffer.js.map +1 -1
- package/dist/shared/harvest/harvest-scheduler.d.ts +4 -7
- package/dist/shared/harvest/harvest-scheduler.d.ts.map +1 -1
- package/dist/shared/harvest/harvest-scheduler.js +10 -38
- package/dist/shared/harvest/harvest-scheduler.js.map +1 -1
- package/dist/shared/harvest/metric-aggregator.d.ts +9 -24
- package/dist/shared/harvest/metric-aggregator.d.ts.map +1 -1
- package/dist/shared/harvest/metric-aggregator.js +16 -25
- package/dist/shared/harvest/metric-aggregator.js.map +1 -1
- package/dist/shared/logger.d.ts.map +1 -1
- package/dist/shared/logger.js +3 -10
- package/dist/shared/logger.js.map +1 -1
- package/dist/shared/pricing-data.d.ts.map +1 -1
- package/dist/shared/pricing-data.js +19 -18
- package/dist/shared/pricing-data.js.map +1 -1
- package/dist/shared/pricing.d.ts +10 -9
- package/dist/shared/pricing.d.ts.map +1 -1
- package/dist/shared/pricing.js +8 -5
- package/dist/shared/pricing.js.map +1 -1
- package/dist/shared/redact.d.ts.map +1 -1
- package/dist/shared/redact.js +19 -4
- package/dist/shared/redact.js.map +1 -1
- package/dist/shared/timing.d.ts +1 -1
- package/dist/shared/timing.d.ts.map +1 -1
- package/dist/shared/timing.js +5 -14
- package/dist/shared/timing.js.map +1 -1
- package/dist/shared/tokens.d.ts.map +1 -1
- package/dist/shared/tokens.js +0 -9
- package/dist/shared/tokens.js.map +1 -1
- package/dist/shared/transport/http-client.d.ts.map +1 -1
- package/dist/shared/transport/http-client.js +1 -12
- package/dist/shared/transport/http-client.js.map +1 -1
- package/dist/shared/transport/metric-api.d.ts +0 -6
- package/dist/shared/transport/metric-api.d.ts.map +1 -1
- package/dist/shared/transport/metric-api.js +0 -6
- package/dist/shared/transport/metric-api.js.map +1 -1
- package/dist/shared/transport/otlp-event-bridge.d.ts.map +1 -1
- package/dist/shared/transport/otlp-event-bridge.js +3 -0
- package/dist/shared/transport/otlp-event-bridge.js.map +1 -1
- package/dist/shared/transport/otlp-transport.js +1 -1
- package/dist/shared/transport/otlp-transport.js.map +1 -1
- package/dist/shared/transport/types.d.ts +4 -6
- package/dist/shared/transport/types.d.ts.map +1 -1
- package/dist/tools/cross-session-tools.d.ts +0 -11
- package/dist/tools/cross-session-tools.d.ts.map +1 -1
- package/dist/tools/cross-session-tools.js +0 -14
- package/dist/tools/cross-session-tools.js.map +1 -1
- package/dist/tools/session-stats.d.ts +0 -4
- package/dist/tools/session-stats.d.ts.map +1 -1
- package/dist/tools/session-stats.js +0 -6
- package/dist/tools/session-stats.js.map +1 -1
- package/package.json +1 -1
- package/dist/tools/index.d.ts +0 -7
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -4
- package/dist/tools/index.js.map +0 -1
|
@@ -85,11 +85,9 @@ export declare class HarvestScheduler {
|
|
|
85
85
|
*
|
|
86
86
|
* Returns `true` when the event was added without evicting another, and
|
|
87
87
|
* `false` when the event buffer was already full and the oldest event
|
|
88
|
-
* was head-dropped.
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
* regardless. The boolean lets producers throttle or surface a custom
|
|
92
|
-
* backpressure metric instead of polling.
|
|
88
|
+
* was head-dropped. The per-harvest `nr.ai.dropped_events` self-monitoring
|
|
89
|
+
* metric counts the drops regardless of whether the caller uses the
|
|
90
|
+
* return value.
|
|
93
91
|
*/
|
|
94
92
|
addEvent(event: NrEventData): boolean;
|
|
95
93
|
/**
|
|
@@ -97,8 +95,7 @@ export declare class HarvestScheduler {
|
|
|
97
95
|
*
|
|
98
96
|
* Returns `true` when the sample was accepted into a bucket, and `false`
|
|
99
97
|
* when it was rejected (non-finite value or invalid attribute type) per
|
|
100
|
-
* the strict validation contract.
|
|
101
|
-
* callers that ignore the return value see unchanged behavior.
|
|
98
|
+
* the strict validation contract.
|
|
102
99
|
*/
|
|
103
100
|
recordMetric(name: string, value: number, attributes?: Record<string, MetricAttributeValue>): boolean;
|
|
104
101
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harvest-scheduler.d.ts","sourceRoot":"","sources":["../../../src/shared/harvest/harvest-scheduler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAIpE,OAAO,KAAK,EAAE,oBAAoB,EAAkB,MAAM,wBAAwB,CAAC;AAgBnF,KAAK,YAAY,GAAG,CAClB,MAAM,EAAE,WAAW,EAAE,EACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,gBAAgB,KACtB,OAAO,CAAC,eAAe,CAAC,CAAC;AAE9B,KAAK,aAAa,GAAG,CACnB,OAAO,EAAE,QAAQ,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,gBAAgB,KACtB,OAAO,CAAC,eAAe,CAAC,CAAC;AAE9B,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IAEnC;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAKD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAS;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAU;IAE3C,OAAO,CAAC,eAAe,CAA+C;IACtE,OAAO,CAAC,gBAAgB,CAA+C;IACvE,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAA8B;IAOjD,OAAO,CAAC,oBAAoB,CAA8B;IAC1D,OAAO,CAAC,qBAAqB,CAA8B;IAK3D,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,mBAAmB,CAAqB;IAOhD,OAAO,CAAC,sBAAsB,CAAwB;IACtD,OAAO,CAAC,wBAAwB,CAAwB;IACxD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAS;
|
|
1
|
+
{"version":3,"file":"harvest-scheduler.d.ts","sourceRoot":"","sources":["../../../src/shared/harvest/harvest-scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,10 +55,6 @@ export class HarvestScheduler {
|
|
|
55
55
|
retryOtlpMetricSnapshots = [];
|
|
56
56
|
maxRetryEvents;
|
|
57
57
|
maxRetryMetricSnapshotsCap;
|
|
58
|
-
// Snapshot cap: 500 buckets ≈ 2000 wire metrics post-explosion. Larger
|
|
59
|
-
// effective ceiling than the previous 500-NrMetric cap (~125 buckets) by
|
|
60
|
-
// design — retry pressure is rare and the previous limit was tighter than
|
|
61
|
-
// intended.
|
|
62
58
|
boundBeforeExit;
|
|
63
59
|
constructor(options) {
|
|
64
60
|
this.licenseKey = options.licenseKey;
|
|
@@ -71,8 +67,6 @@ export class HarvestScheduler {
|
|
|
71
67
|
this.otlpTransport = options.otlpTransport;
|
|
72
68
|
this.transport = options.transport ?? 'nr-events-api';
|
|
73
69
|
this.allowProcessExit = options.allowProcessExit ?? false;
|
|
74
|
-
// Warn when the transport configuration requires an OTLP component that
|
|
75
|
-
// was not provided — events/metrics would be silently dropped.
|
|
76
70
|
const wantOtlp = this.transport === 'otlp' || this.transport === 'both';
|
|
77
71
|
if (wantOtlp && !this.otlpEventBridge) {
|
|
78
72
|
logger.warn('HarvestScheduler: transport includes otlp but otlpEventBridge is not configured — OTLP events will be silently dropped');
|
|
@@ -82,11 +76,6 @@ export class HarvestScheduler {
|
|
|
82
76
|
}
|
|
83
77
|
this.eventBuffer = new EventBuffer({ maxSize: options.maxEventBufferSize });
|
|
84
78
|
this.metricAggregator = new MetricAggregator();
|
|
85
|
-
// maxRetryEvents defaults to maxEventBufferSize when
|
|
86
|
-
// not specified, preserving prior behavior. Operators that need a
|
|
87
|
-
// deeper retry cap (bursty failures, long downstream outages) can set
|
|
88
|
-
// it independently — peak in-memory event count is then roughly
|
|
89
|
-
// maxEventBufferSize + maxRetryEvents.
|
|
90
79
|
this.maxRetryEvents = options.maxRetryEvents ?? options.maxEventBufferSize ?? 1_000;
|
|
91
80
|
this.maxRetryMetricSnapshotsCap = options.maxRetryMetricSnapshots ?? 500;
|
|
92
81
|
this.boundBeforeExit = () => {
|
|
@@ -98,11 +87,9 @@ export class HarvestScheduler {
|
|
|
98
87
|
*
|
|
99
88
|
* Returns `true` when the event was added without evicting another, and
|
|
100
89
|
* `false` when the event buffer was already full and the oldest event
|
|
101
|
-
* was head-dropped.
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
* regardless. The boolean lets producers throttle or surface a custom
|
|
105
|
-
* backpressure metric instead of polling.
|
|
90
|
+
* was head-dropped. The per-harvest `nr.ai.dropped_events` self-monitoring
|
|
91
|
+
* metric counts the drops regardless of whether the caller uses the
|
|
92
|
+
* return value.
|
|
106
93
|
*/
|
|
107
94
|
addEvent(event) {
|
|
108
95
|
return this.eventBuffer.add(event);
|
|
@@ -112,8 +99,7 @@ export class HarvestScheduler {
|
|
|
112
99
|
*
|
|
113
100
|
* Returns `true` when the sample was accepted into a bucket, and `false`
|
|
114
101
|
* when it was rejected (non-finite value or invalid attribute type) per
|
|
115
|
-
* the strict validation contract.
|
|
116
|
-
* callers that ignore the return value see unchanged behavior.
|
|
102
|
+
* the strict validation contract.
|
|
117
103
|
*/
|
|
118
104
|
recordMetric(name, value, attributes = {}) {
|
|
119
105
|
return this.metricAggregator.record(name, value, attributes);
|
|
@@ -197,11 +183,6 @@ export class HarvestScheduler {
|
|
|
197
183
|
});
|
|
198
184
|
}, this.metricHarvestIntervalMs);
|
|
199
185
|
if (this.allowProcessExit) {
|
|
200
|
-
// Opt-in path for short-lived CLI tools. unref()'d
|
|
201
|
-
// intervals don't hold the loop open, and beforeExit is registered as
|
|
202
|
-
// a best-effort final-flush attempt. Both are best-effort: Node can
|
|
203
|
-
// exit before the fire-and-forget stop() finishes, so events may be
|
|
204
|
-
// lost. Consumers should still prefer awaiting stop() explicitly.
|
|
205
186
|
this.eventIntervalId.unref();
|
|
206
187
|
this.metricIntervalId.unref();
|
|
207
188
|
process.once('beforeExit', this.boundBeforeExit);
|
|
@@ -299,7 +280,6 @@ export class HarvestScheduler {
|
|
|
299
280
|
});
|
|
300
281
|
});
|
|
301
282
|
}
|
|
302
|
-
// Final flush of in-memory buffers
|
|
303
283
|
await Promise.all([this.harvestEvents(), this.harvestMetrics()]);
|
|
304
284
|
// Flush OTLP-managed buffers (they live inside the OTel SDK batch
|
|
305
285
|
// processors; otherwise events/metrics already enqueued but not yet
|
|
@@ -341,15 +321,13 @@ export class HarvestScheduler {
|
|
|
341
321
|
return ms;
|
|
342
322
|
}
|
|
343
323
|
async doHarvestEvents() {
|
|
344
|
-
// Scoped child logger stamps `harvestId` on every
|
|
345
|
-
// log line emitted during this cycle (overflow, retry, requeue,
|
|
346
|
-
// OTLP-export failures). Operators searching stderr for one harvest's
|
|
347
|
-
// story have a single pivot.
|
|
348
324
|
const harvestLog = logger.child({ harvestId: newHarvestId(), scope: 'events' });
|
|
349
325
|
const fresh = this.eventBuffer.flush();
|
|
350
326
|
// Surface event-buffer head-drops as a self-monitoring metric so
|
|
351
327
|
// overflow loss is visible in the consumer's own NR dashboards. Drained
|
|
352
|
-
// once per harvest, paired with a single warn log.
|
|
328
|
+
// once per harvest, paired with a single warn log. Recorded into
|
|
329
|
+
// metricAggregator, so this ships on the METRIC harvest cadence (default
|
|
330
|
+
// 60s), not this 5s event cadence.
|
|
353
331
|
const dropped = this.eventBuffer.drainDropCount();
|
|
354
332
|
if (dropped > 0) {
|
|
355
333
|
harvestLog.warn('EventBuffer overflow — oldest entries dropped', { dropped });
|
|
@@ -357,9 +335,6 @@ export class HarvestScheduler {
|
|
|
357
335
|
source: 'event_buffer',
|
|
358
336
|
});
|
|
359
337
|
}
|
|
360
|
-
// Drain the add counter each cycle so totalAdded represents adds-since-
|
|
361
|
-
// last-flush. Not emitted as a metric today; wired here so a
|
|
362
|
-
// future nr.ai.added_events metric reads the correct per-interval value.
|
|
363
338
|
this.eventBuffer.drainAddCount();
|
|
364
339
|
const wantNr = this.transport === 'nr-events-api' || this.transport === 'both';
|
|
365
340
|
const wantOtlp = this.transport === 'otlp' || this.transport === 'both';
|
|
@@ -444,8 +419,6 @@ export class HarvestScheduler {
|
|
|
444
419
|
return this.inFlightMetricHarvest;
|
|
445
420
|
}
|
|
446
421
|
async doHarvestMetrics() {
|
|
447
|
-
// Scoped child logger stamps a `harvestId` on every
|
|
448
|
-
// log line emitted during this metric harvest cycle.
|
|
449
422
|
const harvestLog = logger.child({ harvestId: newHarvestId(), scope: 'metrics' });
|
|
450
423
|
// Self-monitoring: drain MetricAggregator's
|
|
451
424
|
// drop counter and emit it as a metric so non-finite-value rejections
|
|
@@ -523,9 +496,9 @@ export class HarvestScheduler {
|
|
|
523
496
|
else {
|
|
524
497
|
// Debug-level success log so operators tailing stderr can
|
|
525
498
|
// distinguish "harvest completed cleanly with N metrics" from
|
|
526
|
-
// "harvest never ran".
|
|
527
|
-
// the
|
|
528
|
-
//
|
|
499
|
+
// "harvest never ran". batchSize and snapshotCount are always equal
|
|
500
|
+
// under the current 1-NrMetric-per-snapshot wire format; both are
|
|
501
|
+
// logged so that no longer holding true is visible at debug.
|
|
529
502
|
log.debug('Sent metrics to NR', {
|
|
530
503
|
batchSize: batch.length,
|
|
531
504
|
snapshotCount: snapshots.length,
|
|
@@ -597,7 +570,6 @@ export class HarvestScheduler {
|
|
|
597
570
|
const dropped = this.retryNrEventBatch.length - this.maxRetryEvents;
|
|
598
571
|
this.retryNrEventBatch.splice(0, dropped);
|
|
599
572
|
log.warn('NR event retry buffer overflow — oldest entries dropped', { dropped });
|
|
600
|
-
// Surface as self-monitoring metric so NR dashboards show retry-buffer drops.
|
|
601
573
|
this.metricAggregator.record('nr.ai.dropped_events', dropped, {
|
|
602
574
|
source: 'retry_buffer',
|
|
603
575
|
transport: 'nr-events-api',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harvest-scheduler.js","sourceRoot":"","sources":["../../../src/shared/harvest/harvest-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAUzC,OAAO,EAAE,YAAY,EAAe,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGhF,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;AAEvC;;;;;;;GAOG;AACH,SAAS,YAAY;IACnB,OAAO,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAgED,MAAM,wBAAwB,GAAG,KAAK,CAAC;AACvC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEzC,MAAM,OAAO,gBAAgB;IACV,WAAW,CAAc;IACzB,gBAAgB,CAAmB;IACnC,UAAU,CAAS;IACnB,gBAAgB,CAAmB;IACnC,YAAY,CAAe;IAC3B,aAAa,CAAgB;IAC7B,sBAAsB,CAAS;IAC/B,uBAAuB,CAAS;IAChC,eAAe,CAAmB;IAClC,aAAa,CAAiB;IAC9B,SAAS,CAAgB;IACzB,gBAAgB,CAAU;IAEnC,eAAe,GAA0C,IAAI,CAAC;IAC9D,gBAAgB,GAA0C,IAAI,CAAC;IAC/D,OAAO,GAAG,KAAK,CAAC;IAChB,WAAW,GAAyB,IAAI,CAAC;IAEjD,8CAA8C;IAC9C,wEAAwE;IACxE,6EAA6E;IAC7E,0EAA0E;IAC1E,yDAAyD;IACjD,oBAAoB,GAAyB,IAAI,CAAC;IAClD,qBAAqB,GAAyB,IAAI,CAAC;IAE3D,yEAAyE;IACzE,yEAAyE;IACzE,0EAA0E;IAClE,iBAAiB,GAAkB,EAAE,CAAC;IACtC,mBAAmB,GAAkB,EAAE,CAAC;IAChD,yDAAyD;IACzD,0EAA0E;IAC1E,2EAA2E;IAC3E,qEAAqE;IACrE,oEAAoE;IACpE,sCAAsC;IAC9B,sBAAsB,GAAqB,EAAE,CAAC;IAC9C,wBAAwB,GAAqB,EAAE,CAAC;IACvC,cAAc,CAAS;IACvB,0BAA0B,CAAS;IACpD,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,YAAY;IAEK,eAAe,CAAa;IAE7C,YAAY,OAAgC;QAC1C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CACjD,wBAAwB,EACxB,OAAO,CAAC,sBAAsB,IAAI,wBAAwB,CAC3D,CAAC;QACF,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,CAClD,yBAAyB,EACzB,OAAO,CAAC,uBAAuB,IAAI,yBAAyB,CAC7D,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,eAAe,CAAC;QACtD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC;QAE1D,wEAAwE;QACxE,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QACxE,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CACT,wHAAwH,CACzH,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,MAAM,CAAC,IAAI,CACT,uHAAuH,CACxH,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAC/C,qDAAqD;QACrD,kEAAkE;QAClE,sEAAsE;QACtE,gEAAgE;QAChE,uCAAuC;QACvC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,kBAAkB,IAAI,KAAK,CAAC;QACpF,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC,uBAAuB,IAAI,GAAG,CAAC;QAEzE,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE;YAC1B,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAkB;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CACV,IAAY,EACZ,KAAa,EACb,aAAmD,EAAE;QAErD,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,kDAAkD;QAClD,yEAAyE;QACzE,sEAAsE;QACtE,gEAAgE;QAChE,kEAAkE;QAClE,qEAAqE;QACrE,wEAAwE;QACxE,wEAAwE;QACxE,iCAAiC;QACjC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CACT,kHAAkH,CACnH,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;YACtC,oEAAoE;YACpE,kEAAkE;YAClE,kEAAkE;YAClE,+BAA+B;YAC/B,IAAI,IAAI,CAAC,oBAAoB;gBAAE,OAAO;YACtC,mEAAmE;YACnE,+DAA+D;YAC/D,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjC,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE;oBACzD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAEhC,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;YACvC,IAAI,IAAI,CAAC,qBAAqB;gBAAE,OAAO;YACvC,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClC,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;oBAC1D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAEjC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,mDAAmD;YACnD,sEAAsE;YACtE,oEAAoE;YACpE,oEAAoE;YACpE,kEAAkE;YAClE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;YACvC,eAAe,EAAE,IAAI,CAAC,sBAAsB;YAC5C,gBAAgB,EAAE,IAAI,CAAC,uBAAuB;YAC9C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;SACxC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC9C,sEAAsE;QACtE,+DAA+D;QAC/D,uEAAuE;QACvE,gCAAgC;QAEhC,oDAAoD;QACpD,qEAAqE;QACrE,oEAAoE;QACpE,mEAAmE;QACnE,gEAAgE;QAChE,oEAAoE;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YACzC,qEAAqE;YACrE,qEAAqE;YACrE,8BAA8B;YAC9B,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC3B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YAClC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACnC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC/B,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC7D,CAAC;QAED,mDAAmD;QACnD,yEAAyE;QACzE,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,oEAAoE;QACpE,0BAA0B;QAC1B,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC5C,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;oBAC3D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC7C,MAAM,CAAC,IAAI,CAAC,gDAAgD,EAAE;oBAC5D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAEjE,kEAAkE;QAClE,oEAAoE;QACpE,yCAAyC;QACzC,MAAM,OAAO,GAAoB,EAAE,CAAC;QACpC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACzC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;oBAC9C,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CACV,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBAC3C,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,oEAAoE;QACpE,iEAAiE;QACjE,qCAAqC;QACrC,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC;QAChE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAC9D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAEO,gBAAgB,CAAC,IAAY,EAAE,EAAU;QAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,EAAE,CAAC;YACrC,MAAM,IAAI,UAAU,CAClB,qBAAqB,IAAI,0CAA0C,MAAM,CAAC,EAAE,CAAC,EAAE,CAChF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,kDAAkD;QAClD,gEAAgE;QAChE,sEAAsE;QACtE,6BAA6B;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEhF,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAEvC,iEAAiE;QACjE,wEAAwE;QACxE,mDAAmD;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC,+CAA+C,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9E,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE;gBAC5D,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;QACL,CAAC;QACD,wEAAwE;QACxE,6DAA6D;QAC7D,yEAAyE;QACzE,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,KAAK,eAAe,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QAExE,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,OAAO,GACX,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YACzF,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;YAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,SAAS,GACb,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YAC7F,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;YAC9B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,KAAoB,EAAE,MAAc,MAAM;QACrE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACtF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,0DAA0D,EAAE;oBACnE,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,CAAC,CAAC;gBACH,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,6DAA6D;gBAC7D,+DAA+D;gBAC/D,iDAAiD;gBACjD,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,oEAAoE,EAAE;gBAC7E,SAAS,EAAE,KAAK,CAAC,MAAM;gBACvB,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,KAAoB,EAAE,MAAc,MAAM;QACvE,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBACvC,uDAAuD;gBACvD,8DAA8D;gBAC9D,8DAA8D;gBAC9D,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,2DAA2D;gBAC3D,oEAAoE;gBACpE,UAAU;gBACV,GAAG,CAAC,KAAK,CAAC,oDAAoD,EAAE;oBAC9D,SAAS,EAAE,KAAK,CAAC,MAAM;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,2DAA2D,EAAE;gBACpE,SAAS,EAAE,KAAK,CAAC,MAAM;gBACvB,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,IAAI,IAAI,CAAC,qBAAqB;YAAE,OAAO,IAAI,CAAC,qBAAqB,CAAC;QAClE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAChE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,oDAAoD;QACpD,qDAAqD;QACrD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEjF,4CAA4C;QAC5C,sEAAsE;QACtE,qEAAqE;QACrE,iEAAiE;QACjE,sEAAsE;QACtE,wEAAwE;QACxE,qDAAqD;QACrD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;QAC9D,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,mEAAmE,EAAE;gBACnF,OAAO,EAAE,cAAc;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,uBAAuB,EAAE,cAAc,EAAE;gBACpE,MAAM,EAAE,mBAAmB;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,8CAA8C;QAC9C,qEAAqE;QACrE,qEAAqE;QACrE,iEAAiE;QACjE,uCAAuC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,KAAK,eAAe,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QAExE,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC;YACjC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,eAAe,CAClB,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,EAC/D,WAAW,EACX,UAAU,CACX,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAChF,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;YACnC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,iBAAiB,CACpB,oBAAoB,CAAC,aAAa,EAAE,IAAI,CAAC,uBAAuB,CAAC,EACjE,aAAa,EACb,UAAU,CACX,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;;;OAUG;IACK,cAAc,CACpB,KAAgC,EAChC,KAAgC;QAEhC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,KAAiB,EACjB,SAA2B,EAC3B,MAAc,MAAM;QAEpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,2DAA2D,EAAE;oBACpE,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,CAAC,CAAC;gBACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,8DAA8D;gBAC9D,8DAA8D;gBAC9D,kEAAkE;gBAClE,8BAA8B;gBAC9B,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE;oBAC9B,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,aAAa,EAAE,SAAS,CAAC,MAAM;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,qEAAqE,EAAE;gBAC9E,SAAS,EAAE,KAAK,CAAC,MAAM;gBACvB,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,KAAiB,EACjB,SAA2B,EAC3B,MAAc,MAAM;QAEpB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC9C,uCAAuC;gBACvC,GAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBAChC,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,aAAa,EAAE,SAAS,CAAC,MAAM;iBAChC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,yDAAyD;gBACzD,GAAG,CAAC,KAAK,CAAC,wDAAwD,EAAE;oBAClE,SAAS,EAAE,KAAK,CAAC,MAAM;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,sEAAsE;YACtE,+EAA+E;YAC/E,4EAA4E;YAC5E,8DAA8D;YAC9D,MAAM,cAAc,GAClB,GAAG,YAAY,KAAK,IAAK,GAAiC,CAAC,IAAI,KAAK,kBAAkB,CAAC;YACzF,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,KAAK,CAAC,4EAA4E,EAAE;oBACtF,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,aAAa,EAAE,SAAS,CAAC,MAAM;oBAC/B,KAAK,EAAE,OAAO;iBACf,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,4DAA4D,EAAE;oBACrE,SAAS,EAAE,KAAK,CAAC,MAAM;oBACvB,KAAK,EAAE,OAAO;iBACf,CAAC,CAAC;gBACH,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,2EAA2E;IAC3E,sBAAsB;IACd,eAAe,CAAC,KAAoB,EAAE,MAAc,MAAM;QAChE,yEAAyE;QACzE,oEAAoE;QACpE,iEAAiE;QACjE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;YACpE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC1C,GAAG,CAAC,IAAI,CAAC,yDAAyD,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACjF,8EAA8E;YAC9E,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE;gBAC5D,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,eAAe;aAC3B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,KAAoB,EAAE,MAAc,MAAM;QAClE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;YACtE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,2DAA2D,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACnF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE;gBAC5D,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,SAA2B,EAAE,MAAc,MAAM;QACxE,KAAK,MAAM,CAAC,IAAI,SAAS;YAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACzE,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC;YACrF,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,0DAA0D,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAClF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,EAAE;gBAC7D,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,gBAAgB;aAC5B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,SAA2B,EAAE,MAAc,MAAM;QAC1E,KAAK,MAAM,CAAC,IAAI,SAAS;YAAE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC;YACvF,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,4DAA4D,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACpF,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,EAAE;gBAC7D,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"harvest-scheduler.js","sourceRoot":"","sources":["../../../src/shared/harvest/harvest-scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,11 +28,9 @@ export declare class MetricAggregator {
|
|
|
28
28
|
private buckets;
|
|
29
29
|
/**
|
|
30
30
|
* Number of `record()` calls rejected since the last `drainDropCount()`.
|
|
31
|
-
* Incremented on non-finite values and invalid attribute types.
|
|
32
|
-
*
|
|
33
|
-
* `
|
|
34
|
-
* gauge each harvest tick — operators currently see only `logger.warn`
|
|
35
|
-
* spam, with no aggregate count of "we silently dropped N samples".
|
|
31
|
+
* Incremented on non-finite values and invalid attribute types. Mirrors
|
|
32
|
+
* the pattern in `EventBuffer.dropCount` so `HarvestScheduler` can emit a
|
|
33
|
+
* `nr.ai.dropped_metrics` self-monitoring gauge each harvest tick.
|
|
36
34
|
*/
|
|
37
35
|
private droppedCount;
|
|
38
36
|
constructor();
|
|
@@ -41,10 +39,9 @@ export declare class MetricAggregator {
|
|
|
41
39
|
*
|
|
42
40
|
* Returns `true` when the sample was accepted into a bucket, and `false`
|
|
43
41
|
* when it was rejected (non-finite value or invalid attribute type) per
|
|
44
|
-
* the strict validation contract. The boolean return surface
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* that ignore the return value see unchanged behavior.
|
|
42
|
+
* the strict validation contract. The boolean return surface exposes the
|
|
43
|
+
* rejection signal so callers can implement backpressure or surface
|
|
44
|
+
* invalid-input metrics.
|
|
48
45
|
*/
|
|
49
46
|
record(name: string, value: number, attributes?: Record<string, MetricAttributeValue>): boolean;
|
|
50
47
|
/**
|
|
@@ -87,26 +84,14 @@ export declare class MetricAggregator {
|
|
|
87
84
|
*
|
|
88
85
|
* Public so consumers can build self-monitoring metrics on top of the
|
|
89
86
|
* aggregator (e.g. emit `harvest.metric_aggregator.bucket_count` to NR
|
|
90
|
-
* each tick to detect cardinality explosions).
|
|
91
|
-
* `metric-aggregator.test.ts` to verify post-`harvest()` state.
|
|
92
|
-
*
|
|
93
|
-
* Not used by `HarvestScheduler` today; surfacing it (rather than dropping
|
|
94
|
-
* the accessor) keeps the surface stable for the
|
|
95
|
-
* self-monitoring work.
|
|
87
|
+
* each tick to detect cardinality explosions).
|
|
96
88
|
*/
|
|
97
89
|
get bucketCount(): number;
|
|
98
90
|
}
|
|
99
91
|
/**
|
|
100
92
|
* Convert each {@link MetricSnapshot} to a single wire-format `NrMetric` of
|
|
101
|
-
* type `'summary'
|
|
102
|
-
*
|
|
103
|
-
* Previously this function emitted four separate metrics per snapshot
|
|
104
|
-
* (`{name}.count`, `.sum`, `.min`, `.max`) — three of them as `gauge` (which
|
|
105
|
-
* is semantically wrong for a delta-aggregated value) and one as `count`
|
|
106
|
-
* (without the required `interval.ms` field). The summary type collapses
|
|
107
|
-
* those four into one record carrying `{ count, sum, min, max }` plus the
|
|
108
|
-
* harvest interval, halving payload cardinality and producing correct
|
|
109
|
-
* NR-side aggregate stats.
|
|
93
|
+
* type `'summary'`, carrying `{ count, sum, min, max }` plus the harvest
|
|
94
|
+
* interval.
|
|
110
95
|
*
|
|
111
96
|
* @param intervalMs Harvest interval in ms — appears on the wire as
|
|
112
97
|
* `interval.ms` per NR's Metric API contract.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metric-aggregator.d.ts","sourceRoot":"","sources":["../../../src/shared/harvest/metric-aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAKtD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE7D;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC3D;
|
|
1
|
+
{"version":3,"file":"metric-aggregator.d.ts","sourceRoot":"","sources":["../../../src/shared/harvest/metric-aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAKtD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE7D;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC3D;AAyDD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAsB;IACrC;;;;;OAKG;IACH,OAAO,CAAC,YAAY,CAAK;;IAMzB;;;;;;;;OAQG;IACH,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAM,GACpD,OAAO;IA+CV;;;;;;;;;;OAUG;IACH,gBAAgB,IAAI,cAAc,EAAE;IAiBpC;;;;;OAKG;IACH,KAAK,CAAC,SAAS,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI;IAqCjD,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,EAAE;IAIvC;;;;;;OAMG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;;;OAKG;IACH,cAAc,IAAI,MAAM;IAMxB;;;;;;OAMG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,SAAS,cAAc,EAAE,EACpC,UAAU,EAAE,MAAM,EAClB,SAAS,GAAE,MAAmB,GAC7B,QAAQ,EAAE,CAkBZ"}
|
|
@@ -32,6 +32,9 @@ function escapeKeyPart(s) {
|
|
|
32
32
|
return s.replace(/[|=&]/g, (c) => '%' + c.charCodeAt(0).toString(16).toUpperCase());
|
|
33
33
|
}
|
|
34
34
|
function makeKey(name, attributes) {
|
|
35
|
+
// Sort so attribute insertion order doesn't affect bucket identity —
|
|
36
|
+
// otherwise {a:1,b:2} and {b:2,a:1} would key differently and silently
|
|
37
|
+
// fragment into separate buckets depending on caller insertion order.
|
|
35
38
|
const sorted = Object.entries(attributes).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0));
|
|
36
39
|
return (escapeKeyPart(name) +
|
|
37
40
|
'|' +
|
|
@@ -41,11 +44,9 @@ export class MetricAggregator {
|
|
|
41
44
|
buckets;
|
|
42
45
|
/**
|
|
43
46
|
* Number of `record()` calls rejected since the last `drainDropCount()`.
|
|
44
|
-
* Incremented on non-finite values and invalid attribute types.
|
|
45
|
-
*
|
|
46
|
-
* `
|
|
47
|
-
* gauge each harvest tick — operators currently see only `logger.warn`
|
|
48
|
-
* spam, with no aggregate count of "we silently dropped N samples".
|
|
47
|
+
* Incremented on non-finite values and invalid attribute types. Mirrors
|
|
48
|
+
* the pattern in `EventBuffer.dropCount` so `HarvestScheduler` can emit a
|
|
49
|
+
* `nr.ai.dropped_metrics` self-monitoring gauge each harvest tick.
|
|
49
50
|
*/
|
|
50
51
|
droppedCount = 0;
|
|
51
52
|
constructor() {
|
|
@@ -56,10 +57,9 @@ export class MetricAggregator {
|
|
|
56
57
|
*
|
|
57
58
|
* Returns `true` when the sample was accepted into a bucket, and `false`
|
|
58
59
|
* when it was rejected (non-finite value or invalid attribute type) per
|
|
59
|
-
* the strict validation contract. The boolean return surface
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
* that ignore the return value see unchanged behavior.
|
|
60
|
+
* the strict validation contract. The boolean return surface exposes the
|
|
61
|
+
* rejection signal so callers can implement backpressure or surface
|
|
62
|
+
* invalid-input metrics.
|
|
63
63
|
*/
|
|
64
64
|
record(name, value, attributes = {}) {
|
|
65
65
|
if (!Number.isFinite(value)) {
|
|
@@ -140,7 +140,10 @@ export class MetricAggregator {
|
|
|
140
140
|
for (const s of snapshots) {
|
|
141
141
|
// Guard against corrupt snapshots (e.g. built manually — the type is
|
|
142
142
|
// exported). A negative count or non-finite sum would permanently corrupt
|
|
143
|
-
// the bucket's accumulators.
|
|
143
|
+
// the bucket's accumulators. Unlike record(), corruption here is
|
|
144
|
+
// silently discarded without logging/counting against droppedCount —
|
|
145
|
+
// merge() only ever receives our own previously-harvested snapshots,
|
|
146
|
+
// so corruption here would mean an internal bug, not bad caller input.
|
|
144
147
|
if (!Number.isFinite(s.sum) ||
|
|
145
148
|
!Number.isFinite(s.min) ||
|
|
146
149
|
!Number.isFinite(s.max) ||
|
|
@@ -197,12 +200,7 @@ export class MetricAggregator {
|
|
|
197
200
|
*
|
|
198
201
|
* Public so consumers can build self-monitoring metrics on top of the
|
|
199
202
|
* aggregator (e.g. emit `harvest.metric_aggregator.bucket_count` to NR
|
|
200
|
-
* each tick to detect cardinality explosions).
|
|
201
|
-
* `metric-aggregator.test.ts` to verify post-`harvest()` state.
|
|
202
|
-
*
|
|
203
|
-
* Not used by `HarvestScheduler` today; surfacing it (rather than dropping
|
|
204
|
-
* the accessor) keeps the surface stable for the
|
|
205
|
-
* self-monitoring work.
|
|
203
|
+
* each tick to detect cardinality explosions).
|
|
206
204
|
*/
|
|
207
205
|
get bucketCount() {
|
|
208
206
|
return this.buckets.size;
|
|
@@ -210,15 +208,8 @@ export class MetricAggregator {
|
|
|
210
208
|
}
|
|
211
209
|
/**
|
|
212
210
|
* Convert each {@link MetricSnapshot} to a single wire-format `NrMetric` of
|
|
213
|
-
* type `'summary'
|
|
214
|
-
*
|
|
215
|
-
* Previously this function emitted four separate metrics per snapshot
|
|
216
|
-
* (`{name}.count`, `.sum`, `.min`, `.max`) — three of them as `gauge` (which
|
|
217
|
-
* is semantically wrong for a delta-aggregated value) and one as `count`
|
|
218
|
-
* (without the required `interval.ms` field). The summary type collapses
|
|
219
|
-
* those four into one record carrying `{ count, sum, min, max }` plus the
|
|
220
|
-
* harvest interval, halving payload cardinality and producing correct
|
|
221
|
-
* NR-side aggregate stats.
|
|
211
|
+
* type `'summary'`, carrying `{ count, sum, min, max }` plus the harvest
|
|
212
|
+
* interval.
|
|
222
213
|
*
|
|
223
214
|
* @param intervalMs Harvest interval in ms — appears on the wire as
|
|
224
215
|
* `interval.ms` per NR's Metric API contract.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metric-aggregator.js","sourceRoot":"","sources":["../../../src/shared/harvest/metric-aggregator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;AAyCjD,SAAS,qBAAqB,CAAC,CAAU;IACvC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;IACnB,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,CAAuB;IACnD,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,EAAE,CAAC;IACpB,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,yEAAyE;AACzE,+EAA+E;AAC/E,sEAAsE;AACtE,wEAAwE;AACxE,SAAS,aAAa,CAAC,CAAS;IAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,OAAO,CAAC,IAAY,EAAE,UAAgD;IAC7E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,OAAO,CACL,aAAa,CAAC,IAAI,CAAC;QACnB,GAAG;QACH,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACnF,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,gBAAgB;IACnB,OAAO,CAAsB;IACrC
|
|
1
|
+
{"version":3,"file":"metric-aggregator.js","sourceRoot":"","sources":["../../../src/shared/harvest/metric-aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/shared/logger.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/shared/logger.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AA+C3D;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;CACjD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,CAEhF"}
|
package/dist/shared/logger.js
CHANGED
|
@@ -5,21 +5,14 @@ const LOG_LEVEL_ORDER = {
|
|
|
5
5
|
warn: 2,
|
|
6
6
|
error: 3,
|
|
7
7
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* `envLevel in LOG_LEVEL_ORDER` check + `as LogLevel` cast was sound at
|
|
11
|
-
* runtime today but the cast hid the gap: TS can't narrow `string` to a
|
|
12
|
-
* literal union via `in`, so a refactor that broadened `LOG_LEVEL_ORDER`
|
|
13
|
-
* (e.g. added `trace`) would silently let `envLevel` flow through with
|
|
14
|
-
* the wrong type. Explicit type guard removes the cast and makes the
|
|
15
|
-
* literal-union membership check the single source of truth.
|
|
16
|
-
*/
|
|
8
|
+
// Explicit type guard so a future broadening of LOG_LEVEL_ORDER (e.g. adding
|
|
9
|
+
// 'trace') can't silently type-check as LogLevel via an `in` check + cast.
|
|
17
10
|
const LOG_LEVELS = ['debug', 'info', 'warn', 'error'];
|
|
18
11
|
function isLogLevel(value) {
|
|
19
12
|
return LOG_LEVELS.includes(value);
|
|
20
13
|
}
|
|
21
14
|
function resolveLogLevel() {
|
|
22
|
-
const envLevel = process.env.NEW_RELIC_AI_LOG_LEVEL?.toLowerCase();
|
|
15
|
+
const envLevel = process.env.NEW_RELIC_AI_LOG_LEVEL?.toLowerCase().trim();
|
|
23
16
|
if (envLevel !== undefined && isLogLevel(envLevel)) {
|
|
24
17
|
return envLevel;
|
|
25
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/shared/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,MAAM,eAAe,GAA6B;IAChD,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/shared/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqBhD,CAAC;AAmBF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"pricing-data.d.ts","sourceRoot":"","sources":["../../src/shared/pricing-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqBhD,CAAC;AAmBF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CA4d9D,CAAC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// alias, the prefix-match heuristic in resolveModelPricing() prefers longer
|
|
7
7
|
// keys (dated suffixes like "-20250514") and silently returns LEGACY pricing,
|
|
8
8
|
// e.g. claude-opus-4 → claude-opus-4-20250514 ($15/$75) instead of the
|
|
9
|
-
// current claude-opus-4-
|
|
9
|
+
// current claude-opus-4-8 ($5/$25). That's a 3× cost overestimate.
|
|
10
10
|
//
|
|
11
11
|
// Resolution order in resolveModelPricing(): exact → alias → forward-prefix
|
|
12
12
|
// → reverse-prefix → null.
|
|
@@ -49,6 +49,9 @@ export const MODEL_ALIASES = {
|
|
|
49
49
|
// ---------------------------------------------------------------------------
|
|
50
50
|
export const DEFAULT_PRICING_TABLE = {
|
|
51
51
|
// ---- Anthropic (current generation) ----
|
|
52
|
+
// "Fable" — internal/beta codename for a Claude variant priced ahead of a
|
|
53
|
+
// public model-name announcement; update or remove once it ships under a
|
|
54
|
+
// public name.
|
|
52
55
|
'claude-fable-5': {
|
|
53
56
|
inputPerMTok: 10,
|
|
54
57
|
outputPerMTok: 50,
|
|
@@ -103,9 +106,10 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
103
106
|
contextWindow: 200_000,
|
|
104
107
|
},
|
|
105
108
|
// ---- Anthropic (legacy Claude 4 generation) ----
|
|
106
|
-
// These legacy entries are retained for historical-cost backfill.
|
|
107
|
-
//
|
|
108
|
-
// (e.g. `claude-opus-4` →
|
|
109
|
+
// These legacy entries are retained for historical-cost backfill. Most use
|
|
110
|
+
// the pre-1M-context window (200K); claude-opus-4-7 already had the
|
|
111
|
+
// 1M-context bump backported. Family-name routing (e.g. `claude-opus-4` →
|
|
112
|
+
// current generation) is handled by MODEL_ALIASES.
|
|
109
113
|
'claude-opus-4-7': {
|
|
110
114
|
inputPerMTok: 5,
|
|
111
115
|
outputPerMTok: 25,
|
|
@@ -138,13 +142,11 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
138
142
|
cacheCreationPerMTok: 6.25,
|
|
139
143
|
contextWindow: 200_000,
|
|
140
144
|
},
|
|
141
|
-
//
|
|
142
|
-
//
|
|
143
|
-
//
|
|
144
|
-
//
|
|
145
|
-
//
|
|
146
|
-
// If Anthropic releases a claude-opus-4-10 model, add an explicit alias
|
|
147
|
-
// before that model key appears in the table.
|
|
145
|
+
// This key uses a version-number suffix (-1), not an 8-digit date suffix,
|
|
146
|
+
// so DATED_SUFFIX_RE never strips it — it's ineligible as a reverse-prefix
|
|
147
|
+
// base. A future 'claude-opus-4-10' resolves via the dated-key + alias path
|
|
148
|
+
// instead (see pricing.test.ts "13b"), never through this entry — no
|
|
149
|
+
// action needed here when that model ships.
|
|
148
150
|
'claude-opus-4-1': {
|
|
149
151
|
inputPerMTok: 15,
|
|
150
152
|
outputPerMTok: 75,
|
|
@@ -263,11 +265,12 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
263
265
|
cacheReadPerMTok: 0.5,
|
|
264
266
|
contextWindow: 1_000_000,
|
|
265
267
|
// OpenAI long-context pricing is marginal: only tokens above 270k are
|
|
266
|
-
// billed at the tier rate — not the entire request.
|
|
268
|
+
// billed at the tier rate — not the entire request. Output always bills
|
|
269
|
+
// at outputPerMTok in marginal mode (see ModelPricing.tierMode), so no
|
|
270
|
+
// tierOutputPerMTok is set here — it would be dead data.
|
|
267
271
|
tierThreshold: 270_000,
|
|
268
272
|
tierMode: 'marginal',
|
|
269
273
|
tierInputPerMTok: 10,
|
|
270
|
-
tierOutputPerMTok: 45,
|
|
271
274
|
},
|
|
272
275
|
'gpt-5.4': {
|
|
273
276
|
inputPerMTok: 2.5,
|
|
@@ -277,7 +280,6 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
277
280
|
tierThreshold: 270_000,
|
|
278
281
|
tierMode: 'marginal',
|
|
279
282
|
tierInputPerMTok: 5,
|
|
280
|
-
tierOutputPerMTok: 22.5,
|
|
281
283
|
},
|
|
282
284
|
'gpt-5.4-mini': {
|
|
283
285
|
inputPerMTok: 0.75,
|
|
@@ -498,10 +500,9 @@ export const DEFAULT_PRICING_TABLE = {
|
|
|
498
500
|
outputPerMTok: 0.6,
|
|
499
501
|
contextWindow: 128_000,
|
|
500
502
|
},
|
|
501
|
-
// `command` and `command-light` are deprecated (2024)
|
|
502
|
-
//
|
|
503
|
-
//
|
|
504
|
-
// approximation in the original entry was off by 96 tokens.
|
|
503
|
+
// `command` and `command-light` are deprecated (2024) but retained for
|
|
504
|
+
// historical-cost backfill of consumer apps that haven't migrated.
|
|
505
|
+
// Context window is 4096 tokens, not the round number 4000.
|
|
505
506
|
command: {
|
|
506
507
|
inputPerMTok: 1,
|
|
507
508
|
outputPerMTok: 2,
|