This is a tech preview feature introduced in v1.0.5. When used, a syslog Syslog record will be sent to an external APM (or any other Syslog server) for each DataPower gateway transaction.
The syslog Syslog record used is a jsonJSON-formatted data object, containing information aggregated from several sources relating related to the transaction.
The feature requires DataPower FW 7.6+
Value to Customers
- This feature allows customers to easily display DataPower gateway information on their APMs or log aggregator aggregators such as IBM APMs APM, Splunk or ELK. This removes the dependency on, and isolates the customer from changes to DataPower's log structure and saves the need to parse Syslog records.
- Customers may add a link to the syslog record, which redirects from each transaction into DPOD' from the displayed transaction in their APM to DPOD's transaction details, in order to enhance troubleshooting efforts.
- DPOD customers can use this feature to externalize DPOD information for Data Warehouse data warehouse purposes.
- DPOD customers can retain only the summarized transaction details instead of all log records. This will increase history information retention time period and minimize storage requirements.
Transaction Record Structure
The following table describes the fields that are logged with this feature.
Field Name | Description | Possible Values |
---|---|---|
deviceName | DataPower device gateway name | String |
domainName | DataPower domain name where the transaction was executed | String |
latencyElapsed | The elapsed time of the transaction in milliseconds | long |
microSecTimestamp | Timestamp format of the time the transaction started | String |
microSecTimestampStart | For internal use | String |
microSecTimestampFinish | For internal use | String |
serviceType | Service type as defined in DataPowerthe gateway | String - mpgw,wsp,xml-firewall,b2bgw |
serviceUri | Request URI | String |
serviceUrl | Request URL | String |
srcNodeName | The name of the DPOD node that captured the transaction | String |
isError | Indication whether the transaction completed with errors | boolean Boolean true/false |
isTechnicalError | Indication whether the transaction completed with errors | boolean Boolean true/false |
clientIp | The client IP of the machine (or load balancer) where the transaction started. | String |
serviceName | The service the transaction ran on. | String |
transactionId | DataPower transaction ID (TID) | String |
transactionGlobalId | DataPower global transaction ID (GTID) | 26 chars long |
timeZone | The time zone used to log transaction start | String format +ZZZZZZ:ZZ |
docAddedTimeInMil | For internal use | long |
timeInMil | Transaction start time since Epoch in milliseconds | long number |
timeHHMMSS | Full time of transaction start | String format HHMMSS where: HH: 00-23 |
requestSize | The request size | long |
aggRecordVersion | Estimated FW version of the DataPower gateway that executed the transaction. (For internal use) | String |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "dpod_index": "[logical-tran-compact_i3][0]", "dpod_type": "wdpLogicalTransChild", "dpod_id": "ea5ae3c55b45be5500056a13_348659", "dpod_timestamp": "2018-07-11T08:22:45.457Z", "dpod_version": 5, "dpod_operation": "INDEX", "dpod_source": { "deviceName": "1cb3a54303a9", "domainName": "Infra_Domain", "latencyElapsed": 2, "microSecTimestamp": "2018-07-11T11:22:45.313729+03:00", "microSecTimestampStart": "2018-07-11T11:22:45.313729+03:00", "microSecTimestampFinish": "2018-07-11T11:22:45.315558+03:00", "serviceType": "xmlfirewall", "serviceUri": "/UpdateWantedMenProfiles_WHSW/Service.asmx", "serviceUrl": "http://Infra.HA:2555/UpdateWantedMenProfiles_WHSW/Service.asmx", "srcNodeName": "NODE0", "isError": false, "isTechnicalError": false, "clientIp": "172.77.77.5", "serviceName": "WSS_Loopback.XMLFW", "transactionId": "348659", "transactionGlobalId": "ea5ae3c55b45be5500056a13", "timeZone": "+03:00", "docAddedTimeInMil": 1531297365329, "timeHHMMSS": "11:22:45", "timeInMil": 1531297365313, "aggRecordVersion": "7.6.0.0+" } } |
Feature enablement
Perform the following steps to enable this feature
- Install and configure Store plugin.
- Configure each syslog agent.
- Deploy Event Publisher
- Stop and start all system services.
Plugin Configuration
Configure each Store data node (for example: number 2 and 4) as follow:
- cd /app/elasticsearch_nodes/config/MonTier-es-raw-trans-Node-2
- Edit the elasticsearch.yml file
Uncomment the following parameter:
Parameter Values Description events.publisher.plugin.disable false or true enable or disable the plugin
Configure Syslog agent
For each syslog agent in the system perform the following:
...