diff --git a/docs/reference-tables/metrics.md b/docs/reference-tables/metrics.md
index ed9efeb5..dee0b45e 100644
--- a/docs/reference-tables/metrics.md
+++ b/docs/reference-tables/metrics.md
@@ -1,40 +1,41 @@
# Metrics
-| Name | Type | Help | Labels |
-| ---------------------------------- | --------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
-| bgExecuteDurationSeconds | Gauge | A histogram bucket of the distribution of background execute durations | - adapter_endpoint
- transport |
-| bgExecuteErrors | Counter | The number of background execute errors per endpoint x transport | - adapter_endpoint
- transport |
-| bgExecuteSubscriptionSetCount | Gauge | The number of active subscriptions in background execute | - adapter_endpoint
- transport_type
- transport |
-| bgExecuteTotal | Counter | The number of background executes performed per endpoint | - adapter_endpoint
- transport |
-| cacheDataGetCount | Counter | A counter that increments every time a value is fetched from the cache | - feed_id
- participant_id
- cache_type |
-| cacheDataGetValues | Gauge | A gauge keeping track of values being fetched from cache | - feed_id
- participant_id
- cache_type |
-| cacheDataMaxAge | Gauge | A gauge tracking the max age of stored values in the cache | - feed_id
- participant_id
- cache_type |
-| cacheDataSetCount | Counter | A counter that increments every time a value is set to the cache | - feed_id
- participant_id
- cache_type
- status_code |
-| cacheDataStalenessSeconds | Gauge | Observes the cache staleness of the data returned (i.e., time since the data was written to the cache) | - feed_id
- participant_id
- cache_type |
-| cacheOverflowCount | Counter | A counter that increments every time an item overflows in local cache | |
-| cacheWarmerCount | Gauge | The number of cache warmers running | - isBatched |
-| dataProviderRequestDurationSeconds | Histogram | A histogram bucket of the distribution of data provider request durations | |
-| dataProviderRequests | Counter | The number of http requests that are made to a data provider | - method
- provider_status_code |
-| httpRequestDurationSeconds | Histogram | A histogram bucket of the distribution of http request durations | |
-| httpRequestsPerBgExecute | Gauge | The number of HTTP requests made in a single background execute cycle | - adapter_endpoint |
-| httpRequestsTotal | Counter | The number of http requests this external adapter has serviced for its entire uptime | - method
- status_code
- retry
- type
- feed_id
- provider_status_code |
-| porBalanceAddressLength | Gauge | The number of addresses in PoR request input parameters | - feed_id |
-| providerTimeDelta | Gauge | Measures the difference between the time indicated by a DP for a value vs the time it was written to cache | - feed_id |
-| rateLimitCreditsSpentTotal | Counter | The number of data provider credits the adapter is consuming | - participant_id
- feed_id |
-| redisCommandsSentCount | Counter | The number of redis commands sent | - status
- function_name |
-| redisConnectionsOpen | Counter | The number of redis connections that are open | |
-| redisRetriesCount | Counter | The number of retries that have been made to establish a redis connection | |
-| requesterQueueOverflow | Counter | Total times the requester queue replaced the oldest item to avoid an overflow | |
-| requesterQueueSize | Gauge | The number of provider http requests currently queued to be executed | |
-| requestPayloadSize | Histogram | A histogram bucket of the distribution of incoming request payload size | |
-| streamHandlerErrors | Counter | The number of stream handler errors per endpoint x transport | - adapter_endpoint
- transport |
-| totalDataStalenessSeconds | Gauge | Observes the total staleness of the data returned (i.e., time since the provider indicated the data was sent) | - feed_id
- participant_id
- cache_type |
-| transportPollingDurationSeconds | Gauge | A histogram bucket of the distribution of transport polling idle time durations | - adapter_endpoint
- succeeded |
-| transportPollingFailureCount | Counter | The number of times the polling mechanism ran out of attempts and failed to return a response | - adapter_endpoint |
-| wsConnectionActive | Gauge | The number of active connections | |
-| wsConnectionAttempt | Counter | The number of open connection attempts | |
-| wsConnectionClosures | Counter | The number of connection closures | - url
- code |
-| wsConnectionErrors | Counter | The number of connection errors | - message |
-| wsMessageTotal | Counter | The number of messages sent in total | - feed_id
- subscription_key
- direction |
-| wsSubscriptionActive | Gauge | The number of currently active subscriptions | - feed_id
- subscription_key |
-| wsSubscriptionTotal | Counter | The number of subscriptions opened in total | - feed_id
- subscription_key |
+| Name | Type | Help | Labels |
+| ---------------------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
+| bgExecuteDurationSeconds | Gauge | A histogram bucket of the distribution of background execute durations | - adapter_endpoint
- transport |
+| bgExecuteErrors | Counter | The number of background execute errors per endpoint x transport | - adapter_endpoint
- transport |
+| bgExecuteSubscriptionSetCount | Gauge | The number of active subscriptions in background execute | - adapter_endpoint
- transport_type
- transport |
+| bgExecuteTotal | Counter | The number of background executes performed per endpoint | - adapter_endpoint
- transport |
+| cacheDataGetCount | Counter | A counter that increments every time a value is fetched from the cache | - feed_id
- participant_id
- cache_type |
+| cacheDataGetValues | Gauge | A gauge keeping track of values being fetched from cache | - feed_id
- participant_id
- cache_type |
+| cacheDataMaxAge | Gauge | A gauge tracking the max age of stored values in the cache | - feed_id
- participant_id
- cache_type |
+| cacheDataSetCount | Counter | A counter that increments every time a value is set to the cache | - feed_id
- participant_id
- cache_type
- status_code |
+| cacheDataStalenessSeconds | Gauge | Observes the cache staleness of the data returned (i.e., time since the data was written to the cache) | - feed_id
- participant_id
- cache_type |
+| cacheOverflowCount | Counter | A counter that increments every time an item overflows in local cache | |
+| cacheWarmerCount | Gauge | The number of cache warmers running | - isBatched |
+| dataProviderRequestDurationSeconds | Histogram | A histogram bucket of the distribution of data provider request durations | |
+| dataProviderRequests | Counter | The number of http requests that are made to a data provider | - method
- provider_status_code |
+| httpRequestDurationSeconds | Histogram | A histogram bucket of the distribution of http request durations | |
+| httpRequestsPerBgExecute | Gauge | The number of HTTP requests made in a single background execute cycle | - adapter_endpoint |
+| httpRequestsTotal | Counter | The number of http requests this external adapter has serviced for its entire uptime | - method
- status_code
- retry
- type
- feed_id
- provider_status_code |
+| porBalanceAddressLength | Gauge | The number of addresses in PoR request input parameters | - feed_id |
+| providerTimeDelta | Gauge | Measures the difference between the time indicated by a DP for a value vs the time it was written to cache | - feed_id |
+| rateLimitCreditsSpentTotal | Counter | The number of data provider credits the adapter is consuming | - participant_id
- feed_id |
+| redisCommandsSentCount | Counter | The number of redis commands sent | - status
- function_name |
+| redisConnectionsOpen | Counter | The number of redis connections that are open | |
+| redisRetriesCount | Counter | The number of retries that have been made to establish a redis connection | |
+| requesterQueueOverflow | Counter | Total times the requester queue replaced the oldest item to avoid an overflow | |
+| requesterQueueSize | Gauge | The number of provider http requests currently queued to be executed | |
+| requestPayloadSize | Histogram | A histogram bucket of the distribution of incoming request payload size | |
+| streamHandlerErrors | Counter | The number of stream handler errors per endpoint x transport | - adapter_endpoint
- transport |
+| totalDataStalenessSeconds | Gauge | Observes the total staleness of the data returned (i.e., time since the provider indicated the data was sent) | - feed_id
- participant_id
- cache_type |
+| transportPollingDurationSeconds | Gauge | A histogram bucket of the distribution of transport polling idle time durations | - adapter_endpoint
- succeeded |
+| transportPollingFailureCount | Counter | The number of times the polling mechanism ran out of attempts and failed to return a response | - adapter_endpoint |
+| wsConnectionActive | Gauge | The number of active connections | |
+| wsConnectionAttempt | Counter | The number of open connection attempts | |
+| wsConnectionClosures | Counter | The number of connection closures | - url
- code |
+| wsConnectionErrors | Counter | The number of connection errors | - message |
+| wsConnectionFailoverCount | Gauge | The number of consecutive unresponsive connection detections (no data for WS_SUBSCRIPTION_UNRESPONSIVE_TTL), used to trigger URL failover | - transport_name |
+| wsMessageTotal | Counter | The number of messages sent in total | - feed_id
- subscription_key
- direction |
+| wsSubscriptionActive | Gauge | The number of currently active subscriptions | - feed_id
- subscription_key |
+| wsSubscriptionTotal | Counter | The number of subscriptions opened in total | - feed_id
- subscription_key |
diff --git a/package.json b/package.json
index 97d45832..8b9ea485 100644
--- a/package.json
+++ b/package.json
@@ -1,17 +1,17 @@
{
"name": "@chainlink/external-adapter-framework",
- "version": "2.11.5",
+ "version": "2.12.0",
"main": "dist/index.js",
"license": "MIT",
"repository": "git://github.com/smartcontractkit/ea-framework-js.git",
"dependencies": {
"ajv": "8.17.1",
- "axios": "1.13.2",
+ "axios": "1.13.4",
"eventsource": "4.1.0",
- "fastify": "5.6.2",
+ "fastify": "5.7.3",
"ioredis": "5.9.2",
"mock-socket": "9.3.1",
- "pino": "10.2.0",
+ "pino": "10.3.0",
"pino-pretty": "13.1.3",
"prom-client": "15.1.3",
"redlock": "5.0.0-beta.2",
@@ -41,8 +41,8 @@
"@types/node": "24.10.9",
"@types/sinonjs__fake-timers": "15.0.1",
"@types/ws": "8.18.1",
- "@typescript-eslint/eslint-plugin": "8.53.0",
- "@typescript-eslint/parser": "8.53.0",
+ "@typescript-eslint/eslint-plugin": "8.54.0",
+ "@typescript-eslint/parser": "8.54.0",
"ava": "6.4.1",
"axios-mock-adapter": "2.1.0",
"c8": "10.1.3",
@@ -50,10 +50,10 @@
"eslint-config-prettier": "10.1.8",
"eslint-plugin-tsdoc": "0.5.0",
"mocksse": "1.0.4",
- "prettier": "3.7.4",
+ "prettier": "3.8.1",
"ts-node": "10.9.2",
"ts-node-dev": "2.0.0",
- "typedoc": "0.28.15",
+ "typedoc": "0.28.16",
"typescript": "5.9.3"
},
"prettier": {