Aggregation Batch Agent Configuration (4.3)

Open the Aggregation Agent Configuration dialog from a workflow configuration. Click  Build → New Configuration. Select Workflow from the Configurations dialog. When prompted to Select workflow type, select Batch. Click Add agent and select Aggregation from the Processing tab in the Agent Selection dialog. Double-click on the agent in the workflow template.

 

The configuration dialog contains the following tabs:

General Tab

Aggregation_agent_configuration.png
The Aggregation agent configuration dialog - General tab

Setting

Description

Setting

Description

Profile

Click Browse... and select an Aggregation profile.

All the workflows in the same workflow template can use different Aggregation profiles. For this to work, the profile has to be set to Default in the Field settings tab in the Workflow Properties dialog. After that, each workflow in the  Workflow Table can be assigned with the correct profile.

Force Read Only

Select this check box to only use the Aggregation Storage for reading aggregation session data. When you select this check box, the agent cannot create new sessions when an incoming UDR cannot be matched to an existing session. A UDR for which no matching session is found is handled according to the setting If No UDR Match is Found.

If you select this setting, timeout and defragmentation handling is also disabled.

When you are using file storage and sharing an Aggregation profile across several workflow configurations, the read and write lock mechanisms that are applied to the stored sessions must be considered:

  • There can only be one write lock at a time in a profile. This means that all but one Aggregation agent must have the  Force Read Only setting enabled.

  • If all of the Aggregation agents are configured with  Force Read Only, any number of read locks can be granted in the profile.

  • If one write lock or more is set, a read lock cannot be granted.

If Timeout is Missing

Select the action to take if timeout for sessions is not set in the APL code using sessionTimeout. The setting is evaluated after each consume or timeout function block has been called (assuming the session has not been removed).

The available options are:

  • Ignore - Do nothing. This may leave sessions in the system indefinitely if the closing UDR does not arrive.

  • Abort - Abort the agent execution. This option is used if a timeout must be set at all times. Therefore, a missing timeout is considered a configuration error.

  • Use Default Timeout - Allow the session timeout to be set here instead of within the code. If enabled, a field becomes available. In this field, enter the timeout, in seconds.

If No UDR Match is Found

Select the action that the agent is to take when a UDR that arrives does not match any session, and Create Session on Failure is disabled in the profile configuration:

  • Ignore - Discard the UDR.

  • Abort - Abort the agent execution. Select this option if all UDRs are associated with a session. This error case indicates a configuration error.

  • Route - Send the UDR on the route that you select from the on list. This is a list of output routes on which the UDR can be sent. The list is only activated if Route is selected.

APL Code Tab

The APL Code tab allows you to manage the detailed behavior of the Aggregation agent. You use the Analysis Programming Language (APL) with some limitations but also with additional functionality. For further information seeAggregation APL Functions(4.3).

The main function block of the code is consume. This block is invoked whenever a UDR has been associated with a session.

The timeout block enables you to handle sessions that have not been successfully closed, e g if the final UDR has not arrived.

 

Item

Description

Item

Description

Code Area

This is where you write your APL code. For further information about the code area and its right-click menu, see Text Editor in https://infozone.atlassian.net/wiki/x/hcMkEg.

Validate

Use this button to check that your code is valid.

Storage Tab

The Storage tab contains settings specific to the selected storage in the Aggregation profile. Different settings are available in batch and real-time workflows and will change based on the storage type configured within the selected Aggregation Profile in the General tab.

File Storage

File Storage Setting

Description

File Storage Setting

Description

Defragment Session Storage Files

For batch workflows, the Aggregation session storage can optionally be defragmented to minimize disk usage. When checked, configure the defragmentation parameters:

Defragment After Every X Batch(es)

Run defragmentation after the specified number of batches. Enter the number of batches to process before each defragmentation.

Defragment if Batch(es) Finishes Within X Second(s)

Set a value to limit how long the defragmentation is allowed to run. This time limitation depends on the execution time of the last batch processed. If the last batch is finished within the specified number of seconds, the remaining time will be used for the defragmentation. The limit accuracy is +/- 5 seconds.

Defragment Session Files Older Than X Minute(s)

Run defragmentation on session storage files that are older than this value to minimize moving recently created sessions often.

Elasticsearch Storage and SQL Storage

Elasticsearch/SQL Storage Setting

Description

Elasticsearch/SQL Storage Setting

Description

If Error Occurs in Storage

Select the action that the agent should take when an error occurs in the storage:

  • Ignore  - Discard the UDR.

  • Log Event  - Discard the UDR and generate a message in the System Log.

  • Route  - Send the UDR on the route selected from the on list. This is a list of output routes on which the UDR can be sent. The list is only activated if Route is selected.

Disable Timeout

Select this check box to disable the timeout handling.

Kafka Storage

When using Kafka storage, a disk-based cache will be created on the corresponding Execution Container (EC). Ensure that there is adequate disk space available to accommodate your specific configuration.

Kafka storage setting

Description

Kafka storage setting

Description

Change Topic Name

Select this setting if you want to update the name of the Kafka topic when creating scalable batch workflows, for example, if you create a new workflow and want it to point to the same topic as the previous one.

 

Â