@aztec/telemetry-client 0.0.1-commit.3469e52 → 0.0.1-commit.35158ae7e

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.
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
package/dest/telemetry.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { SpanStatusCode } from '@opentelemetry/api';
2
2
  import { getTelemetryClient } from './start.js';
3
- export { toMetricOptions } from './metric-utils.js';
3
+ export { toMetricOptions, createUpDownCounterWithDefault } from './metric-utils.js';
4
4
  export { SpanStatusCode, ValueType } from '@opentelemetry/api';
5
5
  /**
6
6
  * Starts a new span whenever the decorated method is called.
@@ -5,7 +5,7 @@ import { type Traceable, type Tracer } from '@aztec/telemetry-client';
5
5
  export declare class TraceableL2BlockStream extends L2BlockStream implements Traceable {
6
6
  readonly tracer: Tracer;
7
7
  private readonly name;
8
- constructor(l2BlockSource: Pick<L2BlockSource, 'getL2BlocksNew' | 'getBlockHeader' | 'getL2Tips' | 'getPublishedCheckpoints' | 'getCheckpointedBlocks'>, localData: L2BlockStreamLocalDataProvider, handler: L2BlockStreamEventHandler, tracer: Tracer, name?: string, log?: import("@aztec/foundation/log").Logger, opts?: {
8
+ constructor(l2BlockSource: Pick<L2BlockSource, 'getBlocks' | 'getBlockHeader' | 'getL2Tips' | 'getCheckpoints' | 'getCheckpointedBlocks'>, localData: L2BlockStreamLocalDataProvider, handler: L2BlockStreamEventHandler, tracer: Tracer, name?: string, log?: import("@aztec/foundation/log").Logger, opts?: {
9
9
  proven?: boolean;
10
10
  pollIntervalMS?: number;
11
11
  batchSize?: number;
@@ -13,4 +13,4 @@ export declare class TraceableL2BlockStream extends L2BlockStream implements Tra
13
13
  });
14
14
  work(): Promise<void>;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd3JhcHBlcnMvbDJfYmxvY2tfc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU5RCxPQUFPLEVBQ0wsS0FBSyxhQUFhLEVBQ2xCLGFBQWEsRUFDYixLQUFLLHlCQUF5QixFQUM5QixLQUFLLDhCQUE4QixFQUNwQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBRSxLQUFLLE1BQU0sRUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBRWpGLGtGQUFrRjtBQUNsRixxQkFBYSxzQkFBdUIsU0FBUSxhQUFjLFlBQVcsU0FBUzthQVExRCxNQUFNLEVBQUUsTUFBTTtJQUM5QixPQUFPLENBQUMsUUFBUSxDQUFDLElBQUk7SUFSdkIsWUFDRSxhQUFhLEVBQUUsSUFBSSxDQUNqQixhQUFhLEVBQ2IsZ0JBQWdCLEdBQUcsZ0JBQWdCLEdBQUcsV0FBVyxHQUFHLHlCQUF5QixHQUFHLHVCQUF1QixDQUN4RyxFQUNELFNBQVMsRUFBRSw4QkFBOEIsRUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUNsQixNQUFNLEVBQUUsTUFBTSxFQUNiLElBQUksR0FBRSxNQUF3QixFQUMvQyxHQUFHLHlDQUFxQyxFQUN4QyxJQUFJLEdBQUU7UUFDSixNQUFNLENBQUMsRUFBRSxPQUFPLENBQUM7UUFDakIsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUNuQixhQUFhLENBQUMsRUFBRSxXQUFXLENBQUM7S0FDeEIsRUFHUDtJQU9RLElBQUksa0JBRVo7Q0FDRiJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc3RyZWFtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd3JhcHBlcnMvbDJfYmxvY2tfc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU5RCxPQUFPLEVBQ0wsS0FBSyxhQUFhLEVBQ2xCLGFBQWEsRUFDYixLQUFLLHlCQUF5QixFQUM5QixLQUFLLDhCQUE4QixFQUNwQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBRSxLQUFLLE1BQU0sRUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBRWpGLGtGQUFrRjtBQUNsRixxQkFBYSxzQkFBdUIsU0FBUSxhQUFjLFlBQVcsU0FBUzthQVExRCxNQUFNLEVBQUUsTUFBTTtJQUM5QixPQUFPLENBQUMsUUFBUSxDQUFDLElBQUk7SUFSdkIsWUFDRSxhQUFhLEVBQUUsSUFBSSxDQUNqQixhQUFhLEVBQ2IsV0FBVyxHQUFHLGdCQUFnQixHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsR0FBRyx1QkFBdUIsQ0FDMUYsRUFDRCxTQUFTLEVBQUUsOEJBQThCLEVBQ3pDLE9BQU8sRUFBRSx5QkFBeUIsRUFDbEIsTUFBTSxFQUFFLE1BQU0sRUFDYixJQUFJLEdBQUUsTUFBd0IsRUFDL0MsR0FBRyx5Q0FBcUMsRUFDeEMsSUFBSSxHQUFFO1FBQ0osTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDO1FBQ2pCLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUN4QixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDbkIsYUFBYSxDQUFDLEVBQUUsV0FBVyxDQUFDO0tBQ3hCLEVBR1A7SUFPUSxJQUFJLGtCQUVaO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"l2_block_stream.d.ts","sourceRoot":"","sources":["../../src/wrappers/l2_block_stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EACL,KAAK,aAAa,EAClB,aAAa,EACb,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACpC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,MAAM,EAAa,MAAM,yBAAyB,CAAC;AAEjF,kFAAkF;AAClF,qBAAa,sBAAuB,SAAQ,aAAc,YAAW,SAAS;aAQ1D,MAAM,EAAE,MAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IARvB,YACE,aAAa,EAAE,IAAI,CACjB,aAAa,EACb,gBAAgB,GAAG,gBAAgB,GAAG,WAAW,GAAG,yBAAyB,GAAG,uBAAuB,CACxG,EACD,SAAS,EAAE,8BAA8B,EACzC,OAAO,EAAE,yBAAyB,EAClB,MAAM,EAAE,MAAM,EACb,IAAI,GAAE,MAAwB,EAC/C,GAAG,yCAAqC,EACxC,IAAI,GAAE;QACJ,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,WAAW,CAAC;KACxB,EAGP;IAOQ,IAAI,kBAEZ;CACF"}
1
+ {"version":3,"file":"l2_block_stream.d.ts","sourceRoot":"","sources":["../../src/wrappers/l2_block_stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EACL,KAAK,aAAa,EAClB,aAAa,EACb,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACpC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,MAAM,EAAa,MAAM,yBAAyB,CAAC;AAEjF,kFAAkF;AAClF,qBAAa,sBAAuB,SAAQ,aAAc,YAAW,SAAS;aAQ1D,MAAM,EAAE,MAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IARvB,YACE,aAAa,EAAE,IAAI,CACjB,aAAa,EACb,WAAW,GAAG,gBAAgB,GAAG,WAAW,GAAG,gBAAgB,GAAG,uBAAuB,CAC1F,EACD,SAAS,EAAE,8BAA8B,EACzC,OAAO,EAAE,yBAAyB,EAClB,MAAM,EAAE,MAAM,EACb,IAAI,GAAE,MAAwB,EAC/C,GAAG,yCAAqC,EACxC,IAAI,GAAE;QACJ,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,WAAW,CAAC;KACxB,EAGP;IAOQ,IAAI,kBAEZ;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/telemetry-client",
3
- "version": "0.0.1-commit.3469e52",
3
+ "version": "0.0.1-commit.35158ae7e",
4
4
  "inherits": [
5
5
  "../package.common.json"
6
6
  ],
@@ -27,8 +27,8 @@
27
27
  "!*.test.*"
28
28
  ],
29
29
  "dependencies": {
30
- "@aztec/foundation": "0.0.1-commit.3469e52",
31
- "@aztec/stdlib": "0.0.1-commit.3469e52",
30
+ "@aztec/foundation": "0.0.1-commit.35158ae7e",
31
+ "@aztec/stdlib": "0.0.1-commit.35158ae7e",
32
32
  "@opentelemetry/api": "^1.9.0",
33
33
  "@opentelemetry/api-logs": "^0.55.0",
34
34
  "@opentelemetry/core": "^1.28.0",
package/src/attributes.ts CHANGED
@@ -128,6 +128,9 @@ export const NODEJS_EVENT_LOOP_STATE = 'nodejs.eventloop.state';
128
128
 
129
129
  export const TOPIC_NAME = 'aztec.gossip.topic_name';
130
130
 
131
+ /** The reason a transaction was evicted from the tx pool */
132
+ export const TX_POOL_EVICTION_REASON = 'aztec.mempool.eviction_reason';
133
+
131
134
  export const TX_COLLECTION_METHOD = 'aztec.tx_collection.method';
132
135
 
133
136
  /** Scope of L1 transaction (sequencer, prover, or other) */
@@ -139,8 +142,20 @@ export const IS_COMMITTEE_MEMBER = 'aztec.is_committee_member';
139
142
  /** Fisherman fee analysis strategy identifier */
140
143
  export const FISHERMAN_FEE_STRATEGY_ID = 'aztec.fisherman.strategy_id';
141
144
 
145
+ /** Whether the analyzed block reached 100% blob capacity */
146
+ export const BLOCK_FULL = 'aztec.block_full';
147
+
142
148
  /** The L1 transaction target for block proposal */
143
149
  export const L1_BLOCK_PROPOSAL_TX_TARGET = 'aztec.l1.block_proposal_tx_target';
144
150
 
145
151
  /** Whether tracing methods were used to extract block proposal data */
146
152
  export const L1_BLOCK_PROPOSAL_USED_TRACE = 'aztec.l1.block_proposal_used_trace';
153
+
154
+ /** HA signer duty type (e.g., BLOCK_PROPOSAL, CHECKPOINT_ATTESTATION) */
155
+ export const HA_DUTY_TYPE = 'aztec.ha_signer.duty_type';
156
+
157
+ /** HA signer node identifier */
158
+ export const HA_NODE_ID = 'aztec.ha_signer.node_id';
159
+
160
+ /** The address of an attester (validator) participating in consensus */
161
+ export const ATTESTER_ADDRESS = 'aztec.attester.address';
@@ -1,6 +1,7 @@
1
- import type { MetricOptions } from '@opentelemetry/api';
1
+ import type { AttributeValue, MetricOptions } from '@opentelemetry/api';
2
2
 
3
3
  import type { MetricDefinition } from './metrics.js';
4
+ import type { AllowedAttributeNames, Meter, MetricAttributesType, UpDownCounter } from './telemetry.js';
4
5
 
5
6
  /** Extracts OpenTelemetry MetricOptions from a MetricDefinition */
6
7
  export function toMetricOptions(def: MetricDefinition): MetricOptions {
@@ -10,3 +11,65 @@ export function toMetricOptions(def: MetricDefinition): MetricOptions {
10
11
  valueType: def.valueType,
11
12
  };
12
13
  }
14
+
15
+ /** A mapping of attribute keys to their possible values */
16
+ export type AttributeValuesMap = Partial<Record<AllowedAttributeNames, AttributeValue[]>>;
17
+
18
+ /**
19
+ * Expands an attribute values map into all combinations of attribute objects.
20
+ * Example: { status: ['ok', 'fail'], type: ['a', 'b'] } =>
21
+ * [{ status: 'ok', type: 'a' }, { status: 'ok', type: 'b' }, { status: 'fail', type: 'a' }, { status: 'fail', type: 'b' }]
22
+ */
23
+ export function expandAttributeCombinations(attrMap: AttributeValuesMap): MetricAttributesType[] {
24
+ const keys = Object.keys(attrMap) as AllowedAttributeNames[];
25
+ if (keys.length === 0) {
26
+ return [{}];
27
+ }
28
+
29
+ const result: MetricAttributesType[] = [];
30
+
31
+ function generate(index: number, current: MetricAttributesType) {
32
+ if (index === keys.length) {
33
+ result.push({ ...current });
34
+ return;
35
+ }
36
+ const key = keys[index];
37
+ for (const value of attrMap[key]!) {
38
+ current[key] = value;
39
+ generate(index + 1, current);
40
+ }
41
+ }
42
+
43
+ generate(0, {});
44
+ return result;
45
+ }
46
+
47
+ /**
48
+ * Creates an UpDownCounter and initializes it to 0.
49
+ * @param meter - The meter to create the counter on
50
+ * @param metric - The metric definition
51
+ * @param attributes - Optional attributes for initialization. Can be:
52
+ * - AttributeValuesMap: mapping of attribute keys to arrays of possible values (generates cartesian product)
53
+ * - MetricAttributesType[]: explicit array of attribute objects
54
+ * - undefined: initializes without attributes
55
+ */
56
+ export function createUpDownCounterWithDefault(
57
+ meter: Meter,
58
+ metric: MetricDefinition,
59
+ attributes: AttributeValuesMap | MetricAttributesType[] | undefined = undefined,
60
+ ): UpDownCounter {
61
+ const counter = meter.createUpDownCounter(metric);
62
+ if (attributes === undefined) {
63
+ counter.add(0);
64
+ } else if (Array.isArray(attributes)) {
65
+ for (const attrs of attributes) {
66
+ counter.add(0, attrs);
67
+ }
68
+ } else {
69
+ const combinations = expandAttributeCombinations(attributes);
70
+ for (const attrs of combinations) {
71
+ counter.add(0, attrs);
72
+ }
73
+ }
74
+ return counter;
75
+ }
package/src/metrics.ts CHANGED
@@ -167,6 +167,55 @@ export const MEMPOOL_TX_MINED_DELAY: MetricDefinition = {
167
167
  valueType: ValueType.INT,
168
168
  };
169
169
 
170
+ export const MEMPOOL_TX_POOL_V2_EVICTED_COUNT: MetricDefinition = {
171
+ name: 'aztec.mempool.tx_pool_v2.evicted_count',
172
+ description: 'The number of transactions evicted from the tx pool',
173
+ valueType: ValueType.INT,
174
+ };
175
+ export const MEMPOOL_TX_POOL_V2_IGNORED_COUNT: MetricDefinition = {
176
+ name: 'aztec.mempool.tx_pool_v2.ignored_count',
177
+ description: 'The number of transactions ignored in addPendingTxs',
178
+ valueType: ValueType.INT,
179
+ };
180
+ export const MEMPOOL_TX_POOL_V2_REJECTED_COUNT: MetricDefinition = {
181
+ name: 'aztec.mempool.tx_pool_v2.rejected_count',
182
+ description: 'The number of transactions rejected in addPendingTxs',
183
+ valueType: ValueType.INT,
184
+ };
185
+ export const MEMPOOL_TX_POOL_V2_SOFT_DELETED_HITS: MetricDefinition = {
186
+ name: 'aztec.mempool.tx_pool_v2.soft_deleted_hits',
187
+ description: 'The number of transactions found in the soft-deleted pool',
188
+ valueType: ValueType.INT,
189
+ };
190
+ export const MEMPOOL_TX_POOL_V2_MISSING_ON_PROTECT: MetricDefinition = {
191
+ name: 'aztec.mempool.tx_pool_v2.missing_on_protect',
192
+ description: 'The number of truly missing transactions in protectTxs',
193
+ valueType: ValueType.INT,
194
+ };
195
+ export const MEMPOOL_TX_POOL_V2_MISSING_PREVIOUSLY_EVICTED: MetricDefinition = {
196
+ name: 'aztec.mempool.tx_pool_v2.missing_previously_evicted',
197
+ description: 'The number of truly missing transactions in protectTxs that were previously evicted',
198
+ valueType: ValueType.INT,
199
+ };
200
+ export const MEMPOOL_TX_POOL_V2_METADATA_MEMORY: MetricDefinition = {
201
+ name: 'aztec.mempool.tx_pool_v2.metadata_memory',
202
+ description: 'Estimated total memory consumed by in-memory transaction metadata',
203
+ unit: 'By',
204
+ valueType: ValueType.INT,
205
+ };
206
+
207
+ export const MEMPOOL_TX_POOL_V2_DUPLICATE_ADD: MetricDefinition = {
208
+ name: 'aztec.mempool.tx_pool_v2.duplicate_add',
209
+ description: 'Transactions received via addPendingTxs that were already in the pool',
210
+ valueType: ValueType.INT,
211
+ };
212
+
213
+ export const MEMPOOL_TX_POOL_V2_ALREADY_PROTECTED_ADD: MetricDefinition = {
214
+ name: 'aztec.mempool.tx_pool_v2.already_protected_add',
215
+ description: 'Transactions received via addPendingTxs that were already pre-protected',
216
+ valueType: ValueType.INT,
217
+ };
218
+
170
219
  export const DB_NUM_ITEMS: MetricDefinition = {
171
220
  name: 'aztec.db.num_items',
172
221
  description: 'LMDB Num Items',
@@ -224,6 +273,11 @@ export const ARCHIVER_BLOCK_HEIGHT: MetricDefinition = {
224
273
  description: 'The height of the latest block processed by the archiver',
225
274
  valueType: ValueType.INT,
226
275
  };
276
+ export const ARCHIVER_CHECKPOINT_HEIGHT: MetricDefinition = {
277
+ name: 'aztec.archiver.checkpoint_height',
278
+ description: 'The height of the latest checkpoint processed by the archiver',
279
+ valueType: ValueType.INT,
280
+ };
227
281
  export const ARCHIVER_ROLLUP_PROOF_DELAY: MetricDefinition = {
228
282
  name: 'aztec.archiver.rollup_proof_delay',
229
283
  description: 'Time after a block is submitted until its proof is published',
@@ -296,6 +350,13 @@ export const ARCHIVER_BLOCK_PROPOSAL_TX_TARGET_COUNT: MetricDefinition = {
296
350
  valueType: ValueType.INT,
297
351
  };
298
352
 
353
+ export const ARCHIVER_CHECKPOINT_L1_INCLUSION_DELAY: MetricDefinition = {
354
+ name: 'aztec.archiver.checkpoint_l1_inclusion_delay',
355
+ description: 'Seconds into the L2 slot when the checkpoint L1 tx was included',
356
+ unit: 's',
357
+ valueType: ValueType.INT,
358
+ };
359
+
299
360
  export const NODE_RECEIVE_TX_DURATION: MetricDefinition = {
300
361
  name: 'aztec.node.receive_tx.duration',
301
362
  description: 'The duration of the receiveTx method',
@@ -344,9 +405,9 @@ export const SEQUENCER_BLOCK_COUNT: MetricDefinition = {
344
405
  description: 'Number of blocks built by this sequencer',
345
406
  valueType: ValueType.INT,
346
407
  };
347
- export const SEQUENCER_CURRENT_BLOCK_REWARDS: MetricDefinition = {
348
- name: 'aztec.sequencer.current_block_rewards',
349
- description: 'The rewards earned',
408
+ export const SEQUENCER_CURRENT_SLOT_REWARDS: MetricDefinition = {
409
+ name: 'aztec.sequencer.current_slot_rewards',
410
+ description: 'The rewards earned per filled slot',
350
411
  valueType: ValueType.DOUBLE,
351
412
  };
352
413
  export const SEQUENCER_SLOT_COUNT: MetricDefinition = {
@@ -369,12 +430,12 @@ export const SEQUENCER_CHECKPOINT_ATTESTATION_DELAY: MetricDefinition = {
369
430
 
370
431
  export const SEQUENCER_COLLECTED_ATTESTATIONS_COUNT: MetricDefinition = {
371
432
  name: 'aztec.sequencer.attestations.collected_count',
372
- description: 'The number of attestations collected for a block proposal',
433
+ description: 'The number of attestations collected for a checkpoint proposal',
373
434
  valueType: ValueType.INT,
374
435
  };
375
436
  export const SEQUENCER_REQUIRED_ATTESTATIONS_COUNT: MetricDefinition = {
376
437
  name: 'aztec.sequencer.attestations.required_count',
377
- description: 'The minimum number of attestations required to publish a block',
438
+ description: 'The minimum number of attestations required to publish a checkpoint',
378
439
  valueType: ValueType.INT,
379
440
  };
380
441
  export const SEQUENCER_COLLECT_ATTESTATIONS_DURATION: MetricDefinition = {
@@ -395,14 +456,42 @@ export const SEQUENCER_BLOCK_PROPOSAL_FAILED_COUNT: MetricDefinition = {
395
456
  description: 'The number of times block proposal failed (including validation builds)',
396
457
  valueType: ValueType.INT,
397
458
  };
398
- export const SEQUENCER_BLOCK_PROPOSAL_SUCCESS_COUNT: MetricDefinition = {
399
- name: 'aztec.sequencer.block.proposal_success_count',
400
- description: 'The number of times block proposal succeeded (including validation builds)',
459
+ export const SEQUENCER_CHECKPOINT_PROPOSAL_SUCCESS_COUNT: MetricDefinition = {
460
+ name: 'aztec.sequencer.checkpoint.proposal_success_count',
461
+ description: 'The number of times checkpoint proposal succeeded',
462
+ valueType: ValueType.INT,
463
+ };
464
+ export const SEQUENCER_CHECKPOINT_PRECHECK_FAILED_COUNT: MetricDefinition = {
465
+ name: 'aztec.sequencer.checkpoint.precheck_failed_count',
466
+ description: 'The number of times checkpoint pre-build checks failed',
401
467
  valueType: ValueType.INT,
402
468
  };
403
- export const SEQUENCER_BLOCK_PROPOSAL_PRECHECK_FAILED_COUNT: MetricDefinition = {
404
- name: 'aztec.sequencer.block.proposal_precheck_failed_count',
405
- description: 'The number of times block proposal pre-build checks failed',
469
+ export const SEQUENCER_CHECKPOINT_PROPOSAL_FAILED_COUNT: MetricDefinition = {
470
+ name: 'aztec.sequencer.checkpoint.proposal_failed_count',
471
+ description: 'The number of times checkpoint proposal failed',
472
+ valueType: ValueType.INT,
473
+ };
474
+ export const SEQUENCER_CHECKPOINT_BUILD_DURATION: MetricDefinition = {
475
+ name: 'aztec.sequencer.checkpoint.build_duration',
476
+ description: 'Total duration to build all blocks in a checkpoint',
477
+ unit: 'ms',
478
+ valueType: ValueType.INT,
479
+ };
480
+ export const SEQUENCER_CHECKPOINT_BLOCK_COUNT: MetricDefinition = {
481
+ name: 'aztec.sequencer.checkpoint.block_count',
482
+ description: 'Number of blocks built in a checkpoint',
483
+ valueType: ValueType.INT,
484
+ };
485
+ export const SEQUENCER_CHECKPOINT_TX_COUNT: MetricDefinition = {
486
+ name: 'aztec.sequencer.checkpoint.tx_count',
487
+ description: 'Total number of transactions across all blocks in a checkpoint',
488
+ unit: 'tx',
489
+ valueType: ValueType.INT,
490
+ };
491
+ export const SEQUENCER_CHECKPOINT_TOTAL_MANA: MetricDefinition = {
492
+ name: 'aztec.sequencer.checkpoint.total_mana',
493
+ description: 'Total L2 mana used across all blocks in a checkpoint',
494
+ unit: 'mana',
406
495
  valueType: ValueType.INT,
407
496
  };
408
497
  export const SEQUENCER_SLASHING_ATTEMPTS_COUNT: MetricDefinition = {
@@ -415,6 +504,16 @@ export const SEQUENCER_CHECKPOINT_SUCCESS_COUNT: MetricDefinition = {
415
504
  description: 'The number of times checkpoint publishing succeeded',
416
505
  valueType: ValueType.INT,
417
506
  };
507
+ export const SEQUENCER_PIPELINE_DEPTH: MetricDefinition = {
508
+ name: 'aztec.sequencer.pipeline.depth',
509
+ description: 'Current pipeline depth when builder pipelining is enabled',
510
+ valueType: ValueType.INT,
511
+ };
512
+ export const SEQUENCER_PIPELINE_DISCARDS_COUNT: MetricDefinition = {
513
+ name: 'aztec.sequencer.pipeline.discards_count',
514
+ description: 'The number of times a pipeline was discarded',
515
+ valueType: ValueType.INT,
516
+ };
418
517
 
419
518
  // Fisherman fee analysis metrics
420
519
  export const FISHERMAN_FEE_ANALYSIS_WOULD_BE_INCLUDED: MetricDefinition = {
@@ -474,6 +573,29 @@ export const FISHERMAN_FEE_ANALYSIS_MINED_BLOB_TX_TOTAL_COST: MetricDefinition =
474
573
  unit: 'eth',
475
574
  valueType: ValueType.DOUBLE,
476
575
  };
576
+ export const FISHERMAN_FEE_ANALYSIS_PENDING_BLOB_COUNT: MetricDefinition = {
577
+ name: 'aztec.fisherman.fee_analysis.pending_blob_count',
578
+ description: 'Total number of blobs in pending blob transactions',
579
+ unit: 'blobs',
580
+ valueType: ValueType.INT,
581
+ };
582
+ export const FISHERMAN_FEE_ANALYSIS_INCLUDED_BLOB_COUNT: MetricDefinition = {
583
+ name: 'aztec.fisherman.fee_analysis.included_blob_count',
584
+ description: 'Total number of blobs included in the mined block',
585
+ unit: 'blobs',
586
+ valueType: ValueType.INT,
587
+ };
588
+ export const FISHERMAN_FEE_ANALYSIS_BLOCK_BLOBS_FULL: MetricDefinition = {
589
+ name: 'aztec.fisherman.fee_analysis.block_blobs_full',
590
+ description: 'Whether the mined block reached 100% blob capacity',
591
+ valueType: ValueType.INT,
592
+ };
593
+ export const FISHERMAN_FEE_ANALYSIS_MAX_BLOB_CAPACITY: MetricDefinition = {
594
+ name: 'aztec.fisherman.fee_analysis.max_blob_capacity',
595
+ description: 'Maximum blob capacity for the analyzed block based on L1 upgrade schedule',
596
+ unit: 'blobs',
597
+ valueType: ValueType.INT,
598
+ };
477
599
 
478
600
  export const VALIDATOR_INVALID_ATTESTATION_RECEIVED_COUNT: MetricDefinition = {
479
601
  name: 'aztec.validator.invalid_attestation_received_count',
@@ -652,6 +774,12 @@ export const PEER_MANAGER_PEER_COUNT: MetricDefinition = {
652
774
  unit: 'peers',
653
775
  valueType: ValueType.INT,
654
776
  };
777
+ export const PEER_MANAGER_HEALTHY_PEER_COUNT: MetricDefinition = {
778
+ name: 'aztec.peer_manager.healthy_peer_count',
779
+ description: 'Number of healthy (non-protected, non-banned) peers',
780
+ unit: 'peers',
781
+ valueType: ValueType.INT,
782
+ };
655
783
  export const PEER_MANAGER_LOW_SCORE_DISCONNECTS: MetricDefinition = {
656
784
  name: 'aztec.peer_manager.low_score_disconnects',
657
785
  description: 'Number of peers disconnected due to low score',
@@ -936,6 +1064,11 @@ export const PROVING_QUEUE_REJECTED_JOBS: MetricDefinition = {
936
1064
  description: 'Number of rejected proving jobs',
937
1065
  valueType: ValueType.INT,
938
1066
  };
1067
+ export const PROVING_QUEUE_ABORTED_JOBS: MetricDefinition = {
1068
+ name: 'aztec.proving_queue.aborted_jobs_count',
1069
+ description: 'Number of aborted proving jobs',
1070
+ valueType: ValueType.INT,
1071
+ };
939
1072
  export const PROVING_QUEUE_RETRIED_JOBS: MetricDefinition = {
940
1073
  name: 'aztec.proving_queue.retried_jobs_count',
941
1074
  description: 'Number of retried proving jobs',
@@ -1010,6 +1143,36 @@ export const PROVER_NODE_JOB_TRANSACTIONS: MetricDefinition = {
1010
1143
  description: 'Number of transactions in a proven epoch',
1011
1144
  valueType: ValueType.INT,
1012
1145
  };
1146
+ export const PROVER_NODE_BLOB_PROCESSING_LAST_DURATION: MetricDefinition = {
1147
+ name: 'aztec.prover_node.blob_processing.last_duration',
1148
+ description: 'Duration of blob processing step in epoch proving job',
1149
+ unit: 'ms',
1150
+ valueType: ValueType.INT,
1151
+ };
1152
+ export const PROVER_NODE_CHONK_VERIFIER_LAST_DURATION: MetricDefinition = {
1153
+ name: 'aztec.prover_node.chonk_verifier.last_duration',
1154
+ description: 'Duration of chonk verifier enqueuing in epoch proving job',
1155
+ unit: 'ms',
1156
+ valueType: ValueType.INT,
1157
+ };
1158
+ export const PROVER_NODE_BLOCK_PROCESSING_DURATION: MetricDefinition = {
1159
+ name: 'aztec.prover_node.block_processing.duration',
1160
+ description: 'Duration of processing a single block in epoch proving job',
1161
+ unit: 'ms',
1162
+ valueType: ValueType.INT,
1163
+ };
1164
+ export const PROVER_NODE_CHECKPOINT_PROCESSING_DURATION: MetricDefinition = {
1165
+ name: 'aztec.prover_node.checkpoint_processing.duration',
1166
+ description: 'Duration of processing a single checkpoint in epoch proving job',
1167
+ unit: 'ms',
1168
+ valueType: ValueType.INT,
1169
+ };
1170
+ export const PROVER_NODE_ALL_CHECKPOINTS_PROCESSING_LAST_DURATION: MetricDefinition = {
1171
+ name: 'aztec.prover_node.all_checkpoints_processing.last_duration',
1172
+ description: 'Duration of processing all checkpoints in epoch proving job',
1173
+ unit: 'ms',
1174
+ valueType: ValueType.INT,
1175
+ };
1013
1176
  export const PROVER_NODE_REWARDS_TOTAL: MetricDefinition = {
1014
1177
  name: 'aztec.prover_node.rewards_total',
1015
1178
  description: 'The rewards earned (total)',
@@ -1144,6 +1307,16 @@ export const VALIDATOR_ATTESTATION_FAILED_NODE_ISSUE_COUNT: MetricDefinition = {
1144
1307
  description: 'The number of failed attestations due to node issues (timeout, missing data, etc.)',
1145
1308
  valueType: ValueType.INT,
1146
1309
  };
1310
+ export const VALIDATOR_CURRENT_EPOCH: MetricDefinition = {
1311
+ name: 'aztec.validator.current_epoch',
1312
+ description: 'The current epoch number, reflecting total epochs elapsed since genesis',
1313
+ valueType: ValueType.INT,
1314
+ };
1315
+ export const VALIDATOR_ATTESTED_EPOCH_COUNT: MetricDefinition = {
1316
+ name: 'aztec.validator.attested_epoch_count',
1317
+ description: 'The number of epochs in which this node successfully submitted at least one attestation',
1318
+ valueType: ValueType.INT,
1319
+ };
1147
1320
 
1148
1321
  export const NODEJS_EVENT_LOOP_DELAY_MIN: MetricDefinition = {
1149
1322
  name: 'nodejs.eventloop.delay.min',
@@ -1271,6 +1444,55 @@ export const TX_COLLECTOR_DURATION_PER_TX: MetricDefinition = {
1271
1444
  valueType: ValueType.INT,
1272
1445
  };
1273
1446
 
1447
+ export const TX_FILE_STORE_UPLOADS_SUCCESS: MetricDefinition = {
1448
+ name: 'aztec.p2p.tx_file_store.uploads_success',
1449
+ description: 'Number of successful tx uploads to file storage',
1450
+ valueType: ValueType.INT,
1451
+ };
1452
+ export const TX_FILE_STORE_UPLOADS_FAILED: MetricDefinition = {
1453
+ name: 'aztec.p2p.tx_file_store.uploads_failed',
1454
+ description: 'Number of failed tx uploads to file storage',
1455
+ valueType: ValueType.INT,
1456
+ };
1457
+ export const TX_FILE_STORE_UPLOADS_SKIPPED: MetricDefinition = {
1458
+ name: 'aztec.p2p.tx_file_store.uploads_skipped',
1459
+ description: 'Number of tx uploads skipped (duplicates)',
1460
+ valueType: ValueType.INT,
1461
+ };
1462
+ export const TX_FILE_STORE_UPLOAD_DURATION: MetricDefinition = {
1463
+ name: 'aztec.p2p.tx_file_store.upload_duration',
1464
+ description: 'Duration to upload a tx to file storage',
1465
+ unit: 'ms',
1466
+ valueType: ValueType.INT,
1467
+ };
1468
+ export const TX_FILE_STORE_QUEUE_SIZE: MetricDefinition = {
1469
+ name: 'aztec.p2p.tx_file_store.queue_size',
1470
+ description: 'Number of txs pending upload',
1471
+ valueType: ValueType.INT,
1472
+ };
1473
+ export const TX_FILE_STORE_DOWNLOADS_SUCCESS: MetricDefinition = {
1474
+ name: 'aztec.p2p.tx_file_store.downloads_success',
1475
+ description: 'Number of successful tx downloads from file storage',
1476
+ valueType: ValueType.INT,
1477
+ };
1478
+ export const TX_FILE_STORE_DOWNLOADS_FAILED: MetricDefinition = {
1479
+ name: 'aztec.p2p.tx_file_store.downloads_failed',
1480
+ description: 'Number of failed tx downloads from file storage',
1481
+ valueType: ValueType.INT,
1482
+ };
1483
+ export const TX_FILE_STORE_DOWNLOAD_DURATION: MetricDefinition = {
1484
+ name: 'aztec.p2p.tx_file_store.download_duration',
1485
+ description: 'Duration to download a tx from file storage',
1486
+ unit: 'ms',
1487
+ valueType: ValueType.INT,
1488
+ };
1489
+ export const TX_FILE_STORE_DOWNLOAD_SIZE: MetricDefinition = {
1490
+ name: 'aztec.p2p.tx_file_store.download_size',
1491
+ description: 'Size of a downloaded tx from file storage',
1492
+ unit: 'By',
1493
+ valueType: ValueType.INT,
1494
+ };
1495
+
1274
1496
  export const IVC_VERIFIER_TIME: MetricDefinition = {
1275
1497
  name: 'aztec.ivc_verifier.time',
1276
1498
  description: 'Duration to verify chonk proofs',
@@ -1319,3 +1541,51 @@ export const IVC_VERIFIER_AGG_DURATION_AVG: MetricDefinition = {
1319
1541
  unit: 'ms',
1320
1542
  valueType: ValueType.DOUBLE,
1321
1543
  };
1544
+
1545
+ // HA Signer metrics
1546
+ export const HA_SIGNER_SIGNING_DURATION: MetricDefinition = {
1547
+ name: 'aztec.ha_signer.signing_duration',
1548
+ description: 'End-to-end duration for signing with HA protection (lock + sign + record)',
1549
+ unit: 'ms',
1550
+ valueType: ValueType.INT,
1551
+ };
1552
+ export const HA_SIGNER_SIGNING_SUCCESS_COUNT: MetricDefinition = {
1553
+ name: 'aztec.ha_signer.signing_success_count',
1554
+ description: 'Count of successful signing operations',
1555
+ valueType: ValueType.INT,
1556
+ };
1557
+ export const HA_SIGNER_DUTY_ALREADY_SIGNED_COUNT: MetricDefinition = {
1558
+ name: 'aztec.ha_signer.duty_already_signed_count',
1559
+ description: 'Count of DutyAlreadySignedError (expected in HA; another node signed first)',
1560
+ valueType: ValueType.INT,
1561
+ };
1562
+ export const HA_SIGNER_SLASHING_PROTECTION_COUNT: MetricDefinition = {
1563
+ name: 'aztec.ha_signer.slashing_protection_count',
1564
+ description: 'Count of SlashingProtectionError (attempted to sign different data)',
1565
+ valueType: ValueType.INT,
1566
+ };
1567
+ export const HA_SIGNER_SIGNING_ERROR_COUNT: MetricDefinition = {
1568
+ name: 'aztec.ha_signer.signing_error_count',
1569
+ description: 'Count of signing function failures (lock deleted for retry)',
1570
+ valueType: ValueType.INT,
1571
+ };
1572
+ export const HA_SIGNER_LOCK_ACQUIRED_COUNT: MetricDefinition = {
1573
+ name: 'aztec.ha_signer.lock_acquired_count',
1574
+ description: 'Count of lock acquisitions (new lock acquired vs existing record found)',
1575
+ valueType: ValueType.INT,
1576
+ };
1577
+ export const HA_SIGNER_CLEANUP_STUCK_DUTIES_COUNT: MetricDefinition = {
1578
+ name: 'aztec.ha_signer.cleanup_stuck_duties_count',
1579
+ description: 'Number of stuck duties cleaned up per cleanup run',
1580
+ valueType: ValueType.INT,
1581
+ };
1582
+ export const HA_SIGNER_CLEANUP_OLD_DUTIES_COUNT: MetricDefinition = {
1583
+ name: 'aztec.ha_signer.cleanup_old_duties_count',
1584
+ description: 'Number of old duties cleaned up',
1585
+ valueType: ValueType.INT,
1586
+ };
1587
+ export const HA_SIGNER_CLEANUP_OUTDATED_ROLLUP_DUTIES_COUNT: MetricDefinition = {
1588
+ name: 'aztec.ha_signer.cleanup_outdated_rollup_duties_count',
1589
+ description: 'Number of duties cleaned due to rollup upgrade',
1590
+ valueType: ValueType.INT,
1591
+ };
@@ -2,6 +2,7 @@ import type { Observable } from '@opentelemetry/api';
2
2
  import { type EventLoopUtilization, type IntervalHistogram, monitorEventLoopDelay, performance } from 'node:perf_hooks';
3
3
 
4
4
  import * as Attributes from './attributes.js';
5
+ import { createUpDownCounterWithDefault } from './metric-utils.js';
5
6
  import * as Metrics from './metrics.js';
6
7
  import type { BatchObservableResult, Meter, ObservableGauge, UpDownCounter } from './telemetry.js';
7
8
 
@@ -41,7 +42,9 @@ export class NodejsMetricsMonitor {
41
42
  };
42
43
 
43
44
  this.eventLoopUilization = meter.createObservableGauge(Metrics.NODEJS_EVENT_LOOP_UTILIZATION);
44
- this.eventLoopTime = meter.createUpDownCounter(Metrics.NODEJS_EVENT_LOOP_TIME);
45
+ this.eventLoopTime = createUpDownCounterWithDefault(meter, Metrics.NODEJS_EVENT_LOOP_TIME, {
46
+ [Attributes.NODEJS_EVENT_LOOP_STATE]: ['idle', 'active'],
47
+ });
45
48
  this.eventLoopDelay = monitorEventLoopDelay();
46
49
 
47
50
  this.memoryGauges = {
@@ -7,10 +7,26 @@ import {
7
7
  osDetectorSync,
8
8
  serviceInstanceIdDetectorSync,
9
9
  } from '@opentelemetry/resources';
10
- import { SEMRESATTRS_SERVICE_NAME } from '@opentelemetry/semantic-conventions';
10
+ import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';
11
+ import { readFileSync } from 'fs';
12
+ import { dirname, resolve } from 'path';
13
+ import { fileURLToPath } from 'url';
11
14
 
12
15
  import { AZTEC_NODE_ROLE, AZTEC_REGISTRY_ADDRESS, AZTEC_ROLLUP_ADDRESS, AZTEC_ROLLUP_VERSION } from './attributes.js';
13
16
 
17
+ /** Reads the Aztec client version from the release manifest. */
18
+ function getAztecVersion(): string | undefined {
19
+ try {
20
+ const releasePleasePath = resolve(
21
+ dirname(fileURLToPath(import.meta.url)),
22
+ '../../../.release-please-manifest.json',
23
+ );
24
+ return JSON.parse(readFileSync(releasePleasePath, 'utf-8'))['.'];
25
+ } catch {
26
+ return undefined;
27
+ }
28
+ }
29
+
14
30
  export function getOtelResource(): IResource {
15
31
  const resource = detectResourcesSync({
16
32
  detectors: [
@@ -42,7 +58,8 @@ const aztecNetworkDetectorSync: DetectorSync = {
42
58
  }
43
59
  const aztecAttributes = {
44
60
  // this gets overwritten by OTEL_RESOURCE_ATTRIBUTES (if set)
45
- [SEMRESATTRS_SERVICE_NAME]: role ? `aztec-${role}` : undefined,
61
+ [ATTR_SERVICE_NAME]: role ? `aztec-${role}` : undefined,
62
+ [ATTR_SERVICE_VERSION]: getAztecVersion(),
46
63
  [AZTEC_NODE_ROLE]: role,
47
64
  [AZTEC_ROLLUP_VERSION]: process.env.ROLLUP_VERSION ?? 'canonical',
48
65
  [AZTEC_ROLLUP_ADDRESS]: process.env.ROLLUP_CONTRACT_ADDRESS,
@@ -1,4 +1,4 @@
1
- import { type Logger, createLogger } from '@aztec/foundation/log';
1
+ import { type Logger, type LoggerBindings, createLogger } from '@aztec/foundation/log';
2
2
  import { Timer } from '@aztec/foundation/timer';
3
3
 
4
4
  import { Registry } from 'prom-client';
@@ -410,12 +410,11 @@ function parseLabelsSafely<Labels extends LabelsGeneric>(labelStr: string, logge
410
410
  */
411
411
  export class OtelMetricsAdapter extends Registry implements MetricsRegister {
412
412
  private readonly meter: Meter;
413
+ private logger: Logger;
413
414
 
414
- constructor(
415
- telemetryClient: TelemetryClient,
416
- private logger: Logger = createLogger('telemetry:otel-metrics-adapter'),
417
- ) {
415
+ constructor(telemetryClient: TelemetryClient, bindings?: LoggerBindings) {
418
416
  super();
417
+ this.logger = createLogger('telemetry:otel-metrics-adapter', bindings);
419
418
  this.meter = telemetryClient.getMeter('metrics-adapter');
420
419
  }
421
420