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

# Ereignisnamen

Die Instrumentierung von AppSignal erstellt Ereignisse für Codeabschnitte, die
instrumentiert werden. Diese Ereignisse werden verwendet, um die Ausführungsdauer
des Codes und die Garbage Collection einzelner Bibliotheken und Codeblöcke zu berechnen.

Durch die Instrumentierung kann AppSignal Problemstellen im Code erkennen.
Dadurch lässt sich feststellen, ob die Datenbankabfragen einer Anwendung langsam
sind oder ob ein einzelner API-Aufruf für die größte Verlangsamung einer Anfrage
verantwortlich ist.

Damit der Code präzise instrumentiert wird, folgt jeder Ereignisname einer ganz
bestimmten Benennungsmethode. Die Wahl eines guten Namens kann maßgeblich
beeinflussen, wie AppSignal die eingehenden Daten verarbeitet und darstellt.
Das Benennen von Ereignissen kann schwierig sein, aber diese kurze Erklärung,
wie ein Ereignisname verwendet wird, soll Ihnen hoffentlich bei der Wahl
eines guten Namens helfen.

Mehr zur Instrumentierung erfahren Sie in unseren Leitfäden zur eigenen Instrumentierung:

* [Ruby Custom Instrumentation](/ruby/instrumentation/instrumentation)
* [Elixir Custom Instrumentation](/elixir/instrumentation/instrumentation)
* [Node.js Custom Instrumentation](/nodejs/3.x/instrumentation/instrumentation)
* [Python Custom Instrumentation](/python/instrumentation/instrumentation)

## Ereignisgruppen

Jedes von der Instrumentierung von AppSignal erzeugte Ereignis hat einen Namen.
In diesem Namen ist auch die übergeordnete Gruppe des Ereignisses enthalten.
Dieser Gruppenname ermöglicht es AppSignal, Ereignisse aus Datenbankabfragen
und View-Rendering zusammenzufassen. Mithilfe dieser Gruppierung können wir
Übersichten erstellen, die die Ausführungszeiten pro Gruppe sowie einzelne
Ereignisse anzeigen.

Unsere Rails-Integration erstellt zum Beispiel diese Gruppen: `active_record`,
`action_view`, `action_controller` usw.

## Benennung von Ereignissen

Ein Ereignisname ist eine Zeichenkette, die aus alphanumerischen Zeichen,
Unterstrichen und Punkten besteht. Leerzeichen und Bindestriche sind nicht
zulässig. Denken Sie an folgende Regex, `([a-zA-Z0-9_.]+)`: Wird der Ereignisname
von dieser Regex akzeptiert, ist er zulässig.

Beginnen wir mit einem einfachen Ereignisnamen.

```shell Shell theme={null}
sql.active_record
^   ^
|   second part (group)
first part (action)
```

Die Aktion eines Ereignisnamens ist alles bis zum letzten Punkt `.` in einem
Schlüssel. Die Gruppe ist alles nach diesem Punkt.

Die Gruppe eines Ereignisses ist die Codebibliothek, zu der es gehört, oder
die Art der Aktion, wie z. B. eine Datenbankabfrage oder eine HTTP-Anfrage.

Das funktioniert auch mit mehreren Punkten in einem Schlüssel.

```shell Shell theme={null}
fetch.partition3.database
^                ^
|                second part (group)
first part (action)
```

Wir verwenden dieses Benennungsschema selbst für die [Ruby-Methodeninstrumentierung](/ruby/instrumentation/method-instrumentation).

Wenn ein Name mit nur einem Teil vorkommt, wird das Ereignis automatisch
unter der Gruppe `other` eingeordnet.

## Beispiele

Einige Beispiele für Schlüssel, die von AppSignal-Integrationen verwendet werden:

* ActiveRecord: `sql.active_record`
* Redis: `query.redis`
* Elasticsearch: `search.elasticsearch`
* ActionView: `render_template.action_view` und `render_partial.action_view`
* Rubys Net::HTTP: `request.net_http`
* Sidekiq: `perform_job.sidekiq`
* [Ruby-Methodeninstrumentierung](/ruby/instrumentation/method-instrumentation):
  * `method_name.ClassName.other` und
  * `method_name.class_method.NestedClassName.ParentModule.other`
