- Ruby Custom Instrumentation
- Elixir Custom Instrumentation
- Node.js Custom Instrumentation
- Python Custom 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
. 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
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_viewundrender_partial.action_view - Rubys Net::HTTP:
request.net_http - Sidekiq:
perform_job.sidekiq - Ruby-Methodeninstrumentierung:
method_name.ClassName.otherundmethod_name.class_method.NestedClassName.ParentModule.other