Skip to main content
Konfiguration. Wichtig, denn ohne sie weiß das AppSignal Ruby-Gem nicht, welche Anwendung es instrumentiert oder in welcher Umgebung. In diesem Thema erklären wir, wie Sie AppSignal konfigurieren, was im Ruby-Gem konfiguriert werden kann, was die minimal benötigte Konfiguration ist und wie die Konfiguration geladen wird.

Minimal erforderliche Konfiguration

Damit Anwendungen Daten an AppSignal melden, ist die folgende Konfiguration erforderlich. Alle weiteren Konfigurationen sind optional. Für Rails-Apps müssen Sie Ihren Anwendungsnamen nicht konfigurieren; AppSignal verwendet standardmäßig den Namen Ihrer Anwendung. Wenn Sie ein Framework verwenden, das Umgebungen kennt und vom AppSignal-Gem unterstützt wird, wird die Umgebung automatisch erkannt.

Konfigurationsmethoden

In unserem Ruby-Gem stehen mehrere unterschiedliche Konfigurationsmethoden zur Verfügung. Um zu sehen, in welcher Reihenfolge sie geladen werden und welche Konfigurationsmethode Werte aus anderen Quellen überschreibt, lesen Sie unsere Seite zur Ladereihenfolge der Konfiguration.

Ruby-Konfigurationsdatei

Das AppSignal Ruby-Gem kann mit einer Ruby-Konfigurationsdatei konfiguriert werden. Bei Auswahl erstellt der Installer automatisch eine config/appsignal.rb-Datei. Diese Datei enthält Standard-Konfigurationseinstellungen, die an die spezifischen Bedürfnisse Ihrer Anwendung angepasst werden können. Diese Konfigurationsdatei wird gelesen, wenn Appsignal.start aufgerufen wird, was bei den meisten unserer Integrationen automatisch geschieht. Bitte lesen Sie die Anweisungen zur Integration von AppSignal, wenn Appsignal.start nicht automatisch aufgerufen wird. Die Konfigurationsdatei konfiguriert unser Ruby-Gem mit dem Appsignal.configure-Helper. Lesen Sie den Abschnitt Der Appsignal.configure-Helper für weitere Details zur Verwendung. Die YAML-Konfigurationsdatei wird nicht gelesen, wenn diese Datei vorhanden ist.

Appsignal.configure-Helper

Der Appsignal.configure-Helper kann verwendet werden, um AppSignal mit Ruby-Code zu konfigurieren. Die Ruby-Konfigurationsdatei verwendet diesen Helper, und er kann auch direkt in Ihrer Anwendung verwendet werden. Wenn Ihre App Appsignal.configure außerhalb der config/appsignal.rb-Datei verwendet, etwa in einem Rails-Initializer, lesen Sie bitte diesen Abschnitt über die Unterschiede im Verhalten. Setzen Sie Konfigurationsoptionen innerhalb des Appsignal.configure-Blocks, indem Sie die Schreibmethoden auf dem config-Objekt aufrufen. Konfigurationsoptionen können mit dem für die Konfigurationsoption aufgeführten “Config file key” gesetzt werden. Beispielsweise kann die send_params-Option so gesetzt werden: config.send_params = false.
Lesen Sie den Rest dieses Abschnitts für weitere Details zur Funktionsweise des Appsignal.configure-Helpers und welche weiteren Helper er hat.

String-Konfigurationsoptionen

Konfigurationsoptionen vom Typ String können sowohl mit Strings als auch mit Symbols gesetzt werden. Beim Setzen wandeln wir Symbols in Strings um.

Array-Konfigurationsoptionen

Konfigurationsoptionen vom Typ Array können wie ein normales Array modifiziert werden:
  • Verwenden Sie eine Zuweisung, um Standardwerte und zuvor aus Umgebungsvariablen gelesene Werte zu überschreiben.
    • Beispiel: config.array_option = ["value 1", "value 2"]
    • Optionswert: ["value 1", "value 2"]
  • Verwenden Sie den Additionsoperator +=, um ein neues Array von Werten mit den Standardwerten und zuvor aus Umgebungsvariablen gelesenen Werten zusammenzuführen.
    • Beispiel: config.array_option += ["value 1", "value 2"]
    • Optionswert: ["DUMMY default value", "value 1", "value 2"]
  • Verwenden Sie den Anhänge-Operator <<, um einen einzelnen Wert an die Liste der Standardwerte und der zuvor aus Umgebungsvariablen gelesenen Werte anzuhängen.
    • Beispiel: config.array_option << "value 1"
    • Optionswert: ["DUMMY default value", "value 1"]

Automatische Erkennung der Umgebung

Das AppSignal Ruby-Gem erkennt die Umgebung der Anwendung automatisch. Wir integrieren uns mit Gems wie Rails, Sinatra, Rack und anderen, um zu erkennen, in welcher Umgebung die Anwendung gestartet wurde. Aus diesem Grund sollte es nicht erforderlich sein, die Umgebung manuell zu konfigurieren. Wenn Sie die Umgebung der Anwendung manuell konfigurieren müssen, übergeben Sie den Umgebungsnamen als erstes Argument an den Appsignal.configure-Helper. Dieses Argument überschreibt den Wert der Umgebungsvariable APPSIGNAL_APP_ENV und die automatische Umgebungserkennung.

activate_if_environment-Helper

Der Appsignal.configure-Helper hat einen Helper, mit dem Sie konfigurieren können, welche Umgebungen aktiv sein und Daten an AppSignal.com melden sollen. Rufen Sie activate_if_environment mit einer Liste von Umgebungen auf (Strings und/oder Symbols). AppSignal erkennt die Umgebung, wenn der Appsignal.configure-Helper ohne Umgebungsargument aufgerufen wird. Es prüft dann, ob die Umgebung mit einem der angegebenen Werte übereinstimmt, und setzt in diesem Fall die active-Konfigurationsoption auf true.
Der activate_if_environment-Helper ist ein Komfort-Helper, damit Anwendungen keine eigenen Prüfungen hinzufügen müssen, wann AppSignal aktiv sein soll, wie:

env?-Helper

Der Appsignal.configure-Helper hat einen Helper, um zu prüfen, welche Umgebung AppSignal erkannt hat. Verwenden Sie diesen Helper, um zu prüfen, welche Umgebung aktiv ist, und um Konfigurationsoptionen zu setzen, die nur für diese Umgebung gelten sollen. Rufen Sie den env?-Helper mit einem Umgebungsnamen (String oder Symbol) auf, und er gibt true zurück, wenn der Umgebungsname mit der aktuell aktiven Umgebung übereinstimmt.

Verwendung des Appsignal.configure-Helpers in Ihrer Anwendung

Wir empfehlen, das AppSignal Ruby-Gem mit der Ruby-Konfigurationsdatei unter config/appsignal.rb zu konfigurieren. Falls ein Rails-Initializer oder eine Inline-Konfiguration bevorzugt wird, lesen Sie bitte diesen Abschnitt zu den daraus resultierenden Verhaltensänderungen. Wenn der Appsignal.configure-Helper aufgerufen wird, bevor die config/appsignal.rb Ruby-Konfigurationsdatei beim Aufruf von Appsignal.start gelesen wird, wird die Ruby-Konfigurationsdatei nicht gelesen. In Rails-Apps stellen Sie sicher, dass Sie das AppSignal-Gem so konfigurieren, dass es nach der Initialisierung von Rails startet, da andernfalls die mit Appsignal.configure gesetzte Konfiguration ignoriert wird, wenn sie in einem Rails-Initializer wie config/initializers/appsignal.rb aufgerufen wird.
In Ruby-Gem-Version 3.12 und neuer wird, wenn eine YAML-Konfigurationsdatei vorhanden ist, diese gelesen, wenn Appsignal.configure in einem Rails-Initializer oder inline in einer Anwendung aufgerufen wird. Dies ist veraltetes Verhalten. Bitte verschieben Sie die gesamte Konfiguration in den Appsignal.configure-Helper.Wir werden dieses Verhalten in der nächsten Major-Version des Ruby-Gems entfernen.
Beispiel für einen Rails-Initializer:
Beispiel für eine Inline-Konfiguration:

System-Umgebungsvariablen

AppSignal kann auch mit System-Umgebungsvariablen auf dem Host konfiguriert werden, auf dem die von AppSignal überwachte Anwendung läuft. Dies ist auf Plattformen wie Heroku üblich. Stellen Sie sicher, dass diese Umgebungsvariablen so konfiguriert sind, dass sie mit Ihrem Betriebssystem kompatibel sind, und dass die Werte geladen werden, bevor Ihre App mit AppSignal gestartet wird.

YAML-Konfigurationsdatei

Diese Konfigurationsmethode ist eine Legacy-Methode und wird in der nächsten Major-Version des Ruby-Gems entfernt.Bitte verwenden Sie stattdessen die Ruby-Konfigurationsdatei.
Das AppSignal Ruby-Gem kann mit einer YAML-Konfigurationsdatei konfiguriert werden. Während der Installation erstellt das Ruby-Gem (falls ausgewählt) eine config/appsignal.yml-Datei. In dieser Datei wird eine Standardkonfiguration bereitgestellt, die an die Bedürfnisse Ihrer Anwendung angepasst werden kann. Diese config/appsignal.yml-Datei unterstützt ERB-Tags, sodass auch System-Umgebungsvariablen in dieser Datei geladen werden können. Die für Konfigurationsoptionen gezeigten config/appsignal.yml-Konfigurationsbeispiele verwenden den YAML-Anker default. Der AppSignal-Installer erstellt standardmäßig eine config/appsignal.yml-Datei mit diesem Anker. Falls nicht vorhanden, stellen Sie sicher, dass Sie die Konfigurationsoption zur korrekten Umgebung hinzufügen.

Mehrere App-Umgebungen

In dieser Datei können mehrere App-Umgebungen mit Schlüsseln auf Stammebene konfiguriert werden.
Um die Konfiguration nicht für jede App-Umgebung wiederholen zu müssen, können wir YAML-Anker verwenden, um YAML-Objekte zu erweitern.
Es ist nicht möglich, nur einen defaults-Anker zu konfigurieren und ihn automatisch auf alle Umgebungen anwenden zu lassen. Jede Umgebung muss in der YAML-Datei mit einem Schlüssel auf Stammebene konfiguriert werden und von diesem defaults-Anker erben.

Beispiel einer YAML-Konfigurationsdatei

Hier ist ein Beispiel für eine appsignal.yml-Konfigurationsdatei. Es wird empfohlen, dass Sie nur die Konfiguration zu Ihrer Konfigurationsdatei hinzufügen, die Sie tatsächlich benötigen. Die vollständige Liste der Optionen finden Sie auf der Seite Konfigurationsoptionen.