> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AppSignal für Elixir Ladereihenfolge

AppSignal für Elixir kann auf verschiedene Arten konfiguriert werden. Über die
Mix-Konfiguration oder über Umgebungsvariablen.

Die Konfiguration wird in einem vierstufigen Prozess geladen. Beginnend mit den
Paket-Standardwerten und endend mit dem Lesen von Umgebungsvariablen. Die
Konfigurationsoptionen können kombiniert werden, ohne die Konfiguration aus einer
anderen Option zu verlieren. Die Verwendung eines Initialisierers, einer
Konfigurationsdatei und Umgebungsvariablen zusammen funktioniert.

## Ladereihenfolge

* 1. [Paket-Standardwerte – `default`](#1-package-defaults)
* 2. [Systemerkannte Einstellungen – `system`](#2-system-detected-settings)
* 3. [Mix-App-Konfigurationsdatei – `file`](#3-mix-configuration)
* 4. [Umgebungsvariablen – `env`](#4-environment-variables)
* 5. [Overrides – `override`](#5-overrides)

## 1. Paket-Standardwerte

Das AppSignal-Paket beginnt mit dem Laden seiner Standardkonfiguration, indem es
Pfade festlegt und bestimmte Funktionen aktiviert.

Die Standardwerte des Agents finden Sie in der [Dokumentation der Konfigurationsoptionen](/elixir/configuration/options).

Diese Quelle wird in der [diagnose](/elixir/command-line/diagnose)-Ausgabe als `default` aufgeführt.

## 2. Systemerkannte Einstellungen

Das Paket erkennt, auf welcher Art von System es läuft, und konfiguriert sich
entsprechend.

Wenn es z. B. auf Heroku läuft, setzt es die Konfigurationsoption
`:running_in_container` auf `true` und `:log` auf `"stdout"`.

Diese Quelle wird in der [diagnose](/elixir/command-line/diagnose)-Ausgabe als `system` aufgeführt.

## 3. Mix-Konfiguration

Das AppSignal-Paket wird am häufigsten mit einer Konfiguration in der
Mix-Konfigurationsdatei konfiguriert.

<CodeGroup>
  ```elixir Elixir theme={null}
  # config/config.exs
  # or config/prod.exs
  config :appsignal, :config,
    otp_app: :appsignal_phoenix_example,
    name: "AppsignalPhoenixExample",
    push_api_key: "your-push-api-key",
    env: Mix.env,
    active: true
  ```
</CodeGroup>

Dieser Schritt überschreibt alle angegebenen Optionen aus den Standardwerten
oder der systemerkannten Konfiguration.

Diese Quelle wird in der [diagnose](/elixir/command-line/diagnose)-Ausgabe als `file` aufgeführt.

## 4. Umgebungsvariablen

Unsere Integration sucht in Umgebungsvariablen nach ihrer Konfiguration.
Wenn diese gefunden werden, überschreiben sie alle in den vorherigen Schritten
angegebenen Konfigurationsoptionen.

<CodeGroup>
  ```bash Bash theme={null}
  export APPSIGNAL_APP_NAME="AppsignalPhoenixExample"
  # start your app here
  ```
</CodeGroup>

Diese Quelle wird in der [diagnose](/elixir/command-line/diagnose)-Ausgabe als `env` aufgeführt.

## 5. Overrides

Wenn die gesamte Konfiguration bekannt ist, führt unsere Integration eine letzte Prüfung durch, um festzustellen, ob die Konfiguration sich nicht widerspricht oder ob einige Standardkonfigurationsoptionen nicht gesetzt sind.

Die Konfigurationsquelle "override" enthält die letzten Konfigurationsänderungen, die von der Integration vorgenommen wurden. Wenn ein Wert einer Konfigurationsoption überschrieben wird, ist dieser Wert maßgebend.

Zum Beispiel haben wir irgendwann die Option `skip_session_data` zugunsten der Option `send_session_data` als veraltet markiert. Wenn die Konfigurationsoption `skip_session_data` von der App konfiguriert wurde, `send_session_data` jedoch nicht, würde die Integration den Wert von `skip_session_data` verwenden, um den Wert der Konfigurationsoption `send_session_data` festzulegen.
