| Typ | Am besten geeignet für | Beispiel-Anwendungsfall |
|---|---|---|
| Gauge | Absolute Werte, die sich über die Zeit ändern | Aktive Nutzer, Datenbankgröße, Speicherplatznutzung |
| Measurement | Bereiche und Verteilungen von Werten | Antwortzeiten, Job-Dauern, Warenkorbwerte |
| Counter | Vorkommen über die Zeit zählen | Erstellte Rechnungen, Logins, ausgelöste Fehler |
Gauge
Ein Gauge zeichnet einen Wert zu einem bestimmten Zeitpunkt auf. Wenn Sie mehrere Gauges mit demselben Schlüssel innerhalb desselben Zeitfensters melden, wird nur der letzte Wert gespeichert. Verwenden Sie Gauges, wenn Sie den aktuellen Zustand von etwas wissen möchten – die Anzahl der gerade existierenden Elemente oder die aktuelle Größe einer Ressource. Alle AppSignal-Host-Metriken werden als Gauges gespeichert. Gauges werden häufig mit minütlichen Probes verwendet, um regelmäßig einen Snapshot-Wert zu melden, etwa um jede Minute die Anzahl der kürzlich aktiven Warenkörbe oder offenen Datenbankverbindungen abzufragen. Beispiele: Anzahl aktiver Nutzer, Datenbankgröße, Speicherplatznutzung, Anzahl offener Verbindungen.Measurement
Ein Measurement verfolgt eine Verteilung von Werten über die Zeit. AppSignal speichert für jedes Zeitfenster den Durchschnitt und die Anzahl, sodass Sie Dinge wie durchschnittliche Dauer, 90. / 95. Perzentil und Durchsatz grafisch darstellen können. Verwenden Sie Measurements, wenn Sie einen Wert aufzeichnen, der über einzelne Ereignisse hinweg variiert, und Sie dessen Verteilung verstehen möchten – nicht nur seinen aktuellen Wert. Beispielsweise können Sie die Dauer eines kritischen Hintergrund-Jobs (etwa Bestellbestätigungs-E-Mails) verfolgen, um Verlangsamungen zu erkennen, bevor sie Ihre Nutzer beeinträchtigen. Eine Measurement-Metrik erstellt mehrere Metrik-Felder:- Count: wie oft der Helper aufgerufen wurde. Nützlich für Durchsatz-Diagramme.
- Mean: der durchschnittliche Metrik-Wert für den Zeitpunkt.
- 90. Perzentil: das 90. Perzentil des Metrik-Werts für den Zeitpunkt.
- 95. Perzentil: das 95. Perzentil des Metrik-Werts für den Zeitpunkt.
Counter
Ein Counter akkumuliert eine Gesamtsumme über ein Zeitfenster. Counter-Werte werden für jede Auflösung summiert – bei minütlicher Auflösung zeigt er also die Summe für diese Minute, und bei stündlicher Auflösung die Summe für diese Stunde. Verwenden Sie Counter, wenn Sie verfolgen möchten, wie oft etwas passiert ist, nicht welchen Wert es hatte. Counter sind besonders nützlich, um die Häufigkeit geschäftskritischer Ereignisse zu überwachen. Indem Sie beispielsweise sowohl aufgegebene Bestellungen als auch erstellte Rechnungen verfolgen, können Sie sicherstellen, dass diese zusammenhängenden Counter synchron bleiben, und Abweichungen frühzeitig erkennen. Wenn der Helper mehrfach aufgerufen wird, wird die Summe aller Aufrufe gespeichert. Counter sind nicht monoton: Sowohl positive als auch negative Werte werden unterstützt, sodass Sie denselben Counter erhöhen und verringern können. Für monotone Counter aus anderen Systemen gibt es keine Validierung, dass die Counter-Werte nur jemals steigen. Beispiele: aufgegebene Bestellungen, erstellte Rechnungen, Nutzer-Logins, in die Warteschlange gestellte Hintergrund-Jobs, fehlgeschlagene Zahlungsversuche.Benennung von Metriken
Wir empfehlen, Ihre Metriken so zu benennen, dass sie leicht erkennbar sind. Obwohl Sie Teile des Metrik-Namens für die Dashboard-Erstellung mit Wildcards versehen können, empfehlen wir, dies nur für kleine Gruppierungen zu verwenden und keine IDs in Metrik-Namen einzubauen. Metrik-Namen unterstützen nur Zahlen, Buchstaben, Punkte und Unterstriche ([a-z0-9._]) als gültige Zeichen. Alle anderen Zeichen werden von unserem Prozessor durch einen Unterstrich ersetzt. Die Liste der verarbeiteten Metriken finden Sie auf der Seite „Add Dashboard”.
Einige Beispiele für gute Metrik-Namen sind:
database_sizeaccount_countusers.countnotifier.failednotifier.performnotifier.success
Metrik-Werte
Metriken unterstützen nur Zahlen als gültige Werte. Jeder andere Wert wird stillschweigend ignoriert oder löst einen Fehler aus, wie er vom Zahlen-Parser der jeweiligen Implementierungssprache erzeugt wird. Für Ruby und Elixir unterstützen wir Double und Integer als gültige Werte:number ein gültiger Wert.
Wertformatierung
AppSignal-Diagramme bieten verschiedene Anzeigeformate, etwa Zahlen, Dateigrößen, Dauern usw. Diese Formate helfen dabei, die Metrik-Werte in einer lesbaren Form darzustellen. Die Auswahl eines Wert-Formatierers wirkt sich nicht auf die in unseren Systemen gespeicherten Daten aus, sondern nur auf deren Anzeige. Um Metrik-Werte mit diesen Formatierern korrekt anzuzeigen, prüfen Sie bitte in der Tabelle unten, wie der Wert gemeldet werden sollte.| Formatierer | Gemeldeter Wert | Beschreibung |
|---|---|---|
| Number | Anzeige-Wert | Eine menschenlesbar formatierte Zahl. Die Werte sollten auf derselben Skala gemeldet werden, wie sie angezeigt werden. Der Wert 1 wird als „1” angezeigt, 10_000 als „10 K” und 1_000_000 wird als „1 M” angezeigt. |
| Percentage | Anzeige-Wert | Ein Metrik-Wert, der als Prozentsatz formatiert ist. Die Werte sollten auf derselben Skala gemeldet werden, wie sie angezeigt werden. Der Wert 40 wird als „40 %” angezeigt. |
| Throughput | Anzeige-Wert | Ein Metrik-Wert, der als Anfragen pro Minute/Stunde formatiert ist. Die Werte sollten auf derselben Skala gemeldet werden, wie sie angezeigt werden. Der Durchsatz wird sowohl für die Minute als auch für die Stunde als Zahl formatiert angezeigt. Der Wert 10_000 wird als „10k / hour 166 / min” angezeigt. Üblicherweise verwendet für counter-Metriken. |
| Duration | Millisekunden | Eine Zeitdauer. Die Werte sollten als Millisekunden gemeldet werden. Der Wert 100 wird als „100 ms” und 60_000 als „60 sec” angezeigt. Üblicherweise verwendet für measurement-Metriken. |
| File size | Anpassbar | Eine Dateigröße, die standardmäßig als Megabyte formatiert ist. 1.0 Megabyte wird als 1Mb angezeigt. Welche Dateigrößen-Einheit der gemeldete Metrik-Wert hat, kann im Diagramm-Builder angepasst werden. |
Dateigröße
Metrik-Werte, die eine Dateigröße darstellen, können den Dateigrößen-Formatierer verwenden. Um anzugeben, in welcher Größeneinheit der gemeldete Wert vorliegt, erlaubt der Dateigrößen-Formatierer mehrere Eingabewerte. Die verfügbaren Optionen sind:Size in BitSize in BytesSize in KilobitsSize in KilobytesSize in Megabytes
Size in Bitrendert „128 Bytes”Size in Bytesrendert „1 KB”Size in Kilobitsrendert „128 KB”Size in Kilobytesrendert „1 MB”Size in Megabytesrendert „1 GB”
Metrik-Tags
Eine einzelne Metrik kann aus verschiedenen Datengruppen bestehen; beispielsweise könnte eine benutzerdefinierte Metrik „total_orders” aus offenen und verarbeiteten Bestellungen bestehen. Sie können einer Metrik mehrere Tags hinzufügen, um tiefere Einblicke in die von AppSignal gemeldeten Metrik-Daten zu erhalten. Jeder Tag wird durch eine eigene Linie in einem AppSignal-Diagramm dargestellt. Standardmäßig setzen die AppSignal-Metrik-Helper keine Tags auf benutzerdefinierte Metriken. So können Sie Tags in AppSignal-Diagrammen verwenden: Tags können eine Linie in der Diagramm-Legende „beschriften”, sodass leichter erkennbar ist, was jede Linie darstellt, wenn Sie mit der Maus darüberfahren. Das Filtern nach Tags kann dieselbe Metrik in verschiedenen Kontexten in verschiedenen Diagrammen darstellen. Um das Beste aus Metrik-Tags herauszuholen, empfehlen wir Folgendes:- Seien Sie konsistent beim Tagging: Für eine optimale Nachverfolgung und Lesbarkeit der Diagramme raten wir davon ab, eine benutzerdefinierte Metrik sowohl mit als auch ohne Tags zu melden. Das Melden derselben Metrik auf verschiedene Arten kann zu Verwirrung führen und die genaue Interpretation der Daten erschweren.
- Verwenden Sie immer dieselben Metrik-Tags: Wir empfehlen, immer dieselbe Tag-Kombination zu verwenden, wenn Sie eine Metrik melden. Wenn eine Metrik beispielsweise in einem Bereich Ihrer App die Tags A und B verwendet, sollte sie diese in allen Bereichen verwenden. Vermeiden Sie es, die Tags zu ändern, da konsistentes Tagging das Erstellen von Diagrammen erleichtert.
- Verwenden Sie einen begrenzten Wertebereich für Metrik-Tags: Um übermäßig komplexe oder unleserliche Diagramme zu vermeiden, empfehlen wir, für Ihre benutzerdefinierten Metriken einen begrenzten Bereich von Tags zu verwenden, etwa Regionen (EU, US und Asien). Sie können eine umfassendere Analyse der Metrik-Daten Ihrer App durchführen, wenn Sie für alle Metrik-Daten Ihrer App einen begrenzten und präzisen Bereich von Tags verwenden.
Metrik mit und ohne Tags rendern
Wenn Sie eine benutzerdefinierte Metrik erstellt haben und ihr mehrere Tags zugeordnet sind, können Sie die Metrik gleichzeitig mit und ohne den Tag in einem Diagramm rendern.Grafische Darstellung benutzerdefinierter Metriken
Sobald Sie mit dem Aufzeichnen benutzerdefinierter Metriken begonnen haben, können Sie sie mit dem Graph Builder in benutzerdefinierten Diagrammen verfolgen. Navigieren Sie zu einem bestehenden Dashboard oder verwenden Sie die Schaltfläche „Add dashboard” in der Dashboard-Navigation, um ein neues zu erstellen, und klicken Sie dann auf „Add graph”.