Changelog

Improving AppSignal, one deploy at a time.

Aug 25, 2025

Improved histograms and logs, report all child spans, and CORS support

Added

  • Improve histogram support. When processing OpenTelemetry histograms, allow for histograms that do not have min, max or sum values. Use the exemplars provided alongside the histogram to improve the accuracy of the histogram.
  • Return CORS headers from the export endpoints to make it possible to export OpenTelemetry data to these endpoints without the need of a proxy server. The Access-Control-Allow-Origin header value can be configured in the collector with the cors_origin config option or APPSIGNAL_CORS_ORIGIN environment variable.
  • Support key-value list attributes in log lines. When an attribute sent in a log line is a key-value list, it will be converted into multiple attributes, one for each key-value pair in the list, prefixed with the key of the list attribute.

Changed

  • Disable the default AppSignal request and response headers filter. By default, the OpenTelemetry SDK in the applications do not send any request and response headers and require configuration of to record these headers. This required double configuration in applications for AppSignal and OpenTelemetry. The appsignal.config.request_headers and appsignal.config.response_headers configuration options can still be used for additional header filtering if needed. Consult your application's language OpenTelemetry SDK for the configuration option to record request and response headers.
  • Log a warning when making a GET request to a POST endpoint. The error page when making a GET request will also explain to make a POST request instead.
  • Read the app language from the OpenTelemetry telemetry.sdk.language resource attribute if set. This attribute is set by the OpenTelemetry SDK for some languages, like Go, Java and PHP. If your application's OpenTelemetry SDK sets the telemetry.sdk.language resource attribute, you will not need to set the appsignal.config.language_integration attribute. If the appsignal.config.language_integration attribute is set, it will take precedence over the telemetry.sdk.language resource attribute.
  • Report log lines with unspecified severity. When a log line does not have a severity, report it as a log line with info level severity.

Fixed

  • Fix child spans not always being reported. This was due to the collector not properly traversing all the levels the trace span hierarchy.

This release can be installed through our collector packages and Docker image.

View all Collector updates

Start your free trial

Don’t let the bad bugs bite. Try AppSignal for free.

AppSignal offers a 30-day free trial, no credit card is required. All features are available in all plans. Start monitoring your application in just a few clicks!