@noego/telemetry 0.0.1

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 (120) hide show
  1. package/README.md +130 -0
  2. package/dist/browser/index.cjs +1346 -0
  3. package/dist/browser/index.cjs.map +1 -0
  4. package/dist/browser/index.d.cts +5 -0
  5. package/dist/browser/index.d.ts +5 -0
  6. package/dist/browser/index.js +1318 -0
  7. package/dist/browser/index.js.map +1 -0
  8. package/dist/browser_telemetry_client-BzBPQm4m.d.cts +29 -0
  9. package/dist/browser_telemetry_client-Ch_VzwEa.d.ts +29 -0
  10. package/dist/cli/telemetry_bin.cjs +5531 -0
  11. package/dist/cli/telemetry_bin.cjs.map +1 -0
  12. package/dist/cli/telemetry_bin.d.cts +1 -0
  13. package/dist/cli/telemetry_bin.d.ts +1 -0
  14. package/dist/cli/telemetry_bin.js +5517 -0
  15. package/dist/cli/telemetry_bin.js.map +1 -0
  16. package/dist/cli/telemetry_cli.cjs +5523 -0
  17. package/dist/cli/telemetry_cli.cjs.map +1 -0
  18. package/dist/cli/telemetry_cli.d.cts +92 -0
  19. package/dist/cli/telemetry_cli.d.ts +92 -0
  20. package/dist/cli/telemetry_cli.js +5497 -0
  21. package/dist/cli/telemetry_cli.js.map +1 -0
  22. package/dist/client_defaults-B5tC-TgG.d.ts +8 -0
  23. package/dist/client_defaults-C9LnSX4j.d.cts +8 -0
  24. package/dist/core/index.cjs +2354 -0
  25. package/dist/core/index.cjs.map +1 -0
  26. package/dist/core/index.d.cts +168 -0
  27. package/dist/core/index.d.ts +168 -0
  28. package/dist/core/index.js +2318 -0
  29. package/dist/core/index.js.map +1 -0
  30. package/dist/electron/index.cjs +1379 -0
  31. package/dist/electron/index.cjs.map +1 -0
  32. package/dist/electron/index.d.cts +31 -0
  33. package/dist/electron/index.d.ts +31 -0
  34. package/dist/electron/index.js +1353 -0
  35. package/dist/electron/index.js.map +1 -0
  36. package/dist/envelope.types-rOLpWXRC.d.cts +42 -0
  37. package/dist/envelope.types-rOLpWXRC.d.ts +42 -0
  38. package/dist/in_memory_batch_transport-DKW9EZnU.d.cts +16 -0
  39. package/dist/in_memory_batch_transport-oOwNxXnA.d.ts +16 -0
  40. package/dist/index.cjs +3325 -0
  41. package/dist/index.cjs.map +1 -0
  42. package/dist/index.d.cts +66 -0
  43. package/dist/index.d.ts +66 -0
  44. package/dist/index.js +3285 -0
  45. package/dist/index.js.map +1 -0
  46. package/dist/maintenance_coordinator.types-B-bZUNvw.d.cts +127 -0
  47. package/dist/maintenance_coordinator.types-CBA5y74b.d.ts +127 -0
  48. package/dist/metric_definition_contract-BR6a_GzF.d.cts +12 -0
  49. package/dist/metric_definition_contract-l4i4SaAp.d.ts +12 -0
  50. package/dist/node/index.cjs +7157 -0
  51. package/dist/node/index.cjs.map +1 -0
  52. package/dist/node/index.d.cts +74 -0
  53. package/dist/node/index.d.ts +74 -0
  54. package/dist/node/index.js +7122 -0
  55. package/dist/node/index.js.map +1 -0
  56. package/dist/node/producer/index.cjs +1322 -0
  57. package/dist/node/producer/index.cjs.map +1 -0
  58. package/dist/node/producer/index.d.cts +21 -0
  59. package/dist/node/producer/index.d.ts +21 -0
  60. package/dist/node/producer/index.js +1294 -0
  61. package/dist/node/producer/index.js.map +1 -0
  62. package/dist/query.types-Bntwh6KF.d.cts +186 -0
  63. package/dist/query.types-DySoqYop.d.ts +186 -0
  64. package/dist/result.types-171Huujb.d.cts +9 -0
  65. package/dist/result.types-171Huujb.d.ts +9 -0
  66. package/dist/sqlite/index.cjs +3409 -0
  67. package/dist/sqlite/index.cjs.map +1 -0
  68. package/dist/sqlite/index.d.cts +77 -0
  69. package/dist/sqlite/index.d.ts +77 -0
  70. package/dist/sqlite/index.js +3382 -0
  71. package/dist/sqlite/index.js.map +1 -0
  72. package/dist/storage.types-BTCGVxOM.d.ts +76 -0
  73. package/dist/storage.types-DjuUMinz.d.cts +76 -0
  74. package/dist/telemetry_client-BXw8WH_F.d.ts +141 -0
  75. package/dist/telemetry_client-CYaPYfOl.d.cts +141 -0
  76. package/dist/telemetry_configuration_parser-C7Et_gwG.d.ts +39 -0
  77. package/dist/telemetry_configuration_parser-R-niZQRZ.d.cts +39 -0
  78. package/dist/testing/index.cjs +215 -0
  79. package/dist/testing/index.cjs.map +1 -0
  80. package/dist/testing/index.d.cts +32 -0
  81. package/dist/testing/index.d.ts +32 -0
  82. package/dist/testing/index.js +187 -0
  83. package/dist/testing/index.js.map +1 -0
  84. package/dist/trace-adapter/index.cjs +1034 -0
  85. package/dist/trace-adapter/index.cjs.map +1 -0
  86. package/dist/trace-adapter/index.d.cts +72 -0
  87. package/dist/trace-adapter/index.d.ts +72 -0
  88. package/dist/trace-adapter/index.js +1007 -0
  89. package/dist/trace-adapter/index.js.map +1 -0
  90. package/dist/transport.types-BAl_TRtU.d.cts +99 -0
  91. package/dist/transport.types-DDnZoKWi.d.ts +99 -0
  92. package/migrations/1783695629569_raw_events.down.sql +1 -0
  93. package/migrations/1783695629569_raw_events.up.sql +30 -0
  94. package/migrations/1783695630053_batch_acknowledgements.down.sql +1 -0
  95. package/migrations/1783695630053_batch_acknowledgements.up.sql +13 -0
  96. package/migrations/1783695630960_ingest_watermarks.down.sql +1 -0
  97. package/migrations/1783695630960_ingest_watermarks.up.sql +9 -0
  98. package/migrations/1783695631522_metric_definitions.down.sql +1 -0
  99. package/migrations/1783695631522_metric_definitions.up.sql +10 -0
  100. package/migrations/1783695631966_metric_samples.down.sql +1 -0
  101. package/migrations/1783695631966_metric_samples.up.sql +15 -0
  102. package/migrations/1783695632417_metric_rollups.down.sql +1 -0
  103. package/migrations/1783695632417_metric_rollups.up.sql +22 -0
  104. package/migrations/1783695632860_rollup_completions.down.sql +1 -0
  105. package/migrations/1783695632860_rollup_completions.up.sql +17 -0
  106. package/migrations/1783695633302_extraction_failures.down.sql +1 -0
  107. package/migrations/1783695633302_extraction_failures.up.sql +10 -0
  108. package/migrations/1783695633748_maintenance_runs.down.sql +1 -0
  109. package/migrations/1783695633748_maintenance_runs.up.sql +12 -0
  110. package/migrations/1783695634221_reader_leases.down.sql +1 -0
  111. package/migrations/1783695634221_reader_leases.up.sql +9 -0
  112. package/migrations/1783702703104_committed_drop_counters.down.sql +1 -0
  113. package/migrations/1783702703104_committed_drop_counters.up.sql +11 -0
  114. package/migrations/1783705542684_rollup_completion_state.down.sql +2 -0
  115. package/migrations/1783705542684_rollup_completion_state.up.sql +6 -0
  116. package/migrations/1784309799539_metric_samples_event_index.down.sql +1 -0
  117. package/migrations/1784309799539_metric_samples_event_index.up.sql +2 -0
  118. package/native/noego_telemetry_native.node +0 -0
  119. package/package.json +137 -0
  120. package/proper.json +8 -0
@@ -0,0 +1,76 @@
1
+ import { E as ExtractedMetricSample, a as MetricExtractionFailure, M as MetricDefinition, T as TimelineQuery, b as TimelineQueryResponse, c as TelemetryQueryError, d as MetricQuery, e as MetricQueryResponse } from './query.types-DySoqYop.js';
2
+ import { T as TelemetryResult } from './result.types-171Huujb.js';
3
+ import { d as TelemetryBatch, f as TelemetryDropCounter, e as TelemetryAcknowledgement, g as TelemetryDeliveryMode } from './transport.types-DDnZoKWi.js';
4
+
5
+ type TelemetryStorageCapabilities = Readonly<{
6
+ rawPersistence: boolean;
7
+ metricSamples: boolean;
8
+ rollups: boolean;
9
+ queries: boolean;
10
+ retention: boolean;
11
+ maintenance: boolean;
12
+ }>;
13
+ type StoragePersistRequest = Readonly<{
14
+ batch: TelemetryBatch;
15
+ samples: readonly ExtractedMetricSample[];
16
+ extractionFailures: readonly MetricExtractionFailure[];
17
+ }>;
18
+ type StorageTargetStatus = Readonly<{
19
+ targetId: string;
20
+ state: 'created' | 'starting' | 'ready' | 'failed' | 'stopped';
21
+ detail: string | null;
22
+ writerLeaseHeld: boolean;
23
+ committedDropCounters?: readonly TelemetryDropCounter[];
24
+ }>;
25
+ interface TelemetryStorageTransport {
26
+ readonly targetId: string;
27
+ readonly capabilities: TelemetryStorageCapabilities;
28
+ start(definitions: readonly MetricDefinition[]): Promise<TelemetryResult<void, string>>;
29
+ persist(request: StoragePersistRequest): Promise<TelemetryAcknowledgement>;
30
+ timeline(query: TimelineQuery): Promise<TelemetryResult<TimelineQueryResponse, TelemetryQueryError>>;
31
+ metrics(query: MetricQuery): Promise<TelemetryResult<MetricQueryResponse, TelemetryQueryError>>;
32
+ materializeRollups(nowMs: number, maxWorkMs: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
33
+ enforceRetention(nowMs: number, shouldContinue?: () => boolean): Promise<TelemetryResult<MaintenanceStageResult, string>>;
34
+ checkpoint(): Promise<TelemetryResult<MaintenanceStageResult, string>>;
35
+ reclaim(maxPages: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
36
+ compact(deadlineMs: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
37
+ recordMaintenance?(record: MaintenanceRunRecord): Promise<TelemetryResult<void, string>>;
38
+ status(): StorageTargetStatus;
39
+ stop(deadlineMs: number): Promise<void>;
40
+ }
41
+ type TelemetryStorageTarget = Readonly<{
42
+ targetId: string;
43
+ delivery: TelemetryDeliveryMode;
44
+ transport: TelemetryStorageTransport;
45
+ matches: (batch: TelemetryBatch) => boolean;
46
+ }>;
47
+ type TelemetryStorageRouterOptions = Readonly<{
48
+ routerId: string;
49
+ targets: readonly TelemetryStorageTarget[];
50
+ defaultTargetId: string | null;
51
+ volatile: boolean;
52
+ now: () => number;
53
+ maxRememberedBatches?: number;
54
+ }>;
55
+ type MaintenanceStageResult = Readonly<{
56
+ stage: 'rollup' | 'retention' | 'checkpoint' | 'reclaim' | 'compaction';
57
+ affectedRows: number;
58
+ affectedPages: number;
59
+ elapsedMs: number;
60
+ detail: string | null;
61
+ deletionRounds?: number;
62
+ completed?: boolean;
63
+ interrupted?: boolean;
64
+ }>;
65
+ type MaintenanceRunRecord = Readonly<{
66
+ runId: string;
67
+ kind: 'scheduled' | 'compaction';
68
+ state: 'started' | 'completed' | 'failed';
69
+ startedAtMs: number;
70
+ completedAtMs: number | null;
71
+ stages: readonly MaintenanceStageResult[];
72
+ failedStage: MaintenanceStageResult['stage'] | null;
73
+ error: string | null;
74
+ }>;
75
+
76
+ export type { MaintenanceStageResult as M, StoragePersistRequest as S, TelemetryStorageTransport as T, TelemetryStorageCapabilities as a, StorageTargetStatus as b, MaintenanceRunRecord as c, TelemetryStorageRouterOptions as d, TelemetryStorageTarget as e };
@@ -0,0 +1,76 @@
1
+ import { E as ExtractedMetricSample, a as MetricExtractionFailure, M as MetricDefinition, T as TimelineQuery, b as TimelineQueryResponse, c as TelemetryQueryError, d as MetricQuery, e as MetricQueryResponse } from './query.types-Bntwh6KF.cjs';
2
+ import { T as TelemetryResult } from './result.types-171Huujb.cjs';
3
+ import { d as TelemetryBatch, f as TelemetryDropCounter, e as TelemetryAcknowledgement, g as TelemetryDeliveryMode } from './transport.types-BAl_TRtU.cjs';
4
+
5
+ type TelemetryStorageCapabilities = Readonly<{
6
+ rawPersistence: boolean;
7
+ metricSamples: boolean;
8
+ rollups: boolean;
9
+ queries: boolean;
10
+ retention: boolean;
11
+ maintenance: boolean;
12
+ }>;
13
+ type StoragePersistRequest = Readonly<{
14
+ batch: TelemetryBatch;
15
+ samples: readonly ExtractedMetricSample[];
16
+ extractionFailures: readonly MetricExtractionFailure[];
17
+ }>;
18
+ type StorageTargetStatus = Readonly<{
19
+ targetId: string;
20
+ state: 'created' | 'starting' | 'ready' | 'failed' | 'stopped';
21
+ detail: string | null;
22
+ writerLeaseHeld: boolean;
23
+ committedDropCounters?: readonly TelemetryDropCounter[];
24
+ }>;
25
+ interface TelemetryStorageTransport {
26
+ readonly targetId: string;
27
+ readonly capabilities: TelemetryStorageCapabilities;
28
+ start(definitions: readonly MetricDefinition[]): Promise<TelemetryResult<void, string>>;
29
+ persist(request: StoragePersistRequest): Promise<TelemetryAcknowledgement>;
30
+ timeline(query: TimelineQuery): Promise<TelemetryResult<TimelineQueryResponse, TelemetryQueryError>>;
31
+ metrics(query: MetricQuery): Promise<TelemetryResult<MetricQueryResponse, TelemetryQueryError>>;
32
+ materializeRollups(nowMs: number, maxWorkMs: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
33
+ enforceRetention(nowMs: number, shouldContinue?: () => boolean): Promise<TelemetryResult<MaintenanceStageResult, string>>;
34
+ checkpoint(): Promise<TelemetryResult<MaintenanceStageResult, string>>;
35
+ reclaim(maxPages: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
36
+ compact(deadlineMs: number): Promise<TelemetryResult<MaintenanceStageResult, string>>;
37
+ recordMaintenance?(record: MaintenanceRunRecord): Promise<TelemetryResult<void, string>>;
38
+ status(): StorageTargetStatus;
39
+ stop(deadlineMs: number): Promise<void>;
40
+ }
41
+ type TelemetryStorageTarget = Readonly<{
42
+ targetId: string;
43
+ delivery: TelemetryDeliveryMode;
44
+ transport: TelemetryStorageTransport;
45
+ matches: (batch: TelemetryBatch) => boolean;
46
+ }>;
47
+ type TelemetryStorageRouterOptions = Readonly<{
48
+ routerId: string;
49
+ targets: readonly TelemetryStorageTarget[];
50
+ defaultTargetId: string | null;
51
+ volatile: boolean;
52
+ now: () => number;
53
+ maxRememberedBatches?: number;
54
+ }>;
55
+ type MaintenanceStageResult = Readonly<{
56
+ stage: 'rollup' | 'retention' | 'checkpoint' | 'reclaim' | 'compaction';
57
+ affectedRows: number;
58
+ affectedPages: number;
59
+ elapsedMs: number;
60
+ detail: string | null;
61
+ deletionRounds?: number;
62
+ completed?: boolean;
63
+ interrupted?: boolean;
64
+ }>;
65
+ type MaintenanceRunRecord = Readonly<{
66
+ runId: string;
67
+ kind: 'scheduled' | 'compaction';
68
+ state: 'started' | 'completed' | 'failed';
69
+ startedAtMs: number;
70
+ completedAtMs: number | null;
71
+ stages: readonly MaintenanceStageResult[];
72
+ failedStage: MaintenanceStageResult['stage'] | null;
73
+ error: string | null;
74
+ }>;
75
+
76
+ export type { MaintenanceStageResult as M, StoragePersistRequest as S, TelemetryStorageTransport as T, TelemetryStorageCapabilities as a, StorageTargetStatus as b, MaintenanceRunRecord as c, TelemetryStorageRouterOptions as d, TelemetryStorageTarget as e };
@@ -0,0 +1,141 @@
1
+ import { T as TelemetryBatchTransport, f as TelemetryDropCounter, e as TelemetryAcknowledgement } from './transport.types-DDnZoKWi.js';
2
+ import { c as TelemetryJsonObject, f as TelemetryLevel, a as TelemetryAdmitInput } from './envelope.types-rOLpWXRC.js';
3
+
4
+ type MetadataRedactionRule = Readonly<{
5
+ path: string;
6
+ replacement: string;
7
+ }>;
8
+ type MetadataSnapshotLimits = Readonly<{
9
+ maxBytes: number;
10
+ maxDepth: number;
11
+ maxProperties: number;
12
+ maxArrayLength: number;
13
+ maxStringLength: number;
14
+ maxErrorStackLength: number;
15
+ redactions: readonly MetadataRedactionRule[];
16
+ }>;
17
+ type MetadataSnapshotStats = Readonly<{
18
+ estimatedBytes: number;
19
+ truncatedValues: number;
20
+ redactedValues: number;
21
+ serializationFailures: number;
22
+ }>;
23
+ type MetadataSnapshot = Readonly<{
24
+ metadata: TelemetryJsonObject;
25
+ stats: MetadataSnapshotStats;
26
+ }>;
27
+
28
+ type TelemetryAdmissionPriority = 'low' | 'normal' | 'high';
29
+ type TelemetryAdmissionPolicy = Readonly<{
30
+ maxQueuedEvents: number;
31
+ maxQueuedBytes: number;
32
+ maxBatchEvents: number;
33
+ maxBatchBytes: number;
34
+ maxInFlightBatches: number;
35
+ retryLimit: number;
36
+ retryBaseDelayMs: number;
37
+ sampleRates: Readonly<Record<TelemetryAdmissionPriority, number>>;
38
+ }>;
39
+ type TelemetryClientOptions = Readonly<{
40
+ source: string;
41
+ processKind: string;
42
+ transport: TelemetryBatchTransport;
43
+ admission: TelemetryAdmissionPolicy;
44
+ metadata: MetadataSnapshotLimits;
45
+ producerId: string;
46
+ now: () => number;
47
+ monotonicNowNs: () => string | null;
48
+ schedule: (work: () => void) => void;
49
+ delay: (durationMs: number) => Promise<void>;
50
+ random: () => number;
51
+ }>;
52
+ type TelemetryAdmissionResult = Readonly<{
53
+ kind: 'admitted';
54
+ producerId: string;
55
+ sequence: number;
56
+ eventId: string;
57
+ }> | Readonly<{
58
+ kind: 'dropped';
59
+ producerId: string;
60
+ sequence: number;
61
+ reason: string;
62
+ }>;
63
+ type TelemetryClientStatus = Readonly<{
64
+ state: 'accepting' | 'draining' | 'stopped';
65
+ producerId: string;
66
+ nextSequence: number;
67
+ queuedEvents: number;
68
+ queuedBytes: number;
69
+ inFlightBatches: number;
70
+ dropCounters: readonly TelemetryDropCounter[];
71
+ lastAcknowledgement: TelemetryAcknowledgement | null;
72
+ }>;
73
+
74
+ declare class TelemetryClient {
75
+ private readonly options;
76
+ private readonly snapshotter;
77
+ private readonly batchContract;
78
+ private readonly queue;
79
+ private readonly dropCounts;
80
+ private state;
81
+ private nextSequence;
82
+ private queuedBytes;
83
+ private inFlightBatches;
84
+ private drainScheduled;
85
+ private activeDrain;
86
+ private lastAcknowledgement;
87
+ constructor(options: TelemetryClientOptions);
88
+ trace(level: TelemetryLevel, label: string, metadata?: unknown): TelemetryAdmissionResult;
89
+ debug(label: string, metadata?: unknown): TelemetryAdmissionResult;
90
+ info(label: string, metadata?: unknown): TelemetryAdmissionResult;
91
+ warn(label: string, metadata?: unknown): TelemetryAdmissionResult;
92
+ error(label: string, metadata?: unknown): TelemetryAdmissionResult;
93
+ fatal(label: string, metadata?: unknown): TelemetryAdmissionResult;
94
+ emit(level: TelemetryLevel, label: string, metadata: unknown): TelemetryAdmissionResult;
95
+ admit(input: TelemetryAdmitInput): TelemetryAdmissionResult;
96
+ status(): TelemetryClientStatus;
97
+ flush(deadlineMs: number): Promise<void>;
98
+ stop(deadlineMs: number): Promise<void>;
99
+ private createEnvelope;
100
+ private resolveCorrelation;
101
+ private scheduleDrain;
102
+ private drainLoop;
103
+ private prepareBatch;
104
+ private peekBatchEntries;
105
+ private findFittingBatch;
106
+ private deliverWithRetry;
107
+ private retryDelay;
108
+ private normalizeAcknowledgement;
109
+ private acknowledgementError;
110
+ private committedAcknowledgementError;
111
+ private retryableAcknowledgementError;
112
+ private rejectedAcknowledgementError;
113
+ private conflictAcknowledgementError;
114
+ private targetStatesError;
115
+ private isValidTargetState;
116
+ private invalidAcknowledgement;
117
+ private detachAcknowledgement;
118
+ private isRecord;
119
+ private hasExactKeys;
120
+ private isBoundedReason;
121
+ private dropCounterSnapshot;
122
+ private subtractDropSnapshot;
123
+ private incrementDrop;
124
+ private incrementDropBy;
125
+ private priorityFor;
126
+ private isSampled;
127
+ private isValidLabel;
128
+ private errorMessage;
129
+ private settleExternalShutdown;
130
+ private validateOptions;
131
+ private validateIdentityOptions;
132
+ private validateOrderedDeliveryOptions;
133
+ private validateCapacityOptions;
134
+ private validateBatchEventOptions;
135
+ private validateBatchByteOptions;
136
+ private validateMetadataOptions;
137
+ private validateRetryOptions;
138
+ private validateSampleRateOptions;
139
+ }
140
+
141
+ export { type MetadataSnapshotLimits as M, type TelemetryAdmissionPolicy as T, TelemetryClient as a, type TelemetryAdmissionResult as b, type MetadataRedactionRule as c, type MetadataSnapshot as d, type MetadataSnapshotStats as e, type TelemetryAdmissionPriority as f, type TelemetryClientOptions as g, type TelemetryClientStatus as h };
@@ -0,0 +1,141 @@
1
+ import { T as TelemetryBatchTransport, f as TelemetryDropCounter, e as TelemetryAcknowledgement } from './transport.types-BAl_TRtU.cjs';
2
+ import { c as TelemetryJsonObject, f as TelemetryLevel, a as TelemetryAdmitInput } from './envelope.types-rOLpWXRC.cjs';
3
+
4
+ type MetadataRedactionRule = Readonly<{
5
+ path: string;
6
+ replacement: string;
7
+ }>;
8
+ type MetadataSnapshotLimits = Readonly<{
9
+ maxBytes: number;
10
+ maxDepth: number;
11
+ maxProperties: number;
12
+ maxArrayLength: number;
13
+ maxStringLength: number;
14
+ maxErrorStackLength: number;
15
+ redactions: readonly MetadataRedactionRule[];
16
+ }>;
17
+ type MetadataSnapshotStats = Readonly<{
18
+ estimatedBytes: number;
19
+ truncatedValues: number;
20
+ redactedValues: number;
21
+ serializationFailures: number;
22
+ }>;
23
+ type MetadataSnapshot = Readonly<{
24
+ metadata: TelemetryJsonObject;
25
+ stats: MetadataSnapshotStats;
26
+ }>;
27
+
28
+ type TelemetryAdmissionPriority = 'low' | 'normal' | 'high';
29
+ type TelemetryAdmissionPolicy = Readonly<{
30
+ maxQueuedEvents: number;
31
+ maxQueuedBytes: number;
32
+ maxBatchEvents: number;
33
+ maxBatchBytes: number;
34
+ maxInFlightBatches: number;
35
+ retryLimit: number;
36
+ retryBaseDelayMs: number;
37
+ sampleRates: Readonly<Record<TelemetryAdmissionPriority, number>>;
38
+ }>;
39
+ type TelemetryClientOptions = Readonly<{
40
+ source: string;
41
+ processKind: string;
42
+ transport: TelemetryBatchTransport;
43
+ admission: TelemetryAdmissionPolicy;
44
+ metadata: MetadataSnapshotLimits;
45
+ producerId: string;
46
+ now: () => number;
47
+ monotonicNowNs: () => string | null;
48
+ schedule: (work: () => void) => void;
49
+ delay: (durationMs: number) => Promise<void>;
50
+ random: () => number;
51
+ }>;
52
+ type TelemetryAdmissionResult = Readonly<{
53
+ kind: 'admitted';
54
+ producerId: string;
55
+ sequence: number;
56
+ eventId: string;
57
+ }> | Readonly<{
58
+ kind: 'dropped';
59
+ producerId: string;
60
+ sequence: number;
61
+ reason: string;
62
+ }>;
63
+ type TelemetryClientStatus = Readonly<{
64
+ state: 'accepting' | 'draining' | 'stopped';
65
+ producerId: string;
66
+ nextSequence: number;
67
+ queuedEvents: number;
68
+ queuedBytes: number;
69
+ inFlightBatches: number;
70
+ dropCounters: readonly TelemetryDropCounter[];
71
+ lastAcknowledgement: TelemetryAcknowledgement | null;
72
+ }>;
73
+
74
+ declare class TelemetryClient {
75
+ private readonly options;
76
+ private readonly snapshotter;
77
+ private readonly batchContract;
78
+ private readonly queue;
79
+ private readonly dropCounts;
80
+ private state;
81
+ private nextSequence;
82
+ private queuedBytes;
83
+ private inFlightBatches;
84
+ private drainScheduled;
85
+ private activeDrain;
86
+ private lastAcknowledgement;
87
+ constructor(options: TelemetryClientOptions);
88
+ trace(level: TelemetryLevel, label: string, metadata?: unknown): TelemetryAdmissionResult;
89
+ debug(label: string, metadata?: unknown): TelemetryAdmissionResult;
90
+ info(label: string, metadata?: unknown): TelemetryAdmissionResult;
91
+ warn(label: string, metadata?: unknown): TelemetryAdmissionResult;
92
+ error(label: string, metadata?: unknown): TelemetryAdmissionResult;
93
+ fatal(label: string, metadata?: unknown): TelemetryAdmissionResult;
94
+ emit(level: TelemetryLevel, label: string, metadata: unknown): TelemetryAdmissionResult;
95
+ admit(input: TelemetryAdmitInput): TelemetryAdmissionResult;
96
+ status(): TelemetryClientStatus;
97
+ flush(deadlineMs: number): Promise<void>;
98
+ stop(deadlineMs: number): Promise<void>;
99
+ private createEnvelope;
100
+ private resolveCorrelation;
101
+ private scheduleDrain;
102
+ private drainLoop;
103
+ private prepareBatch;
104
+ private peekBatchEntries;
105
+ private findFittingBatch;
106
+ private deliverWithRetry;
107
+ private retryDelay;
108
+ private normalizeAcknowledgement;
109
+ private acknowledgementError;
110
+ private committedAcknowledgementError;
111
+ private retryableAcknowledgementError;
112
+ private rejectedAcknowledgementError;
113
+ private conflictAcknowledgementError;
114
+ private targetStatesError;
115
+ private isValidTargetState;
116
+ private invalidAcknowledgement;
117
+ private detachAcknowledgement;
118
+ private isRecord;
119
+ private hasExactKeys;
120
+ private isBoundedReason;
121
+ private dropCounterSnapshot;
122
+ private subtractDropSnapshot;
123
+ private incrementDrop;
124
+ private incrementDropBy;
125
+ private priorityFor;
126
+ private isSampled;
127
+ private isValidLabel;
128
+ private errorMessage;
129
+ private settleExternalShutdown;
130
+ private validateOptions;
131
+ private validateIdentityOptions;
132
+ private validateOrderedDeliveryOptions;
133
+ private validateCapacityOptions;
134
+ private validateBatchEventOptions;
135
+ private validateBatchByteOptions;
136
+ private validateMetadataOptions;
137
+ private validateRetryOptions;
138
+ private validateSampleRateOptions;
139
+ }
140
+
141
+ export { type MetadataSnapshotLimits as M, type TelemetryAdmissionPolicy as T, TelemetryClient as a, type TelemetryAdmissionResult as b, type MetadataRedactionRule as c, type MetadataSnapshot as d, type MetadataSnapshotStats as e, type TelemetryAdmissionPriority as f, type TelemetryClientOptions as g, type TelemetryClientStatus as h };
@@ -0,0 +1,39 @@
1
+ import { M as MetricDefinitionContract } from './metric_definition_contract-l4i4SaAp.js';
2
+ import { R as ResolvedTelemetryConfiguration } from './query.types-DySoqYop.js';
3
+
4
+ declare class TelemetryDurationParser {
5
+ private static readonly MULTIPLIERS;
6
+ parse(value: string, field: string, allowZero?: boolean): number;
7
+ }
8
+
9
+ type NodeTelemetryConfigurationParseOptions = Readonly<{
10
+ sourceName?: string;
11
+ storageBaseDirectory?: string;
12
+ }>;
13
+
14
+ declare class TelemetryConfigurationError extends Error {
15
+ readonly source: string;
16
+ constructor(message: string, source: string);
17
+ }
18
+ declare class NodeTelemetryConfigurationParser {
19
+ private readonly durations;
20
+ private readonly metricContract;
21
+ constructor(durations?: TelemetryDurationParser, metricContract?: MetricDefinitionContract);
22
+ parseFile(configurationPath: string, options?: NodeTelemetryConfigurationParseOptions): ResolvedTelemetryConfiguration;
23
+ parseYaml(source: string, options?: NodeTelemetryConfigurationParseOptions): ResolvedTelemetryConfiguration;
24
+ private resolveDocument;
25
+ private validateRole;
26
+ private resolveTarget;
27
+ private validateRetention;
28
+ private validateTargets;
29
+ private resolveMetric;
30
+ private validateNormalizedMetric;
31
+ private isFieldPath;
32
+ private resolveMeasurement;
33
+ private metricResolutions;
34
+ private validateMetricResolutions;
35
+ private validateMetricIdentities;
36
+ private errorMessage;
37
+ }
38
+
39
+ export { NodeTelemetryConfigurationParser as N, TelemetryConfigurationError as T, type NodeTelemetryConfigurationParseOptions as a, TelemetryDurationParser as b };
@@ -0,0 +1,39 @@
1
+ import { M as MetricDefinitionContract } from './metric_definition_contract-BR6a_GzF.cjs';
2
+ import { R as ResolvedTelemetryConfiguration } from './query.types-Bntwh6KF.cjs';
3
+
4
+ declare class TelemetryDurationParser {
5
+ private static readonly MULTIPLIERS;
6
+ parse(value: string, field: string, allowZero?: boolean): number;
7
+ }
8
+
9
+ type NodeTelemetryConfigurationParseOptions = Readonly<{
10
+ sourceName?: string;
11
+ storageBaseDirectory?: string;
12
+ }>;
13
+
14
+ declare class TelemetryConfigurationError extends Error {
15
+ readonly source: string;
16
+ constructor(message: string, source: string);
17
+ }
18
+ declare class NodeTelemetryConfigurationParser {
19
+ private readonly durations;
20
+ private readonly metricContract;
21
+ constructor(durations?: TelemetryDurationParser, metricContract?: MetricDefinitionContract);
22
+ parseFile(configurationPath: string, options?: NodeTelemetryConfigurationParseOptions): ResolvedTelemetryConfiguration;
23
+ parseYaml(source: string, options?: NodeTelemetryConfigurationParseOptions): ResolvedTelemetryConfiguration;
24
+ private resolveDocument;
25
+ private validateRole;
26
+ private resolveTarget;
27
+ private validateRetention;
28
+ private validateTargets;
29
+ private resolveMetric;
30
+ private validateNormalizedMetric;
31
+ private isFieldPath;
32
+ private resolveMeasurement;
33
+ private metricResolutions;
34
+ private validateMetricResolutions;
35
+ private validateMetricIdentities;
36
+ private errorMessage;
37
+ }
38
+
39
+ export { NodeTelemetryConfigurationParser as N, TelemetryConfigurationError as T, type NodeTelemetryConfigurationParseOptions as a, TelemetryDurationParser as b };