EventStore Dashboard is a tool to analyze EventStore
databases. It provides access to events, streams, snapshots, and subscriptions.
It works as an additional page for the Phoenix LiveDashboard
.
You can add this page to your Phoenix LiveDashboard by adding as a page in the live_dashboard
macro at your router file.
live_dashboard "/dashboard",
additional_pages: [
eventstores: {EventStore.Dashboard, event_stores: [MyEventStore]}
]
The :event_stores
option accept event store names (the :name
option of your EventStore). By omitting the :event_stores
option, EventStore Dashboard will try to auto discover your event stores.
live_dashboard "/dashboard",
additional_pages: [
eventstores: EventStore.Dashboard
]
Once configured, you will be able to access the EventStore Dashboard at /dashboard/eventstore
.
Add the following to your mix.exs
and run mix deps.get
:
def deps do
[
{:eventstore_dashboard, github: "commanded/eventstore-dashboard"}
]
end
After that, proceed with instructions described in Integration with Phoenix LiveDashboard above.
- Dynamic event stores are not currently supported.
- Subscriptions and snapshots have not yet been implemented.
For those planning to contribute to this project, you can run a dev version of the dashboard with the following commands:
$ mix setup
$ mix dev
Alternatively, run iex -S mix dev [flags]
if you also want a shell.
This project is based on the Broadway Dashboard tool which is used to analyse Broadway pipelines. Thank you to the entire Dashbit team for their inspiration! It also builds upon the excellent Phoenix LiveDashboard project, thank you to the Phoenix framework team.