Closed illia-malachyn closed 3 months ago
The recent changes enhance metrics collection capabilities across various components of the codebase. Key updates include the introduction of a collector
parameter in multiple function signatures and struct definitions, allowing for refined tracking of events and interactions, particularly with Ethereum accounts. This shift towards a metrics-driven architecture aims to improve observability and performance monitoring throughout the system.
File Path | Change Summary |
---|---|
bootstrap/bootstrap.go |
Added collector metrics.Collector parameter to Start , startIngestion , and startServer functions. |
metrics/collector.go |
Introduced EvmAccountCalled method and added evmAccountCallCounters to DefaultCollector . |
metrics/noop_collector.go |
Added EvmAccountCalled method to NoopCollector struct for handling account call events. |
services/ingestion/engine.go |
Added collector metrics.Collector field in Engine struct and updated NewEventIngestionEngine constructor. |
services/requester/requester.go |
Added collector metrics.Collector field in EVM struct and updated NewEVM constructor. |
sequenceDiagram
participant User
participant EVM
participant Engine
participant Collector
User->>EVM: Send transaction
EVM->>Collector: EvmAccountCalled(labels)
EVM->>Engine: Process transaction
Engine->>Collector: Collect metrics
🐇 In the code where changes took flight,
A collector now tracks the data so bright.
Metrics gathered with care,
Observability everywhere,
Our system hops with joy and delight! ✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
This covers "Metric for users EVM contract addresses which are being called". We can track how many times a specific (or all) account is called
Summary by CodeRabbit
New Features
Bug Fixes
Tests
Chores