Apama Apr 2021 update (v10.7.0 and v10.7.1)

Apama provides real-time streaming analytics and intelligent automated actions on fast-moving data. Apama is a standalone product that is also available as part of Cumulocity IoT where it also includes Cumulocity IoT-only capabilities such as Analytics Builder.

The latest version of Apama has arrived, incorporating 10.7.0 and 10.7.1, with several developer-focused improvements.

​​​​​​​Version 10.7.0

PySys

The PySys testing framework includes a number of improvements making automated testing of EPL easier and more powerful. PySys has been updated to version 1.6.1 and you can refer to the PySys change log for full details.

The new PySys highlights include:

  • New BaseTest.assertThatGrep() method for extract and assert use cases
  • New plug-in API to write simpler Apama specific code such as correlator = self.apama.startCorrelator('testCorrelator', ...)

Miscellaneous

  • Proxy servers are now supported when sending requests from HTTP Client transports, Cumulocity IoT transports and the Cumulocity IoT REST API
  • apama_project tool allows you to add multiple bundles to a project using a single command (instead of only one bundle at a time)
  • EPL memory profiler contains more detailed and more complete information about the memory used for maintaining the stream network
  • Apama images available on Docker Hub (apama-correlator, apama-builder and apama-cumulocity-jre) have been changed to use Red Hat UBI 8 minimal as their base operating system. This changes the OS from v7 to v8 and the switch to a minimal image results in much smaller image sizes
  • Capital Markets adapters have a small number of enhancements to the Apama Base FIX adapter and the BM&F Bovespa UMDF Adapter

Version 10.7.1

Connectivity plug-ins

  • HTTP Client transport’s generic JSON chain includes a FormRequest event definition which allows invoking an HTTP service with a payload encoded to either multipart/form-data or application/x-www-form-urlencoded media types
  • Cumulocity IoT transport specifies sensible defaults for SMS sender name and address when used in conjunction with the HTTP Client transport’s generic JSON bundle
  • Geofence helper methods have been added to the Utilities for Cumulocity EPL bundle. to make it easier to deal with geofences
  • The events Alarm, Event, ManagedObject and Operation now have isCreate() and isUpdate() actions to help identify whether the events are a result of a creation or an update
  • The withChannelResponse action for the event types (ManagedObject, Alarm, Event, Measurement, MeasurementFragment and Operation) allows your application to receive a response on the type.SUBSCRIBE_CHANNEL channel when one of these object types is created or updated
  • The Error event has a reqId field which corresponds to the identifier of the request from which the error event occurred to help make identifying the cause of errors easier

epl_coverage tool

  • Coverage reports are additionally generated in the widely used XML format popularized by Cobertura (a code coverage utility for Java) which allows coverage results to be checked and visualized by third-party tools
  • Reports now include the coverage data for deleted EPL monitors

AnyExtractor

  • New AnyExtractor actions offer a non-throwing alternative to the existing actions by returning a user-specified default value if the path to the nested value does not exist, or if the path exists but the value is not of the required type
  • Extract values from additional types including event, sequence<ANY_TYPE>, dictionary<string,ANY_TYPE>, dictionary<any,ANY_TYPE> and location objects

Miscellaneous

  • JMS receiver-specific status lines in the correlator log file show a new maxMsgKB field which indicates the maximum size in kilobytes of JMS messages that have been received so far

Want to try out Apama? Download Apama Community Edition!