This is the list of user-facing changes for Mirabelle.
- The websocket server has been merged with the HTTP server
- Percentiles stream: returns quantiles as string
- InfluxDB I/O refactoring
fixed-time-window: to not send empty windows anymore
ssort: no delay by default
- Prometheus remote write support on the HTTP server
- New actions:
- Support a
:delay option on
Fix a bug in the
mirabelle graphviz command.
- Removal of the “disk queue” feature: I was not happy about it
mirabelle graphviz subcommand to generate graphical representations of streams
- Add the stream name in all actions logging events
- Basic auth support for the HTTP server
/health endpoint. Both
/healthz return the same thing.
- Improve websocket error messages on bad queries.
- Improve error messages in test mode.
- Add the ability to persist on the file system streams created through the API. It can be enabled by setting
true in the stream configuration.
coll-where action. This action can be used to filter a list of events based on a condition.
coll-sort action, which can be used to sort a collection of events based on a field.
moving-time-window action. This window always return the events which arrived the last
ssort action. This action buffers events for some time and send them one by one sorted to downstream actions. It can be a nice way to tolerate some late events in streams.
- Allow nesting
and values in conditions. For example
[:and [:or [:= :service "foo"] [:= :service "bar"]] [:> :metric 1]] is now a value condition.
- Use maps instead of plain values for all actions dealing with internal states.
aggr-sum action, which can be used to sum over time events.
- Elasticsearch I/O
- Force the use of the #secret reader for sensitive information in I/O
- throttle: add a second parameter to specify the number of events to keep
- use aero to load the configuration and support aero profiles
- include action, which can be used to reuse part of configurations in streams
- Improve error messages
- Add a new
:native? parameter to the TCP server to enable epoll/kqueue on Netty.
- keep-keys action
- Pagerduty: avoid local timezone (thanks Toby McLaughlin)
- Small perf optimizations
- Mirabelle now build one index per stream.
- All actions reinjecting events into streams (reaper, reinject!) now reinject events by default on the current stream
- reaper action: add a mandatory “interval” parameter to expire events.
First release ;)