Clearing Axon server

I am using Docker with Axon Server for development purposes. Where Axon server writes which event has been processed? How I can clear the information?
It is produce a lot of problem during development.

Thanks for advice!

Hi all, hi colleague Sergey ;-),

I guess what Sergey is asking for is actually an interesting question.

I think it’s about how to deal with faulty events (processed by a tracking event handler) that you generate during development (or even in production), without the need to wipe out the whole event store (this is what I do right now, destroy the container, which wipes out the data).

One possibility would be to “tweek” the tracking token of the corresponding handler, in our case they sit in MongoDB (I for example delete it if I want to replay all events). But for skipping events, I don’t know…

My guess is that you need to catch exceptions in the event handler and to store the event in some kind of “dead event store” if you want to keep them, or just skip them if not. Then the next event will be processed.

This could be an approach, but maybe there is some kind of best practice in the community?


Hi Sergey and Markus,

When it comes to events in a development and/or test environment of your production pipe line, I would opt against persisting those indefinitely.
The development phase is a typical area where you will change the format of your events quite often, and you should be free to do so.
Thus having the event store hold you down in this area is what I’d regard troublesome.

The events in the development phase are however typically not business critical events.

So, why not drop them entirely if they’re in the way?
To that end, we’ve provided a “Development Mode” for Axon Server, which allows you to clear the store if necessary.

I would regard the problem different if we’re talking about events originating from the acceptance phase.
When the project enters this phase, you should typically mirror production.
Thus, any events originating from this phase can also occur in production, making this set up “production critical”.

That’s my two cents to the situation, hope it helps!