We are are very pleased to announce the release of Actyx v2.2.0, with a matching small update for Actyx CLI to v2.1.1. The main new feature concerns the query language accepted by the event API endpoints: it has been extended by the ability to filter and transform the events within Actyx before being transferred to the client.
We have also added a feature in beta preview, namely the ability to restrict a query in terms of the timespan it covers. So if I wanted to get interruption reasons from all interruptions for machine K700 that occurred yesterday (in UTC), I could now say
FEATURES(timeRange) -- this is the new feature flag mechanism in action FROM 'machine' & 'machine:K700' & from(2021-07-22Z) & to(2021-07-23Z) FILTER _.type = 'interrupted' SELECT _.reason
This would yield just the contents of the
reason property of the selected events, instead of the full payload as persisted in Actyx. If you want the time interval to start at midnight in CEST, you’d use a timestamp like
from(2021-07-21T22:00Z). We are currently collecting feedback on this feature and will add timezone support later.
Another new feature is that you can ask for events emitted by a particular app only, e.g. by starting your query with
The best way to play around with these new features is via
ax events query. Support for AQL queries will be added to the TS SDK very soon and will also be included in the upcoming C# SDK.
For all the details please refer to the reference documentation. And if you have any thoughts on this, please do let us know!
Compatibility remark: Due to a missing input validation in Actyx 2.0/2.1 it was possible to emit events with malformed app IDs. An app ID is supposed to work like a valid DNS name, we’re using a similar approach to Java package names for example, just without the conversion from dash to underscore. So if your app ID included uppercase or non-ASCII letters, it was malformed but previously not rejected.
If you have events emitted with malformed app IDs, you won’t be able to query them after updating to Actyx v2.2.0. Please get in contact with us if this poses a problem, we’re here to help and very sorry for the inconvenience.