Metrics
Like the FactCast server, also Factus makes use of micrometer.io metrics.
Metric namespaces and their organization
At the time of writing, there are three namespaces exposed:
factus.timings
factus.counts
factus.gauges
Depending on your micrometer binding, you may see a slightly different spelling in your data (like ' factus_timings`, if your datasource has a special meaning for the ‘.’-character)
The metrics are automatically tagged with
- the emitting class (
class
tag) - the name of the metric (
name
tag)
Existing Metrics
At the time of writing (Factcast version 0.3.13) the following metrics are supported:
Counted
transaction_attempts
- how often was a transaction retried. See Optimistic Locking for more backgroundtransaction_abort
- how often was an attempted transaction aborted
Gauged
fetch_size
- size in bytes of a fetched Snapshot projection or Aggregate projection
Timed
managed_projection_update_duration
- duration in milliseconds a Managed Projection took to updatefetch_duration
- duration in milliseconds it took to fetch a Snapshot projectionfind_duration
- duration in milliseconds it took to find a specific Aggregateevent_processing_latency
- for those facts that arrive after catchup: time difference in milliseconds between a fact was published and recieved by a client. (In case of batch processing, this is only reported for the first/oldest fact of a batch)
Last modified
May 6, 2024
: #2839_keep_interfaces_mostly_stable: align docs with impl regarding event_processing_latency (caf3fede4)