All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Updated API-Builder to version London (4.87.2)
- Updated Memcached from version 1.6.6 to version 1.6.16
- Elastic-Helm charts dependencies for the Elasticstack updated from 7.17.1 to 7.17.3
- Updated default Elastic-Stack version from 7.17.1 to 7.17.3
- Missing support in Helm-Chart for APM-Server Elasticsearch authentication
- Add alt name with namespace for deployment in different namespaces
- Now the parameter:
CACHE_API_PATHSis also used to cache the API-Ignore lookup more efficient - New parameter:
APPLICATION_LOOKUP_ENABLEDto disable application lookup for API-Gateway Traffic Monitoring improvement - New parameter:
IGNORE_API_LOOKUP_ENABLEDto disable the API-Ignore lookup, when not used anyway
- Wait 5 instead of 2 seconds, before trying to attach ILM-Policy to Index-Template
- It may take a bit longer to obtain Custom-Properties from API-Manager for the Index-Template
- Updated API-Builder version and dependencies
- Support to cache APIs with Path-Parameter more efficiently to reduce document ingest latency
- See the new parameter:
CACHE_API_PATHSfor more details.
- See the new parameter:
- Added Geo-Location map of API-Requests
- Logstash pipeline:
EventsPipeline.confchanged to translate IP to Geo-Location - new dashboard:
kibana/dashboards/7/Axway-api-management-maps.ndjsonadded - new parameters:
GEOIP_ENABLED,GEOIP_CACHE_SIZE,GEOIP_CUSTOM_ATTRIBUTE,GEOIP_DOWNLOAD_ENDPOINT
- Logstash pipeline:
- Added support for Eventlog custom properties
- new parameter:
EVENTLOG_CUSTOM_ATTR
- new parameter:
- OpenTraffic logs read from the last 12 hours only #188
- Elastic-Helm charts dependencies for the Elasticstack updated from 7.16.3 to 7.17.1
- Updated default Elastic-Stack version from 7.17.0 to 7.17.1
- Set pipeline.ecs_compatibility to false for all Logstash pipelines
- Updated API-Builder to version Ikeja
- API-Gateway selector was not working for the Real-Time view, as it was using the Time-Filter
- updated dashboard:
kibana/dashboards/7/Axway-api-overview.ndjsonto fix this
- updated dashboard:
- API- and Application-Details once looked up never expired in APIBuilder4Elastic
- added missing checkperiod for In-Memory NodeCache
- Improved documentation to point out default parameters are not production ready #163
- Added a warning when running Logstash or Elasticsearch with default minimal parameters (when using docker-compose) #163
- Added a new visualization: Status by API to all API-Overview dashboards showing Success, Failure/Blocked and Failed status per API
- Added tag kpis to the KPI-Dashboard
- Added new parameter:
API_MANAGER_ENABLEDto allow running the solution without an API-Manager at all - Updated default Elastic-Stack version from 7.16.3 to 7.17.0
- Helm-Chart: Boolean toggles in standard values.yaml file now quoted #164
- APIBuilder4Elastic fails to load the provided certificate to validate the Elasticsearch-Connection
- Updated API-Builder to version Gondar (to solve security issues)
- Mocha in API-Builder4Elastic updated to version 9.2.0 to solve https://nvd.nist.gov/vuln/detail/CVE-2021-23566
- Updated API-Builder custom flow node libraries (to solve security issues)
- Updated default Elastic-Stack version from 7.16.2 to 7.16.3 which delivers log4j 2.17.1
- No longer possible to start an Elasticsearch-Node that is not part of ELASTICSEARCH_NODES #155
- Helm chart deploys 2 Kibana replicas by default instead of 1
- Adjusted ILM-Policies to get more suiteable standard index lifecycle #162
- Updated API-Builder to version Exeter
- Updated API-Builder custom flow node libraries
- APIBuilder4Elastic now using configured ELASTICSEARCH_CA #157
- New optional parameters
KIBANA_ELASTICSEARCH_SSL_VERIFICATIONMODEto configure Kibana to Elasticsearch certificate validation #156APIBUILDER_ELASTICSEARCH_SSL_VERIFICATIONMODEto configure API-Builder to Elasticsearch certificate validation #156APM_ELASTICSEARCH_SSL_VERIFICATIONMODEto configure APM-Server to Elasticsearch certificate validation #156LOGSTASH_ELASTICSEARCH_SSL_VERIFICATIONMODEto configure Logstash to Elasticsearch certificate validation #156FILEBEAT_ELASTICSEARCH_SSL_VERIFICATIONMODEto configure Filebeat to Elasticsearch certificate validation #156- Helm chart supports this by the new new parameter:
validateElasticsearchCertificateper component #156
- Support to configure the data retention period of indexed data instead of using hardcoded ILM-Settings #160
- APIBuilder4Elastic - The Swagger for this service is invalid - Duplicate operationId renamed #158
- Custom-Flow-Nodes dependencies updated to solve security issue https://github.com/advisories/GHSA-74fj-2j2h-c42q
- API-Builder version update to version Exeter to solve security issues
- Updated default Elastic-Stack version from 7.16.1 to 7.16.2 which delivers log4j 2.17.0
- APM-Server was missing the release package
- Elasticsearch failed to start - awk: line 1: syntax error at or near , #154
- Updated default Elastic-Stack version from 7.15.1 to 7.16.1
- Dropped support for K8S 1.18
- API-Management KPIs incl. dashboard #64
- Added support to enable an APM-Service or use an external APM-Server with API-Builder Learn more #149
- Helm Default-Values for Kibana Memory-Limits changed from 300MB to 500MB (Request) and 300MB to 750MB (Limit)
- Elasticsearch default ES_JAVA_OPTS now -Xms1g -Xmx1g as it is no longer set by Elasticsearch to this default
- Updated dependencies of a number of packages to fix security issues
- Updated API-Builder to version Bangkok
- Updated default Elastic-Stack version from 7.14.0 to 7.15.2
- Error initializing cluster when already multiple ELASTICSEARCH_HOSTS configured #150
- Filebeat ignored most recent OpenTraffic file due to a wrong filename pattern (traffic.log --> _traffic.log)
- Default for optional parameter:
FILEBEAT_COMPRESSION_LEVELwas not working as expected
- Make sure Filebeat is not mixing up OpenTraffic with other Log-Files such as Audit-Log #145
- New optional parameter:
API_BUILDER_LOG_LEVELto set the API-Builder Log-Level in your .env file - Support for multiple Admin-Node-Managers when using the regional feature #144
- Added documentation and examples for ES_JAVA_OPTS and LS_JAVA_OPTS on how to setup a different temp directory for Elasticsearch & Logstash
- Traffic-Monitor Authorization should support Multi-Organization #141
- New optional parameter:
FILEBEAT_COMPRESSION_LEVELfor Filebeat to Logstash compression rate #143 - A warning is now logged if unexpectly no Circuit-Path for an API-Request is found #140
- Filter for Authentication Subject ID filter is not working as expected #138
- Service name filtering is not working as expected #129
- API Operation filter not working as expected #131
- V-Host filter is ignored / Index-Template changed to index VHost additionally as text #130
- Updated Elastic-Stack from version 7.12.1 to 7.14.0
- with that increased the min. amount of memory from 16GB to 18GB
- minimum Elasticsearch version is 7.10.x
- Updated API-Builder version from Quezon to Timbuktu
- API-Builder now always returns an Unknown API object if an API could not be found #128
- Field http.status now indexed as a keyword additionally to Integer, which is required for Long-Term-Analytics (Transformation-Job)
- Added support for Long-Term API-Analytics based on transformation jobs
- Added Quartely- and Yearly-API-Request dashboars in addition to the existing Real-Time Dashboard
- Added support for Transactions #83
- If the Current-User request to ANM REST-API fails, API-Builder is now trying it again #135
- New optional parameter:
DROP_TRACE_MESSAGE_LEVELSto skip indexing of certain trace message levels #136
- Custom-Property mapping created as undefinedCustomProperties.myProp #133
- Index-Templates failed to install without using a region #124
- Skip Ext-HTTP-User-AuthZ if returned URL is undefined #126
- API-Builder stops/terminates with an error-message and error-code, if Elasticsearch cannot be configured (e.g. Index-Templates cannot be installed)
- Events Logstash-Pipeline is now processing Transaction-Events with a customMsgAtts.transactionId into the Traffic-Summary index
- Failed to validated API-Manager connection, when using Load-Balanced API-Manager instances #117
- For JMS-Traffic the fields: leg0.protocolInfo.recvHeader and leg0.protocolInfo.sentHeader are copied into the summary index, as they are used for JMS-Property filtering
- Error when setting up Traffic-Summary index without having a Default-API-Manager configured #119
- Region is not used to load the payload #121
- New optional parameter: UNRESTRICTED_PERMISSIONS to control which users see all traffic #120
- API-Builder version changed from Ottawa to Quezon
- Updated Custom-Flow Nodes dependencies
- In docker-compose files, now using relative paths instead of ${PWD} to mount volumes #122
- Trace message in Traffic-Monitor is truncated #112
- API-Manager User looked up at API-Manager even if external HTTP-Based AuthZ is configured #111
- Custom-Properties in Traffic-Details Index are not indexed as they are missing in the Index-Template #115
- EMT-Mode - API-Gateway-Traffic-Monitor don't show traffic when Pod is recreated #114
- External-HTTP Authorization - Traffic-Details in Traffic-Monitor not working #113
- Custom-Properties type custom now additionally indexed with type keyword #116
- Helm-Chart for Filebeat now creates a dedicated ConfigMap:
...tic-filebeat-env-configfor environment properties and...tic-filebeat-configfor the filebeat.yaml - Helm-Chart now expects files given in
/var/<logType>instead of/var/log/<logType>, asvar/logwas causing the error: read-only file system: unknown when trying to mount the directories - Helm-Chart now expects the Cluster-UUID for Filebeat given in
filebeat.elasticsearchClusterUUIDinstead offilebeat.filebeatSecrets.elasticsearchClusterUUID - Logstash lookup for unknown APIs should return 200 instead of 404 #109
- API-Builder version changed from Madrid to Ottawa
- Potential race condition, when using External-HTTP-Based AuthZ #110
- New option to skip Elasticsearch in ANM and instead still use the OPSDB by providing an extra REST-API parameter #105
- HELM-Chart - Learn more about the provided chart here #63
- Parameter:
SKIP_PAYLOAD_HANDLINGchanged toPAYLOAD_HANDLING_ENABLED - Updated Elastic-Version from 7.10.0 to 7.12.1
- Updated API-Builder version from Ibiza (4.60.0) to Lyon (4.63.0)
- Traffic-Monitor Search API now supports the field sslSubject #104
- Error during setup - Get custom properties flow node returned with error message:
Assignment to constant variable
- Traffic-Monitor Search API now returns almost the same fields as the original API #103
- TransactionData not shown, if TransactionElement legs are not in a row #97
- Already existing ServiceName and Operation (Policy-Based) is removed during API-Lookup, when native API cannot be looked up #98
- Data is deleted too early - Data is not visible anymore after ap. 7 days #99
- Logstash Pipeline crashes with NullPointerException in some cases #101
- Added a new parameter:
DISABLE_CUSTOM_PROPERTIESto disable custom properties support #95 - Added more flexibility for the API-Gateway HTTP Status-Code filter. Filters such as 2xx or !2xx are now supported #100
- Duplicated document for one correlationId returned from Elasticsearch causing API-Payload details not to show #90
- API-Manager config for groupId only was registered wrong - Causing error API-Manager config not found for group
- Option to disable user authorization for the API-Gateway Traffic-Monitor #91
- Consider N/A and n/a for the region as not set - In case Logstash does not properly clean it
- Updated Dev-Dependency mocha to version 8.3.2
- API builder mistakenly tries to create the regional index again #81
- Payload not visible for restricted users #88
- IsIgnoreAPI Lookup failure for JMS-Legs #89
- TransactionDetails not shown if one of the Legs used non HTTP (e.g. JMS) #87
- Index: Traffic-Summary, Field correlationId now has doc_values enabled / New index field: transactionId #84
- Reduced Retention-Period from 30 to 14 days for Traffic-Summary/-Details & Trace #85
- API-Builder release changed from Dubai to Ibiza
- API-Builder Log-Level messages enabled
- Now all cookies are returned back to the Admin-Node-Manager. This makes it possible to use Load-Balances ANMs with session stickyness
- Now the returned error message is properly logged if the API-Manager login test at startup fails.
- New option for external HTTPS-Based user authorization. Server certificates can now be verified with correct CA or validation can be disabled completely.
- New callback to external HTTPS-Based user authorization to set the request URI
- API-Gateway CorrelationId is now logged in API-Builder for all lookups performed by Logstash #86
- Parse error when using multiple API_MANAGER configuration #76
- Log-Retention-Period for Trace-Messages from 75 days to 30 days #77
- FAQ to make clear, that AWS Elasticsearch service is not supported #78
- Race-Condition, causing wrong organization assigned to API under heavy load #75
- Now the Application-Id shown in Traffic-Monitor column: Subject resolves to the Application-Name #69
- Now it is possible to perform a Full-Text search (search for a part of value) on the Subject-Column in Traffic-Monitor #70
- ILM policies optimized to reduce the required disk space / Traffic-Details & -Summary retention period now 30 days #73
- Indices are rolled over too often when an Index-Template is changed #72
- Parameter: LOGSTASH_NODE_NAME added to env-sample #74
- Wrong ILM Rollover alias added to regional index #67
- Index-Rollover error when using regional indices #66
- ILM policies optimized for the ideal index sizes and number of shards #68
- Initial version of Update instructions. See UPDATE.md
- Avoid a Race-Condition by making the variable apiProxy locally instead of global #61
- Avoid a Race-Condition for log messages logged with the wrong Transaction-ID #62
- Support for API Custom-Properties
- configured custom properties are indexed according to their configuration in API-Manager
- can be used to create custom dashboard or perform custom queries
- configured custom properties are indexed according to their configuration in API-Manager
- Regional-Support to store data from different regions separatly
- Makes it possible to use this solution with multiple domains
- See https://github.com/Axway-API-Management-Plus/apigateway-openlogging-elk#different-topologiesdomains
- Local API-Lookup for native API-Enrichment & Disable APIs/Events
- Payload-Support
- Flexible User-Authorization
- Life-Cycle-Management
- API-Overview dashboard shows average response time
- Initial early version of new Platform-Health-Dashboard
- the dashboard will be improved with future releases
- Added Metricbeat support
- Used to monitor the Elastic-Stack
- Used to monitor API-Gateways & Docker-Containers (Optional)
- Updated API-Builder to version Dubai
- Elasticsearch configuration now managed by API-Builder project and no longer by Logstash
- Index-Templates
- ILM-Policies has been added
- Rollup-Jobs has been added
- Trace-Messages for an API-Request now sorted correctly
- API-Manager configuration not properly injected into API-Builder container
- Kibana failed to start, when using multiple Elasticsearch hosts
- Initial version