4.4.0


This is maintenance release 4.4.0 of ConnectPlaza(R) ConnectPlaza(R) Agent.


Customer Release Notes


New Header Enricher

This release contains a redesigned header enricher that makes it easier to add, remove and modify headers.
This redesigned header enricher will serve as a replacement for both the old header enricher and certain functionality that previously required a script.

In addition to the old header enricher functionality, the new header enricher supports:

  • A new design that makes it easier to operate on ConnectMessage header level as well as ConnectMessagePart header level.
  • Updating existing headers by appending or prepending values.
  • Generating UUIDs.
  • Generating timestamps in various formats with optional offset.
  • Substitution syntax in JSONPath, XPath and regular expressions that allows you to use values from headers and payloads in your expressions.

The old header enricher is still available but will be removed in a future release. It has been renamed to "Header Enricher Version 1", with the new header enricher being "Header Enricher Version 2".

RHTTP Support Discontinued

The RHTTP adapter has been removed from the product. The RHTTP adapter was deprecated in 4.3 and has now been removed.

If you are still using RHTTP, you will need to switch to RSocket.

Thread Pool Changes

The way ConnectPlaza handles threads has been changed. Previously, all flows were served by a single thread pool. This could lead to problems when the thread pool was too small or when the number of flows was too high.
The new implementation assigns two dedicated threads to every flow. This way flows will always be served, no matter whether other flows are blocked.

Two properties in the connectplaza-jvm.properties can be used to roll back to the old situation.

connectplaza.process.env.connect_threadsperflow=false
connectplaza.process.env.connect_proxyconsumers_directchannel=false

In that case the property connect.taskscheduler.poolsize must be set to at least numberOfFlows * 2 + 20.

Update Mechanism

  • The update mechanism will now only install the highest possible update and skip the updates in between if possible. This should make it easier to update to the latest version.
  • Added a script cpswitchversion that allows you to manually switch to an older version of ConnectPlaza. This can be useful if you want to roll back to an older version after an upgrade.

REST Listener

  •  Expanded Cross-Origin Resource Sharing (CORS) capabilities.
  •  Fixed error handling when a timeout occurs.
  •  Fixed and improved multipart/form-data support.

HTTP Gateway

  • Added request and response logging by enabling the corresponding attributes.
  • Added Cookie Policy support.

OAuth2 Gateway

  • Added request and response logging by enabling the corresponding attribute.
  • Dynamically specify the HTTP method and URL via a message header or expression.
  • Added support for specifying the resource in the token request.

FTP Components


WARNING: The SFTP component no longer supports deprecated ciphers, including those that still use 3DES and SHA-1. If you are using a server that only supports these deprecated ciphers, you will need to upgrade your server to support more recent ciphers.

  • Added channel connect timeout attribute
  • Updated SFTP to support more recent cipher suites

Message Enricher

  • Added support for XML and JSON data in TEXT message parts

(XML) Injector Service

  • Added support for enabling or disabling namespaces.
  • Added support for explicitly specifying the namespace to use for the tag or attribute to be injected.

File Pickup

You can now explicitly specify the file pattern type. This can be either a regex or an Ant-style pattern.

Mail Producer

A default global timeout of 60 seconds has been added for mail producers. This can be adjusted using the connect.smtp.timeout property.

Microsoft Mail Listener

  • Improved logging to make it easier to see which messages are being fetched.
  • Fixed a race condition that could cause the listener to try to fetch a non-existent message when polling too frequently.

Progress OpenEdge Sender

A timeout attribute has been added to the sender. This will prevent the sender from hanging indefinitely when the remote server is not responding, potentially causing a memory leak.

Large Payload Warning

A warning is now logged when certain payloads exceed a certain size. The default size is 2Mb but can be adjusted using the connect.message-part.payload-size-in-bytes-threshold-warning property.

Analyze

* Fixed cleanup job causing high CPU usage and out-of-memory errors.
* Various fixes and improvements.

Control

The rule engine in Control, used for sending out notifications to Monitor when certain events occur, is redesigned. It was noted that more than one rule template working on one metric caused problems. Mutually exclusive rules could occur simultaneously. This is no longer possible.

A new rule template is added, the oneTriggerStationaryMetricTemplate. It is used to monitor the value of a metric and to detect if it changes within a set time period. If the value does not change in the set time period, Control will emit a notification. This notification will be sent once (oneTrigger). As soon as the metric value is changed, a notification message will be sent.

Security Updates

* Jetty has been updated to 9.4.53.v20231009.
* Bouncy Castle has been updated to 1.76.
* ActiveMQ has been updated to 5.15.16 due to CVE 2023-46604.