From 0fea1656a18ef27602938a42419ef69e641482d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joonas=20Lehtim=C3=A4ki?= Date: Fri, 12 Jan 2024 15:06:58 +0200 Subject: [PATCH] feat: add chainName for clientExpiry (#33) * feat: add chainName for clientExpiry * chore: rename clientExpiryMetric labels * feat: update README.md with updated labels --- README.md | 11 +++++++++-- pkg/collector/ibc_collector.go | 14 ++++++++++---- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 8a604b1..5672fea 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,11 @@ # relayer_exporter + Prometheus exporter for ibc clients and wallet balance. Returns metrics about clients expiration date. Returns wallet balance for configured addresses. ## Configuration + Exporter needs config file in yaml format like following ```yaml @@ -41,11 +43,16 @@ without having it defined. For provided accounts it fetches wallet balances using endpoints defined in rpc list. ## Metrics + ``` # HELP cosmos_ibc_client_expiry Returns light client expiry in unixtime. # TYPE cosmos_ibc_client_expiry gauge -cosmos_ibc_client_expiry{client_id="07-tendermint-23",host_chain_id="archway-1",status="success",target_chain_id="agoric-3"} 1.698153269e+09 -cosmos_ibc_client_expiry{client_id="07-tendermint-75",host_chain_id="agoric-3",status="success",target_chain_id="archway-1"} 1.698153256e+09 +cosmos_ibc_client_expiry{client_id="07-tendermint-0",discord_ids="400514913505640451",dst_chain_id="cosmoshub-4",dst_chain_name="cosmoshub",src_chain_id="archway-1",src_chain_name="archway",status="success"} 1.706270594e+09 +cosmos_ibc_client_expiry{client_id="07-tendermint-1152",discord_ids="400514913505640451",dst_chain_id="archway-1",dst_chain_name="archway",src_chain_id="cosmoshub-4",src_chain_name="cosmoshub",status="success"} 1.706270401e+09 +# HELP cosmos_ibc_stuck_packets Returns stuck packets for a channel. +# TYPE cosmos_ibc_stuck_packets gauge +cosmos_ibc_stuck_packets{discord_ids="400514913505640451",dst_chain_id="archway-1",dst_chain_name="archway",dst_channel_id="channel-0",src_chain_id="cosmoshub-4",src_chain_name="cosmoshub",src_channel_id="channel-623",status="success"} 0 +cosmos_ibc_stuck_packets{discord_ids="400514913505640451",dst_chain_id="cosmoshub-4",dst_chain_name="cosmoshub",dst_channel_id="channel-623",src_chain_id="archway-1",src_chain_name="archway",src_channel_id="channel-0",status="success"} 0 # HELP cosmos_wallet_balance Returns wallet balance for an address on a chain # TYPE cosmos_wallet_balance gauge cosmos_wallet_balance{account="archway1l2al7y78500h5akvgt8exwnkpmf2zmk8ky9ht3",chain_id="constantine-3",denom="aconst",status="success"} 4.64e+18 diff --git a/pkg/collector/ibc_collector.go b/pkg/collector/ibc_collector.go index efabaa4..1c3a3a1 100644 --- a/pkg/collector/ibc_collector.go +++ b/pkg/collector/ibc_collector.go @@ -23,9 +23,11 @@ var ( clientExpiryMetricName, "Returns light client expiry in unixtime.", []string{ - "host_chain_id", + "src_chain_id", + "dst_chain_id", + "src_chain_name", + "dst_chain_name", "client_id", - "target_chain_id", "discord_ids", "status", }, @@ -93,8 +95,10 @@ func (cc IBCCollector) Collect(ch chan<- prometheus.Metric) { float64(ci.ChainAClientExpiration.Unix()), []string{ (*cc.RPCs)[path.Chain1.ChainName].ChainID, - path.Chain1.ClientID, (*cc.RPCs)[path.Chain2.ChainName].ChainID, + path.Chain1.ChainName, + path.Chain2.ChainName, + path.Chain1.ClientID, discordIDs, status, }..., @@ -106,8 +110,10 @@ func (cc IBCCollector) Collect(ch chan<- prometheus.Metric) { float64(ci.ChainBClientExpiration.Unix()), []string{ (*cc.RPCs)[path.Chain2.ChainName].ChainID, - path.Chain2.ClientID, (*cc.RPCs)[path.Chain1.ChainName].ChainID, + path.Chain2.ChainName, + path.Chain1.ChainName, + path.Chain2.ClientID, discordIDs, status, }...,