GeneXus accepts OpenTelemetry as the way to obtain telemetry data (traces, logs and metrics) from the application.
This allows to know what exactly is going on in the System, including:
- The time required by Requests.
- Entry points and the most requested programs.
- Execution of SQL sentences. The time required for each Request to be replied to.
- The number of Error 500. The exceptions that occur and which exactly are they.
- Traces of Http calls (micro-services).
- Creation of automatic alerts based on telemetry.
Note: By the time being, the applications may have auto-instrumentation.
The data instrumented automatically (sent to the observability backend by the Apps) are:
- Access to the database (Insert, Select, Delete, etc.)
- Calls to API through HttpClient
- Cache Access (Redis & Memcached)
- Application Server metrics
- AWS SDK, Redis, Memcached, etc.
- Logs are connected to Traces to display GeneXus logs at trace level.
Full List: https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/docs/supported-libraries.md#libraries--frameworks
- Access to the database (Insert, Select, Delete, etc.)
- Calls to API through HttpClient
- Aspnet Core Application Server metrics
To achieve this, you may select any of the following SDKs:
- AWS Distro for OpenTelemetry (ADOT)
- SDK OpenTelemetry
- Azure Monitor Application Insights
ADOT provides API, libraries and open source agents to compile distributed metrics and traces for app monitoring. It also compiles metadata from its resources and administered services of Amazon Web Services. This makes it possible to correlate the app’s performance data with the data of the underlying infrastructure.
ADOT receives the app’s traces and it is also configured to periodically compile endpoint metrics/app metrics through HTTP.
SDK OpenTelemetry enables the creation of traces and metrics events, in addition to exporting telemetry data to an analysis backend.
Application Insights is an extension of Azure Monitor that provides Application Performance Monitoring (APM) features.