Skip to content

Latest commit

 

History

History
285 lines (278 loc) · 28.9 KB

File metadata and controls

285 lines (278 loc) · 28.9 KB
title List of metrics exposed by stellar-core

stellar-core uses libmedida for computing metrics, a detailed description can be found at http://dln.github.io/medida/

Counters (NewCounter)

Tracks a value in absolute terms of a base unit.

Histograms (NewHistogram)

Tracks aggregates (count, min, max, mean, percentiles, etc) for samples expressed in arbitrary base unit.

Timers (NewTimer)

Tracks aggregates (count, min, max, mean, percentiles, etc) of samples expressed in units of time.

Meters (NewMeter)

Tracks aggregates (count, min, max, mean, etc), rate (1m, 5m, 15m) for samples expressed in base unit.

Buckets (NewBuckets)

Tracks multiple timers organized into disjoint buckets.

Metric name Type Description
app.post-on-background-thread.delay timer time to start task posted to background thread
app.post-on-main-thread.delay timer time to start task posted to current crank of main thread
app.post-on-overlay-thread.delay timer time to start task posted to overlay thread
app.post-on-ledger-close-thread.delay timer time to start task posted to ledger close thread
bucket.batch.addtime timer time to add a live batch
bucket.batch.objectsadded meter number of objects added per live batch
bucket.batch-archive.addtime timer time to add a hot archive batch
bucket.batch-archive.objectsadded meter number of objects added per hot archive batch
bucket.memory.shared counter number of buckets referenced (excluding publish queue)
bucket.merge-time.level- timer time to merge two buckets on level
bucket.snap.merge timer time to merge two buckets
bucketlist-archive.size.bytes counter total size of the hot archive BucketList in bytes
bucketlist.size.bytes counter total size of the BucketList in bytes
bucketlist.entryCounts.- counter number of entries of type in the BucketList
bucketlist.entrySizes.- counter size of entries of type in the BucketList
bucketlistDB-.bloom.lookups meter number of bloom filter lookups on BucketList (live/hotArchive)
bucketlistDB-.bloom.misses meter number of bloom filter false positives on BucketList (live/hotArchive)
bucketlistDB-.bulk.loads meter number of entries BucketListDB queried to prefetch on BucketList (live/hot-archive)
bucketlistDB-live.bulk.inflationWinners timer time to load inflation winners
bucketlistDB-live.bulk.poolshareTrustlines timer time to load poolshare trustlines by accountID and assetID
bucketlistDB-live.bulk.prefetch timer time to prefetch
bucketlistDB-live.bulk.eviction timer time to load for eviction scan
bucketlistDB-live.bulk.query timer time to load for query server
bucketlistDB-hotArchive.bulk.hot-query timer time to load hot archive entries for query server
bucketlistDB-..sum counter sum of time (microseconds) to load single entry of type on BucketList (live/hotArchive)
bucketlistDB-..count counter number of times single entry of type on BucketList (live/hotArchive) is loaded
bucketlistDB-..max counter max (since last metrics call) of time (microseconds) to load single entry of type on BucketList (live/hotArchive)
bucketlistDB-cache.hit meter number of cache hits on Live BucketList Disk random eviction cache
bucketlistDB-cache.miss meter number of cache misses on Live BucketList Disk random eviction cache
bucketlistDB.cache.entries counter number of entries currently in Live BucketList index cache
bucketlistDB.cache.bytes counter estimated size in bytes of entries in Live BucketList index cache
clock.ntp.offset-ms counter last measured offset (ms) between the local clock and the configured NTP server (signed; positive means the local clock is behind true time). Requires NTP_DRIFT_CHECK_SERVER
clock.ntp.probe-failure meter NTP drift-check probe failed to reach NTP server
crypto.verify.hit meter number of signature cache hits
crypto.verify.miss meter number of signature cache misses
crypto.verify.total meter sum of both hits and misses
crypto.verify.tx-valid-hit meter signature cache hits that occurred while validating transactions (outside of background signature validation)
crypto.verify.tx-valid-total meter sum of both hits and misses during transaction validation (outside of background signature validation)
herder.txset.validate timer time spent turning a received tx set into an applicable tx set and validating it on a validity-cache miss
herder.pending[-soroban]-txs.age0 counter number of gen0 pending transactions
herder.pending[-soroban]-txs.age1 counter number of gen1 pending transactions
herder.pending[-soroban]-txs.age2 counter number of gen2 pending transactions
herder.pending[-soroban]-txs.age3 counter number of gen3 pending transactions
herder.pending[-soroban]-txs.banned counter number of transactions that got banned
herder.pending[-soroban]-txs.delay timer time for transactions to be included in a ledger
herder.pending[-soroban]-txs.self-delay timer time for transactions submitted from this node to be included in a ledger
herder.pending[-soroban]-txs.evicted-due-to-low-fee-count counter Count of transactions evicted by higher fee txs when queue is near its capacity.
herder.pending[-soroban]-txs.evicted-due-to-age-count counter Count of transactions that had low fee for too long and have not been included into several ledgers in a row.
herder.pending[-soroban]-txs.not-included-due-to-low-fee-count counter Count of transactions that were not included into queue because it is at capacity and the fee is too low to replace other txs.
history.check.failure meter history archive status checks failed
history.check.success meter history archive status checks succeeded
history.publish.failure meter published failed
history.publish.success meter published completed successfully
history.publish.time timer time to successfully publish history
history.get.throughput meter bytes per second of history archive retrieval
history.get.failure meter history archive downloads failed
ledger.age.closed bucket time between ledgers
ledger.age.closed-histogram histogram time between ledgers
ledger.age.current-seconds counter gap between last close ledger time and current time
ledger.apply.success counter count of successfully applied transactions
ledger.apply.failure counter count of failed applied transactions
ledger.apply-soroban.success counter count of successfully applied soroban transactions
ledger.apply-soroban.failure counter count of failed applied soroban transactions
ledger.apply-soroban.max-clusters counter maximum number of clusters across all stages in a ledger
ledger.apply-soroban.stages counter number of stages used for parallel apply in a ledger
ledger.catchup.duration timer time between entering LM_CATCHING_UP_STATE and entering LM_SYNCED_STATE
ledger.invariant.failure counter number of times invariants failed
ledger.invariant.state-snapshot-skipped counter number of times state snapshot invariant was skipped due to previous scan still running
ledger.ledger.close timer time to close a ledger (excluding consensus)
ledger.memory.queued-ledgers counter number of ledgers queued in memory for replay
ledger.metastream.bytes meter number of bytes written per ledger into meta-stream
ledger.metastream.write timer time spent writing data into meta-stream
ledger.operation.apply timer time applying an operation
ledger.operation.count histogram number of operations per ledger
ledger.transaction.apply timer time to apply one transaction
ledger.transaction.total-apply timer cumulative time to apply all transactions in a ledger
ledger.transaction.count histogram number of transactions per ledger
ledger.transaction.internal-error counter number of internal errors since start
loadgen.payment.native meter loadgenerator: native payment submitted
loadgen.pretend.submitted meter loadgenerator: pretend ops submitted
loadgen.run.complete meter loadgenerator: run complete
loadgen.run.start meter loadgenerator: run started
loadgen.soroban.create_upgrade meter loadgenerator: soroban create upgrade TXs submitted
loadgen.soroban.invoke meter loadgenerator: soroban invoke TXs submitted
loadgen.soroban.setup_invoke meter loadgenerator: soroban setup invoke TXs submitted
loadgen.soroban.setup_upgrade meter loadgenerator: soroban setup upgrades TXs submitted
loadgen.soroban.upload meter loadgenerator: soroban upload TXs submitted
loadgen.step.count meter loadgenerator: generated some transactions
loadgen.step.submit timer loadgenerator: time spent submitting transactions per step
loadgen.txn.attempted meter loadgenerator: transaction submitted
loadgen.txn.bytes meter loadgenerator: size of transactions submitted
loadgen.txn.rejected meter loadgenerator: transaction rejected
overlay.byte.read meter number of bytes received
overlay.byte.write meter number of bytes sent
overlay.async.read meter number of async read requests issued
overlay.async.write meter number of async write requests issued
overlay.connection.authenticated counter number of authenticated peers
overlay.connection.latency timer estimated latency between peers
overlay.connection.pending counter number of pending connections
overlay.connection.read-throttle timer throttle time for reading incoming traffic from peers
overlay.connection.flood-throttle timer throttle time for sending flood traffic to peers
overlay.delay.async-write timer time between each message's async write issue and completion
overlay.delay.write-queue timer time between each message's entry and exit from peer write queue
overlay.error.read meter error while receiving a message
overlay.error.write meter error while sending a message
overlay.fetch.txset timer time to complete fetching of a txset
overlay.fetch.qset timer time to complete fetching of a qset
overlay.fetch.unique-recv meter number of bytes of fetched messages that have not yet been received
overlay.fetch.duplicate-recv meter number of bytes of fetched messages that have already been received
overlay.flood.advertised meter transactions advertised through pull mode
overlay.flood.demanded meter transactions demanded through pull mode
overlay.flood.fulfilled meter demanded transactions fulfilled through pull mode
overlay.flood.unfulfilled-banned meter transactions we failed to fulfilled since they are banned
overlay.flood.unfulfilled-unknown meter transactions we failed to fulfilled since they are unknown
overlay.flood.tx-pull-latency timer time between the first demand and the first time we receive the txn
overlay.flood.peer-tx-pull-latency timer time to pull a transaction from a peer
overlay.demand.timeout meter pull mode timeouts
overlay.flood.relevant-txs meter relevant transactions pulled from peers
overlay.flood.irrelevant-txs meter irrelevant transactions pulled from peers
overlay.flood.abandoned-demands meter tx hash pull demands that no peers responded
overlay.flood.broadcast meter message sent as broadcast per peer
overlay.flood.duplicate_recv meter number of bytes of flooded messages that have already been received
overlay.flood.unique_recv meter number of bytes of flooded messages that have not yet been received
overlay.flood.tx-batch-size histogram number of transactions in a batch
overlay.inbound.attempt meter inbound connection attempted (accepted on socket)
overlay.inbound.drop meter inbound connection dropped
overlay.inbound.establish meter inbound connection established (added to pending)
overlay.inbound.reject meter inbound connection rejected
overlay.inbound.live counter number of live inbound connections
overlay.outbound-queue. timer time traffic sits in flow-controlled queues
overlay.outbound-queue.drop- meter number of messages dropped from flow-controlled queues
overlay.item-fetcher.next-peer meter ask for item past the first one
overlay.memory.flood-known counter number of known flooded entries
overlay.message.broadcast meter message broadcasted
overlay.message.read meter message received
overlay.message.write meter message sent
overlay.message.drop meter message dropped due to load-shedding
overlay.outbound.attempt meter outbound connection attempted (socket opened)
overlay.outbound.cancel meter outbound connection cancelled
overlay.outbound.drop meter outbound connection dropped
overlay.outbound.establish meter outbound connection established (added to pending)
overlay.recv. timer received message
overlay.send. meter sent message
overlay.timeout.idle meter idle peer timeout
overlay.timeout.straggler meter straggler peer timeout
process.action.queue counter number of items waiting in internal action-queue
process.action.overloaded counter 0-or-1 value indicating action-queue overloading
process.file.handles counter number of open file handles
process.memory.handles counter number of running processes in process manager
scp.envelope.emit meter SCP message sent
scp.envelope.invalidsig meter envelope failed signature verification
scp.envelope.receive meter SCP message received
scp.envelope.sign meter envelope signed
scp.envelope.validsig meter envelope signature verified
scp.fetch.envelope timer time to complete fetching of an envelope
scp.memory.cumulative-statements counter number of known SCP statements known
scp.nomination.combinecandidates meter number of candidates per call
scp.pending.discarded counter number of discarded envelopes
scp.pending.fetching counter number of incomplete envelopes
scp.pending.processed counter number of already processed envelopes
scp.pending.ready counter number of envelopes ready to process
scp.empty-tx-set.externalized counter number of times the local node externalized an empty-tx-set value
scp.empty-tx-set.value-replaced counter number of times the ballot protocol swapped a value for an empty-tx-set value
scp.sync.lost meter validator lost sync
scp.timeout.nominate meter timeouts in nomination
scp.timeout.prepare meter timeouts in ballot protocol
scp.timing.nominated timer time spent in nomination
scp.timing.externalized timer time spent in ballot protocol
scp.timing.first-to-self-externalize-lag timer delay between first externalize message and local node externalizing
scp.timing.self-to-others-externalize-lag timer delay between local node externalizing and later externalize messages from other nodes
scp.timing.ballot-blocked-on-txset timer time balloting was blocked waiting for a txset download (milliseconds)
scp.trigger.prepare-start-fallback meter trigger timer fell back from the network-close-time anchor to the local prepare-start anchor
scp.value.invalid meter SCP value is invalid
scp.value.valid meter SCP value is valid
scp.slot.values-referenced histogram number of values referenced per consensus round
scp.qic.successful-run meter number of successful quorum intersection checks completed (a valid result was returned)
scp.qic.failed-run meter number of failed quorum intersection checks (an error/exception was thrown, this could happen if the time-limit was exceeded)
scp.qic.aborted-run meter number of aborted quorum intersection checks (the call was aborted, this could happen if the memory-limit was exceeded)
scp.qic.result-potential-split meter number of potential quorum splits detected
scp.qic.result-unknown meter number of unknown results returned (the SAT solver has reached internal limits such as no. conflicts)
scp.qic.cumulative-time-ms meter total time spent on quorum intersection checks (non-aborted runs) in milliseconds
scp.qic.cumulative-mem-byte meter total memory used by quorum intersection checks (non-aborted runs) in bytes
state-archival.eviction.age counter the average of the delta between an entry's liveUntilLedger and the ledger when it is evicted
state-archival.eviction.bytes-scanned counter number of bytes that eviction scan has read
state-archival.eviction.entries-evicted counter number of entries that have been evicted
state-archival.eviction.incomplete-scan counter number of buckets that were too large to be fully scanned for eviction
state-archival.eviction.period counter number of ledgers to complete an eviction scan
state-archival.eviction.blocking-time timer time spent on eviction on the main thread
state-archival.eviction.background-time timer time spent in the background scanning entries to find evictable entries
soroban.host-fn-op.read-entry meter number of entries accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.write-entry meter number of entries modified during the InvokeHostFunctionOp
soroban.host-fn-op.read-key-byte meter number of LedgerKey bytes in entries accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.write-key-byte meter number of LedgerKey bytes in entries modified during the InvokeHostFunctionOp
soroban.host-fn-op.read-ledger-byte meter number of LedgerEntry bytes accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.read-data-byte meter number of ContractDataEntry bytes accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.read-code-byte meter number of ContractCodeEntry bytes accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.write-ledger-byte meter number of LedgerEntry bytes modified during the InvokeHostFunctionOp
soroban.host-fn-op.write-data-byte meter number of ContractDataEntry bytes modified during the InvokeHostFunctionOp
soroban.host-fn-op.write-code-byte meter number of ContractCodeEntry bytes modified during the InvokeHostFunctionOp
soroban.host-fn-op.emit-event meter number of events emitted during the InvokeHostFunctionOp
soroban.host-fn-op.emit-event-byte meter number of event bytes emitted during the InvokeHostFunctionOp
soroban.host-fn-op.cpu-insn meter number of metered cpu instructions during the InvokeHostFunctionOp
soroban.host-fn-op.mem-byte meter number of metered memory bytes during the InvokeHostFunctionOp
soroban.host-fn-op.invoke-time-nsecs timer time spent on the soroban host invocation. Note: this is not the total time of the operation, which is tracked under "soroban.host-fn-op.exec".
soroban.host-fn-op.cpu-insn-excl-vm meter number of metered cpu instructions excluding VM instantiation during the InvokeHostFunctionOp
soroban.host-fn-op.invoke-time-nsecs-excl-vm timer time spent in soroban host invocation excluding VM instantiation
soroban.host-fn-op.invoke-time-fsecs-cpu-insn-ratio histogram ratio between soroban host invocation time (femto-seconds) and metered cpu instructions
soroban.host-fn-op.invoke-time-fsecs-cpu-insn-ratio-excl-vm histogram ratio between soroban host invocation time (femto-seconds) and metered cpu instructions, excluding VM instantiation
soroban.host-fn-op.ledger-cpu-insns-ratio histogram ratio between ledger time (milliseconds) and metered CPU instructions
soroban.host-fn-op.ledger-cpu-insns-ratio-excl-vm histogram ratio between ledger time (milliseconds) and metered CPU instructions, excluding VM instantiation
soroban.host-fn-op.declared-cpu-insns-usage-ratio histogram ratio between declared CPU instructions and actual usage
soroban.host-fn-op.max-rw-key-byte meter size of the largest LedgerKey (in bytes) among all entires accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.max-rw-data-byte meter size of the largest ContractDataEntry (in bytes) among all entires accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.max-rw-code-byte meter size of the largest ContractCodeEntry (in bytes) among all entires accessed (read or modified) during the InvokeHostFunctionOp
soroban.host-fn-op.max-emit-event-byte meter size of the largest event emitted during the InvokeHostFunctionOp
soroban.host-fn-op.success meter number of successful InvokeHostFunctionOp operations
soroban.host-fn-op.failure meter number of failed InvokeHostFunctionOp operations
soroban.host-fn-op.exec timer total time spent during the InvokeHostFunctionOp
soroban.restore-fprint-op.read-ledger-byte meter number of LedgerEntry bytes accessed (read or modified) during the RestoreFootprintOp
soroban.restore-fprint-op.write-ledger-byte meter number of LedgerEntry bytes modified during the RestoreFootprintOp
soroban.restore-fprint-op.exec timer total time spent during the RestoreFootprintOp
soroban.ext-fprint-ttl-op.read-ledger-byte meter number of LedgerEntry bytes accessed (read or modified) during the ExtendFootprintTTLOp
soroban.ext-fprint-ttl-op.exec timer total time spent during the ExtendFootprintTTLOp
soroban.ledger.tx-count histogram number of soroban transactions per ledger
soroban.ledger.cpu-insn histogram total cpu instructions declared by soroban transactions per ledger
soroban.ledger.txs-size-byte histogram total size (in bytes) of soroban transactions per ledger
soroban.ledger.read-entry histogram number of accessed (read or modified) entries declared by soroban transactions per ledger
soroban.ledger.read-ledger-byte histogram number of accessed (read or modified) LedgerEntry bytes declared by soroban transactions per ledger
soroban.ledger.write-entry histogram number of modified entries declared by soroban transactions per ledger
soroban.ledger.write-ledger-byte histogram number of modified LedgerEntry bytes declared by soroban transactions per ledger
soroban.tx.size-byte histogram size (in bytes) of a soroban transaction
soroban.config.contract-max-rw-key-byte counter soroban config setting contract_data_key_size_bytes
soroban.config.contract-max-rw-data-byte counter soroban config setting contract_data_entry_size_bytes
soroban.config.contract-max-rw-code-byte counter soroban config setting contract_max_size_bytes
soroban.config.tx-max-size-byte counter soroban config setting tx_max_size_bytes
soroban.config.tx-max-cpu-insn counter soroban config setting tx_max_instructions
soroban.config.tx-max-mem-byte counter soroban config setting tx_memory_limit
soroban.config.tx-max-read-entry counter soroban config setting tx_max_read_ledger_entries
soroban.config.tx-max-read-ledger-byte counter soroban config setting tx_max_disk_read_bytes
soroban.config.tx-max-write-entry counter soroban config setting tx_max_write_ledger_entries
soroban.config.tx-max-write-ledger-byte counter soroban config setting tx_max_write_bytes
soroban.config.tx-max-emit-event-byte counter soroban config setting tx_max_contract_events_size_bytes
soroban.config.fee-write-1kb counter soroban config setting fee per 1KB of ledger data written
soroban.config.ledger-max-tx-count counter soroban config setting ledger_max_tx_count
soroban.config.ledger-max-cpu-insn counter soroban config setting ledger_max_instructions
soroban.config.ledger-max-txs-size-byte counter soroban config setting ledger_max_txs_size_bytes
soroban.config.ledger-max-read-entry counter soroban config setting ledger_max_read_ledger_entries
soroban.config.ledger-max-read-ledger-byte counter soroban config setting ledger_max_disk_read_bytes
soroban.config.ledger-max-write-entry counter soroban config setting ledger_max_write_ledger_entries
soroban.config.ledger-max-write-ledger-byte counter soroban config setting ledger_max_write_bytes
soroban.config.bucket-list-target-size-byte counter soroban config setting state_target_size_bytes
soroban.module-cache.num-entries counter current number of entries in module cache
soroban.module-cache.compilation-time timer times each contract compilation when adding to module cache
soroban.module-cache.rebuild-time timer times each rebuild of module cache (including all compilations)
soroban.module-cache.rebuild-bytes counter bytes of WASM bytecode compiled in last rebuild of module cache
soroban.in-memory-state.contract-code-size counter size in bytes of non-evicted ContractCode entries according to memory cost model
soroban.in-memory-state.contract-data-size counter size in bytes of ContractData entries in memory
soroban.in-memory-state.contract-code-entries counter number of ContractCode entries in memory
soroban.in-memory-state.contract-data-entries counter number of ContractData entries in memory