Skip to content

Tags: appsignal/appsignal-ruby

Tags

v4.6.0

Toggle v4.6.0's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Added

- Add Sorbet and RBS type signatures for the gem's public APIs. If your editor supports showing type signatures, they will now show up in for the AppSignal Ruby gem.
- When a deployment tool (Capistrano, Hatchbox.io) provides the `REVISION` file in the deployed application, AppSignal will now use that to set the revision config.

## Changed

- Improve the YARD documentation for public APIs. This will make the documentation clearer and more useful for developers using the Ruby gem. Private APIs have been hidden from the generated output.
- When an error occurs while initializing AppSignal or when running a probe, use the error log level to log the error's backtrace.

## Fixed

- When a Hash-like value (such as `ActiveSupport::HashWithIndifferentAccess` or `Sinatra::IndifferentHash`) is passed to a transaction helper (such as `add_params`, `add_session_data`, ...) it is now converted to a Ruby `Hash` before setting it as the value or merging it with the existing value. This allows Hash-like objects to be merged, instead of logging a warning and only storing the new value.

  ```ruby
  # Example scenario
  Appsignal.add_params(:key1 => { :abc => "value" })
  Appsignal.add_params(ActiveSupport::HashWithIndifferentAccess.new(:key2 => { :def => "value" }))

  # Params
  {
    :key1 => { :abc => "value" },
    # Keys from HashWithIndifferentAccess are stored as Strings
    "key2" => { "def" => "value" }
  }
  ```

v4.5.17

Toggle v4.5.17's commit message

## Fixed

- When an `Appsignal::Logger` uses `.broadcast_to` to broadcast messages to other loggers, broadcast those messages even if the log level of those messages is lower than the logger's threshold. This allows other loggers to set their own logging thresholds.

  When the logger is silenced, messages below the silencing threshold are *not* broadcasted to other loggers.
- When an `Appsignal::Logger` uses `.broadcast_to` to broadcast messages to other loggers, broadcast the original message received by the logger, without formatting it or converting it to a string.
- Call the `Appsignal::Logger` formatter with the original message object given, rather than converting it to a string before calling the formatter.
- When an error is passed to an `Appsignal::Logger` as the message, format it regardless of the logging level. Previously it would only be formatted when passed to `#error`.
- Ignore `Errno::ECONNRESET` errors in the Rack wrapper.

v4.5.16

Toggle v4.5.16's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Changed

- Log the error's backtrace on extension download failure. This will help us debug issues related to downloading the extension.

## Fixed

- Fix non-canonical rendering event paths for Capistrano deployments

v4.5.15

Toggle v4.5.15's commit message

## Added

- Add `nginx_port` configuration option. This configuration option can be used to customize the port on which the AppSignal integration exposes [the NGINX metrics server](https://docs.appsignal.com/metrics/nginx.html).

v4.5.14

Toggle v4.5.14's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Fixed

- Resolve problems with transactions not being properly closed when using libraries that change Fibers during the transactions. Previously, completed transactions would be attempted to be reused when creating a transaction, when the Fiber would be switched during a transaction.
- Fix a config error log message when the config is not active and should not validate the config.

v4.5.13

Toggle v4.5.13's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Fixed

- Fix the C extension function definitions. On install, the Ruby gem extension would print warnings or fail to compile.

v4.5.12

Toggle v4.5.12's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Added

- Report the Active Job queue time as the `active_job_queue_time` metric. This metric can be used to track the queue time per Active Job queue.

v4.5.11

Toggle v4.5.11's commit message

## Changed

- Log a debug message when the reported error is ignored by the `ignore_errors` config option.

v4.5.10

Toggle v4.5.10's commit message

## Changed

- Remove redundant cron check-in pairs. When more than one pair of start and finish cron check-in events is reported for the same identifier in the same period, only one of them will be reported to AppSignal.

v4.5.9

Toggle v4.5.9's commit message

Unverified

This tag is not signed, but one or more authors requires that any tag attributed to them is signed.

## Fixed

- Ensure request transactions are always closed in the `Rack::EventHandler`. A problem with Fibers changing during a request would cause transactions transactions to be left open and the data from requests to not be sent to our servers.