Elixir Agent FAQ

Heroku

Scout runs on Heroku without any special configuration. When Scout detects that an app is being served via Heroku:

Configuration

Scout can be configured via environment variables. This means you can use heroku config:set to configure the agent. For example, you can set the application name that appears in the Scout UI with:

heroku config:set SCOUT_NAME='My Heroku App'

See the configuration section for more information on the available config settings and environment variable functionality.

Using the Scout Heroku Add-on

Scout is also available as a Heroku Add-on. The add-on automates setting the proper Heroku config variables during the provisioning process.

Adding the Database Addon

To get more insights into how your database is performing, check out our Database Addon.

Docker

Scout runs within Docker containers without any special configuration.

However, it may be easier to dockerize the core-agent. We suggest using our Docker image for this.

Transactions

What is a transaction

A transaction is anytime that you application handles a request or runs a background job. To get a better understanding of your transaction volume, visit your usage page for more info

Ignoring Transactions

Note: When a transaction is ignored, we will not collect metric data or traces for the request. When ignoring transactions and using sampling, data may be skewed and important traces may be missed.

There are a couple of approaches to ignore web requests and background jobs you don’t care to instrument. These approaches are listed below.

By the web endpoint path name

You can ignore requests to web endpoints that match specific paths (like /health_check). See the ignore setting in the configuration options.

In your code

To selectively ignore a web request or background job in your code, add the following within the transaction:

ScoutApm.TrackedRequest.ignore()