AppSignal agent for Elixir / Phoenix
This library collects error and performance data from your Elixir applications and sends it to AppSignal.
NOTE: This library is alpha software, and still under development. Use at your own risk. API changes might occur without notice. Please refer to the Roadmap document for more information.
Installation
-
Add
appsignalto your list of dependencies inmix.exs:
```elixir
def deps do
[{:appsignal, "~> 0.0.0"}]
end
```-
Ensure
appsignalis started before your application:
```elixir
def application do
[applications: [:appsignal]]
end
```If you use the Phoenix framework, use the
Appsignal.Phoenixmodule in yourendpoint.exfile, just before your router:use Appsignal.Phoenix
When the AppSignal OTP application starts, it looks for a valid configuration (e.g. an AppSignal push key), and start the AppSignal agent.
If it can't find a valid configuration, a warning will be logged. See the "Configuration" section below on how to fully configure the AppSignal agent.
Configuration
Sign up on AppSignal and put
the hexadecimal key in your config.exs:
config :appsignal, :config,
name: :my_first_app,
push_api_key: "your-hex-appsignal-key"Alternatively, you can configure the agent using OS environment variables:
export APPSIGNAL_APP_NAME=my_first_app
export APPSIGNAL_PUSH_API_KEY=your-hex-appsignal-keyThe full list of variables that can be configured is the following:
APPSIGNAL_ACTIVE(Elixir config key::active)APPSIGNAL_PUSH_API_KEY(Elixir config key::push_api_key)APPSIGNAL_APP_NAME(Elixir config key::name)APPSIGNAL_PUSH_API_ENDPOINT(Elixir config key::endpoint)APPSIGNAL_FRONTEND_ERROR_CATCHING_PATH(Elixir config key::frontend_error_catching_path)APPSIGNAL_DEBUG(Elixir config key::debug)APPSIGNAL_LOG_PATH(Elixir config key::log_path)APPSIGNAL_IGNORE_ERRORS(Elixir config key::ignore_errors)APPSIGNAL_IGNORE_ACTIONS(Elixir config key::ignore_actions)APPSIGNAL_HTTP_PROXY(Elixir config key::http_proxy)APPSIGNAL_RUNNING_IN_CONTAINER(Elixir config key::running_in_container)APPSIGNAL_WORKING_DIR_PATH(Elixir config key::working_dir_path)APPSIGNAL_ENABLE_HOST_METRICS(Elixir config key::enable_host_metric)