Actional Looking Glass Integration
The can be configured to be managed as a node by an Actional® Looking Glass™ server. When this configuration is in effect, the will capture message information at the following points during message processing:
gateway83
The
API Gateway
can be configured to be managed as a node by an Actional® Looking Glass™ server. When this configuration is in effect, the API Gateway
will capture message information at the following points during message processing:- message receipt(after service resolution, but prior to policy enforcement)
- pre-HTTP routing(immediately before routing to the downstream/protected service)
- post-HTTP routing(immediately after receiving the associated response from the downstream/protected service)
- message processing complete(after any post-routing policy has been executed, but prior to forwarding the response back to the client)
The captured information is sent to the Actional Agent (configured externally), which then relays it to the Looking Glass server. For instructions on configuring the Agent, contact CA Support.
If the Actional Agent is not running, the Actional Integration will buffer messages until the buffer is filled. At this point, the oldest data will be discarded and a warning message will be logged.
The Actional Integration feature is licensed separately and requires that the Progress® Actional® for SOA Operations is correctly installed and configured.
Configuring the Actional Integration
To enable the Actional Integration, set the cluster property interceptor.enable to "true". Note that it may take up to two minutes for the integration to be fully enabled after changing the cluster property.
Once the integration is enabled, you can configure it using the following cluster properties:
Property | Description |
---|---|
interceptor.enable | Enables/disables the Actional Integration. This value is checked every 2 minutes. Value is a Boolean. Default: false |
interceptor.configDir | The configuration directory that is common to both the Actional Integration and the Actional Agent. This setting must be configured to the same location as the Agent. Value is a String. Default: /opt/SecureSpan/Actional/LG.Interceptor Do not change this path for appliance Gateways. Requires a Gateway restart for changes to take effect. |
interceptor.enableOutboundHttpHeader | Determines whether the Gateway interceptor adds a manifest HTTP header to the outbound request. Default: true |
interceptor.enforceInboundTrustZone | Determines whether the Gateway interceptor enforces Trust Zones on inbound messages. Value is a Boolean. Default: false |
interceptor.inboundHttpHeaderName | The HTTP header name used when processing the manifest HTTP header from the inbound request message. Default: LG_Header |
interceptor.outboundHttpHeaderName | The HTTP header name used when a manifest HTTP header is added to outbound request messages. Default: LG_Header |
interceptor.transmitConsumerPayload | Determines whether XML payloads are captured and forwarded by the Actional Integration along with statistical information when processing outgoing request messages. Value is a Boolean. Default:false Transmitting the payload can be resource intensive. Changes to this property may take up to 120 seconds to take effect. |
interceptor.transmitProviderPayload | Determines whether XML payloads are captured and forwarded by the Actional Integration along with statistical information when processing incoming request messages. Value is a Boolean. Default:false Transmitting the payload can be resource intensive. Changes to this property may take up to 120 seconds to take effect. |
For more information on using cluster properties, see Manage Cluster-Wide Properties.
Configuring the Routing Assertion for Actional Integration
When the Actional Integration is configured to add a header to the routed message (default "LG_Header"), then the header can be passed to the protected service by doing the following:
- Access the Route via HTTP(S) assertion.
- Choose the [Request HTTP Rules] tab within the properties.
- Clear the [Pass through only certain request headers] check box to pass through all headers. If you do not wish to pass through all headers, define the Looking Glass headers as follows:
- Ensure [Customize headers to pass through] is selected.
- Click [Add]. The Custom Header Setting dialog appears.
- For theHeader Name, enterLG_Header.
- Ensure [Pass original value] is selected, then click [OK].
After routing, you can access the value of the header using this variable:
${<
target
>.http.header
.<headername>}Where "<target>" is either request or a message context variable that has been set in the policy.
The Actional Integration does not support adding HTTP headers to the response message.
For example:
${
request.http.header.lg_header
}The names of the inbound and outbound HTTP headers can be configured using the cluster properties:
interceptor.inboundHttpHeaderName
interceptor.outboundHttpHeaderName
context variables and HTTP headers are not case sensitive, so "lg_header" and "LG_Header" are interchangeable.
Enabling Debugging
You can enable interceptor debugging by the Gateway by setting the following system property:
com.actional.lg.interceptor.debug=true
Debugging mode is used only for troubleshooting purposes. You should enable debugging only when directed by CA Support.