Skip to main content

A10 Thunder ADC SOAP Body Capture Configuration

Documentation for configuring A10 Thunder ADC to capture SOAP body content using aFleX TCL scripts or syslog, as detailed in the S2R RFC.

Applies to1.7.1

Overview

This document describes the configuration for A10 Thunder ADC to perform SOAP body capture. This capability is designed to capture SOAP message bodies from HTTP requests and responses for processing within the S2R platform.

The A10 Thunder ADC configuration utilizes an aFleX TCL script to hook into HTTP events and forward captured data. Alternatively, a syslog-based approach is also documented. This specific integration is marked as "INTERNAL — Documentation-only in v1" and is not actively maintained in the current directory. Operators are expected to adapt the provided aFleX TCL snippet from the referenced RFC to their specific environment.

For v1, only HAProxy and nginx body-capture scripts are officially supported and maintained.

How it Works

The A10 Thunder ADC SOAP body capture mechanism primarily relies on an aFleX TCL script named s2r_body_capture.tcl.

  1. Event Hooking: The aFleX TCL script is designed to hook into HTTP_REQUEST and HTTP_RESPONSE events. This allows it to intercept and process HTTP traffic at both the request and response phases.
  2. Data Capture and Forwarding: Upon triggering these events, the script captures relevant data, specifically a "BB #12 envelope". This envelope is then POSTed to a designated relay VM for further processing.
  3. Header Injection: The aFleX script also supports header injection, for example, HTTP::header insert "X-Client-IP". This allows for adding or modifying HTTP headers during the processing flow.
  4. Deployment: The aFleX TCL script can be deployed onto the A10 Thunder ADC using one of two methods:
  • Via the aXAPI, specifically by sending a POST request to the /axapi/v3/aflex endpoint.
  • Through the A10 Thunder web user interface.
  1. Virtual Server Binding: Once deployed, the aFleX script must be bound to a virtual server. This is done using the aflex <name> command under the slb virtual-server virtual-port section.
  2. Alternative (Syslog): For operators who prefer a different approach, the RFC also covers a syslog format and field mapping for body capture.

Configuration Details and Examples

The detailed A10 Thunder ADC body-capture configuration, including the aFleX TCL script (s2r_body_capture.tcl) and specific deployment instructions, is documented externally in docs/rfc/lb-syslog-discovery.md section 2.5, titled "A10 Thunder ADC (BB #9)".

This source document (deploy/lb-connectors/a10/README.md) does not contain the concrete aFleX TCL snippet or an example aXAPI request/response payload. Operators are instructed to copy the aFleX TCL snippet from the RFC and adapt it to their environment.

Configuration Reference

The source document (deploy/lb-connectors/a10/README.md) does not provide a formal table of configurable parameters with types, defaults, and requirements. However, it references several key configuration elements:

| Name | Type | Default | Required | Description | String | — | Yes | The A10 Thunder ADC aFleX TCL script for body capture. | String | — | Yes | The A10 Thunder ADC aFleX TCL script for body capture. | | s2r_body_capture.tcl | String | — | Yes | The A10 Thunder ADC aFleX TCL script for body capture.

Tagsguides

All SOAP-to-REST docs