A command-line tool for reading EventStore streams, inspired by kafkacat.
This repository was near-entirely created by Claude 3.5 Sonnet. Good job Sonnet!
pip install esdbcatRead all events from a stream:
esdbcat my-streamThe output will be JSON lines with event data and metadata (by default):
{
"data": {
"message": "Hello World"
},
"metadata": {
"id": "1234-5678-90ab-cdef",
"type": "TestEvent",
"stream": "my-stream"
}
}Follow a stream for new events:
esdbcat -f my-streamStart reading from the end of the stream:
esdbcat -o end -f my-streamRead only the last event:
esdbcat -o last my-streamExit after consuming 10 events:
esdbcat -c 10 my-streamFilter events by type:
esdbcat -t UserCreated my-streamRead the special $all stream:
esdbcat $allQuiet mode (suppress informational messages):
esdbcat -q my-streamVerbose mode for debugging:
esdbcat -v my-streamConnect to a specific EventStore instance:
esdbcat --host eventstore.example.com:2113 my-streamOr use a full connection URL:
esdbcat --url "esdb://eventstore.example.com:2113?tls=false" my-streamRead events without metadata:
esdbcat --no-metadata my-streamConnect with authentication:
esdbcat --url "esdb://admin:changeit@localhost:2113?tls=false" my-stream