Metrics
Raccoon uses Statsd protocol as way to report metrics. You can capture the metrics using any supported statsd collector like Telegraf. This page contains reference for all the metrics for Raccoon.
Table of Contents
Server Connection
server_ping_failure_total
Total ping that server fails to send
- Type:
Counting
- Tags:
conn_group=*
server_pong_failure_total
Total pong that server fails to send
- Type:
Counting
- Tags:
conn_group=*
connections_count_current
Number of alive connections
- Type:
Gauge
- Tags:
conn_group=*
user_connection_success_total
Number of successful connections established to the server
- Type:
Count
- Tags:
conn_group=*
user_connection_failure_total
Number of fail connections established to the server
- Type:
Count
- Tags:
reason=ugfailure
reason=exists
reason=serverlimit
conn_group=*
user_session_duration_milliseconds
Duration of alive connection per session per connection
- Type:
Timing
- Tags:
conn_group=*
Kafka Publisher
kafka_messages_delivered_total
Number of delivered events to Kafka
- Type:
Count
- Tags:
success=false
success=true
conn_group=*
event_type=*
kafka_unknown_topic_failure_total
Number of delivery failure caused by topic does not exist in kafka.
- Type:
Count
- Tags:
topic=topicname
event_type=*
kafka_tx_messages_total
Total number of messages transmitted (produced) to Kafka brokers.
- Type:
Gauge
kafka_tx_messages_bytes_total
Total number of message bytes (including framing, such as per-Message framing and MessageSet/batch framing) transmitted to Kafka brokers
- Type:
Gauge
kafka_brokers_tx_total
Total number of requests sent to Kafka brokers
- Type:
Gauge
- Tags:
broker=broker_nodes
kafka_brokers_tx_bytes_total
Total number of bytes transmitted to Kafka brokers
- Type:
Gauge
- Tags:
broker=broker_nodes
kafka_brokers_rtt_average_milliseconds
Broker latency / round-trip time in microseconds
- Type:
Gauge
- Tags:
broker=broker_nodes
Resource Usage
server_mem_gc_triggered_current
The time the last garbage collection finished in Unix timestamp
- Type:
Gauge
server_mem_gc_pauseNs_current
Circular buffer of recent GC stop-the-world in Unix timestamp
- Type:
Gauge
server_mem_gc_count_current
The number of completed GC cycle
- Type:
Gauge
server_mem_gc_pauseTotalNs_current
The cumulative nanoseconds in GC stop-the-world pauses since the program started
- Type:
Gauge
server_mem_heap_alloc_bytes_current
Bytes of allocated heap objects
- Type:
Gauge
server_mem_heap_inuse_bytes_current
HeapInuse is bytes in in-use spans
- Type:
Gauge
server_mem_heap_objects_total_current
Number of allocated heap objects
- Type:
Gauge
server_go_routines_count_current
Number of goroutine spawn in a single flush
- Type:
Gauge
server_mem_stack_inuse_bytes_current
Bytes in stack spans
- Type:
Gauge
Event Delivery
Following metrics are event delivery reports. Each metrics reported at a different point in time. See the diagram below for to understand when each metrics are reported.
events_rx_bytes_total
Total byte receieved in requests
- Type:
Count
- Tags:
conn_group=*
event_type=*
events_rx_total
Number of events received in requests
- Type:
Count
- Tags:
conn_group=*
event_type=*
batches_read_total
Request count
- Type:
Count
- Tags:
status=failed
status=success
reason=*
conn_group=*
batch_idle_in_channel_milliseconds
Duration from when the request is received to when the request is processed. High value of this metric indicates the publisher is slow.
- Type:
Timing
- Tags:
worker=worker-name
event_processing_duration_milliseconds
Duration from the time request is sent to the time events are published. This metric is calculated per event by following formula (PublishedTime - SentTime)/CountEvents
- Type:
Timing
- Tags:
conn_group=*
server_processing_latency_milliseconds
Duration from the time request is receieved to the time events are published. This metric is calculated per event by following formula(PublishedTime - ReceievedTime)/CountEvents
- Type:
Timing
- Tags:
conn_group=*
worker_processing_duration_milliseconds
Duration from the time request is processed to the time events are published. This metric is calculated per event by following formula(PublishedTime - ProcessedTime)/CountEvents
- Type:
Timing