> ## 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.

# Installatie van OpenTelemetry Elixir

Zorg ervoor dat u [de AppSignal collector installeert](/opentelemetry/installation) voordat u verdergaat met deze instructies.

## Installeer de OpenTelemetry-pakketten

Voeg de OpenTelemetry SDK en de OTLP-exporter toe aan de dependencies van uw applicatie:

<CodeGroup>
  ```elixir Elixir theme={null}
  def deps do
    [
      # andere dependencies...
      {:opentelemetry, "~> 1.3"},
      {:opentelemetry_api, "~> 1.2"},
      {:opentelemetry_exporter, "~> 1.6"},
    ]
  end
  ```
</CodeGroup>

Voeg ook de OpenTelemetry-instrumentatiepakketten toe voor de libraries en frameworks die uw applicatie gebruikt. Bijvoorbeeld, als u Phoenix gebruikt:

<CodeGroup>
  ```elixir Elixir theme={null}
  def deps do
    [
      # andere dependencies...
      {:opentelemetry_phoenix, "~> 1.1"},
      {:opentelemetry_cowboy, "~> 0.2"},
      {:opentelemetry_ecto, "~> 1.2"}
    ]
  end
  ```
</CodeGroup>

Voor andere libraries en frameworks kunt u [OpenTelemetry-instrumentatiepakketten vinden in het OpenTelemetry-register](https://opentelemetry.io/ecosystem/registry/?s=\&component=instrumentation\&language=elixir\&flag=all).

## Configureer OpenTelemetry in uw applicatie

Werk het bestand `config/config.exs` in uw applicatie bij met de OpenTelemetry-exporter en AppSignal-configuratie.

Zorg ervoor dat u de onderstaande waarden bijwerkt met de naam, omgeving en push API-sleutel van uw AppSignal-applicatie, en vervang het exporter-endpoint zo nodig door het adres van uw AppSignal collector.

<CodeGroup>
  ```elixir Elixir theme={null}
  # Vervang deze waarden door de naam, omgeving (automatisch gedetecteerd via Mix)
  # en push API-sleutel van uw AppSignal-applicatie. Deze worden gebruikt door de
  # onderstaande resource-attributenconfiguratie.
  name = "My app"
  push_api_key = "0000-0000-0000-0000"

  environment = if Kernel.function_exported?(Mix, :env, 0) do
    to_string(Mix.env())
  else
    "development"
  end

  # Stel de naam in van de service die wordt gemonitord. Een veelgebruikte keuze is de
  # naam van het gebruikte framework. Deze wordt gebruikt om traces en metrieken in AppSignal te groeperen.
  service_name = "My service name"

  # Vervang `http://localhost:8099` door het adres van uw AppSignal collector
  # als deze op een andere host draait.
  endpoint = "http://localhost:8099"

  {:ok, hostname} = :inet.gethostname()
  {revision, _exitcode} = System.cmd("git", ["log", "--pretty=format:%h", "-n 1"])

  config :opentelemetry,
    span_processor: :batch,
    traces_exporter: :otlp,
    resource: [
      {"appsignal.config.name", name},
      {"appsignal.config.environment", environment},
      {"appsignal.config.push_api_key", push_api_key},
      {"appsignal.config.revision", revision},
      {"appsignal.config.language_integration", "elixir"},
      {"appsignal.config.app_path", File.cwd!()},
      {"host.name", hostname},
      {"service.name", service_name}
    ]

  config :opentelemetry_exporter,
    otlp_protocol: :http_protobuf,
    otlp_endpoint: endpoint
  ```
</CodeGroup>

## Test de app!

Nu alle componenten zijn verbonden, start u uw app en test u of er gegevens binnenkomen in AppSignal. Controleer specifiek de pagina's ["Errors > Issue list"](https://appsignal.com/redirect-to/app?to=exceptions) en ["Performance > Traces"](https://appsignal.com/redirect-to/app?to=performance/traces).

Als u na het volgen van onze installatie-instructies nog steeds geen gegevens ziet in AppSignal, [laat het ons weten](mailto:support@appsignal.com?subject=OpenTelemetry%20issue) en wij helpen u uw OpenTelemetry-installatie te voltooien!
