Using Keyhole
Realtime tails
A tail is a live stream of events rendered into the bottom panel, newest at the bottom. You can run several at once — each gets its own tab.
Tail types
| broker | tail sources |
|---|---|
| Redis | pub/sub · pattern pub/sub · streams · keyspace events · MONITOR |
| AMQP 1.0 | topic tails · queue tails |
| RabbitMQ | exchange taps |
Starting a tail
Focus the bottom panel with Ctrl+↓, cycle to the Pub/Subor Tail anchor with Tab, then type a source spec and pressEnter. The spec's prefix selects the source type:
# focus the bottom panel (Ctrl-↓), pick the Pub/Sub or Tail anchor,
# type a source spec, then press Enter:
pubsub:news # Redis SUBSCRIBE
psub:orders.* # Redis PSUBSCRIBE (pattern)
stream:telemetry # Redis stream, new entries
keyspace # Redis keyspace events
topic:events # AMQP 1.0 topic
exchange:amq.topic/order.* # RabbitMQ exchange tapPattern tails
A pattern tail (psub:orders.*) subscribes to a glob and labels each event with the concrete channel it arrived on, padded to a fixed 18-column field so payloads stay aligned.
# Pub/Sub anchor: psub:orders.*
14:02:09.118 orders.created {"id":48213,"total":24.90}
14:02:09.640 orders.paid {"id":48213,"ok":true}Pause & scrollback
The feed always follows the newest event. Press p to pause and resume the view — the tail keeps running (and recording) underneath. Scrollback is a ring buffer capped attail_scrollback (default 2000); older events scroll off the top.