Add distribution value custom metric helper. This can be used to add values to distributions in the same way as in our other integrations:
# Import the AppSignal metric helper from appsignal import add_distribution_value # The first argument is a string, the second argument a number (int/float) # add_distribution_value(metric_name, value) add_distribution_value("memory_usage", 100) add_distribution_value("memory_usage", 110) # Will create a metric "memory_usage" with the mean field value 105 # Will create a metric "memory_usage" with the count field value 2
See the Python package 1.1.1 changelog for more information.
config/appsignal.exs
file to use import Config
, rather than the deprecated use Mix.Config
.See the changelog for AppSignal for Elixir package 2.9.0 for more information.
See the Node.js 3.2.0 package changelog for more information.
See the Node.js 3.3.0 package changelog for more information.
activejob_report_errors
config option. When set to "none"
, ActiveJob jobs will no longer report errors. This can be used in combination with custom exception reporting. By default, the config option has the value "all"
, which reports all errors.See the Ruby gem 3.6.1 changelog for more information.
See the Python package 1.1.0 changelog for more information.
Add instrumentation for all Rack responses, including streaming responses. New response_body_each.rack
, response_body_call.rack
and response_body_to_ary.rack
events will be shown in the event timeline. This will show how long it takes to complete responses, depending on the response implementation.
This Sinatra route with a streaming response will be better instrumented, for example:
get "/stream" do stream do |out| sleep 1 out << "1" sleep 1 out << "2" sleep 1 out << "3" end end
Add histogram support to the OpenTelemetry HTTP server. This allows OpenTelemetry-based instrumentations to report histogram data to AppSignal as distribution metrics.
See the Ruby gem 3.6.0 changelog for more information.
This release can be installed through our standalone agent packages and as a Docker image.
This release can be installed through our standalone agent packages and as a Docker image.
This release can be installed through our standalone agent packages and as a Docker image.
We've improved a number of smaller details in the App. Here's a list of the changes we've made:
-
).active_record
, ecto
, knex
, mysql
, pg
, sequel
, psycopg2
and sql
.REQUEST_URI
as query params are not sanitize and might include PII. Now the REQUEST_PATH
is used instead.See the Ruby gem 3.5.6 changelog for more information.
appsignal
configuration file.See the Node.js 3.1.0 package changelog for more information.
This release can be installed through our standalone agent packages and as a Docker image.
Set data on spans with the custom_on_create_fun
hook. This hook is called upon the creation of every span. This can be useful to add tags to internal traces and otherwise difficult to access traces.
This won't be necessary for most scenarios. We recommend following our tagging guide instead.
defmodule MyApp.Appsignal do def custom_on_create_fun(_span) do Appsignal.Span.set_sample_data(Appsignal.Tracer.root_span, "tags", %{"locale": "en"}) end end
# config/config.exs config :appsignal, custom_on_create_fun: &MyApp.Appsignal.custom_on_create_fun/1
See the changelog for AppSignal for Elixir package 2.8.3 for more information.
redis-client
gem, which is used by the redis gem since version 5.See the Ruby gem 3.5.5 changelog for more information.
Replacing use Ecto.Repo
with use Appsignal.Ecto.Repo
allows the Ecto instrumentation to keep context across the Elixir processes spawned by Ecto preload queries, ensuring that these queries are correctly instrumented:
defmodule MyApp.Repo do # replace `use Ecto.Repo` with `use Appsignal.Ecto.Repo` use Appsignal.Ecto.Repo, otp_app: :my_app, adapter: Ecto.Adapters.Postgres end
See the changelog for AppSignal for Elixir package 2.8.2 for more information.
df --local
command fails.route
tag from HTTP server spans. Since the span will already have the route attribute as part of its name, the tag is redundant./etc/hostname
, /etc/hosts
, /etc/resolv.conf
, /snap/
or /proc/
is ignored.method
tag extracted from an incoming HTTP request span would be overriden with the method used for an outgoing HTTP request span.df
) on Alpine Linux. This host metric would report an error on Alpine Linux.This release can be installed through our standalone agent packages and as a Docker image.
See the changelog for the AppSignal CLI package 1.2.8 for more information.
We've added a feature that allows for long-term storage of log sources. Provide an S3 bucket and credentials; we'll transfer our logs to your bucket.
Long-term log storage is part of a suite of Business features that don't modify our core features but make administration and staying compliant more manageable.
So far, long-term log storage, enforcing two-factor authentication, and the ability to sign a Business Associate Agreement for HIPAA compliance are available. For pricing, please contact our Customer Success team.
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!