Schwellenwerte & Alarme


Thresholds sind, wie Sie mit Bencher Leistungsregressionen erkennen. Ein Threshold wird einer eindeutigen Kombination von: Branch, Testbed, und Measure zugewiesen. Ein Threshold verwendet einen spezifischen Test, um Leistungsregressionen zu erkennen. Die Kombination eines Tests und seiner Parameter wird als Modell bezeichnet. Ein Modell muss eine Untergrenze, eine Obergrenze oder beides haben.

  • Untergrenze
    • Eine Untergrenze wird verwendet, wenn ein kleinerer Wert auf eine Leistungsregression hindeuten würde, wie zum Beispiel bei der Durchsatz-Messung.
  • Obergrenze
    • Eine Obergrenze wird verwendet, wenn ein größerer Wert auf eine Leistungsregression hindeuten würde, wie zum Beispiel bei der Latenz-Messung.

Jede Grenze wird verwendet, um ein Grenzwert zu berechnen. Dann wird jede neue Metrik gegen jede Grenze überprüft. Ein Alarm wird ausgelöst, wenn eine neue Metrik unterhalb eines unteren Grenzwertes oder oberhalb eines oberen Grenzwertes liegt.

Bei der [kontinuierlichen Benchmarking], also dem Benchmarking in CI, sollten Sie Thresholds erstellen. Mit dem bencher run CLI-Subkommando geben Sie bereits mit der --branch Option einen Branch und mit der --testbed Option ein Testbed an. Die einzige weitere Dimension, die Sie angeben müssen, ist ein Measure, mit der --threshold-measure Option. Dann können Sie die --threshold-test Option verwenden, um den Test für dieses Measure anzugeben. Die --threshold-min-sample-size, --threshold-max-sample-size und --threshold-window Optionen ermöglichen es Ihnen, zu steuern, welche Daten vom Test verwendet werden. Schließlich ermöglichen die Optionen --threshold-lower-boundary und --threshold-upper-boundary es Ihnen, die Untergrenze und die Obergrenze festzulegen. Wenn Sie alle nicht spezifizierten Modelle entfernen möchten, können Sie dies mit dem --thresholds-reset Flag tun.

  • Wenn der Threshold nicht existiert, wird er für Sie erstellt.
  • Wenn der Threshold existiert und das angegebene Modell dasselbe ist, wird das Modell ignoriert.
  • Wenn der Threshold existiert und das angegebene Modell anders ist, wird ein neues Modell für den Threshold erstellt.
  • Wenn ein Threshold existiert und er zurückgesetzt wird, wird das aktuelle Modell aus dem Threshold entfernt.

Zum Beispiel, um nur einen Threshold für die Latenz-Messung zu verwenden mit einem Student’s t-test Test mit einer maximalen Stichprobengröße von 64 und einer Obergrenze von 0,99, könnten Sie so etwas schreiben:

Terminal window
bencher run \
--project save-walter-white-1234abcd \
--branch main \
--testbed localhost \
--threshold-measure latency \
--threshold-test t_test \
--threshold-max-sample-size 64 \
--threshold-upper-boundary 0.99 \
--thresholds-reset \
--err \
--adapter json \
bencher mock

🐰 Wenn Sie mit Feature-Branches arbeiten, möchten Sie möglicherweise die bestehenden Thresholds vom Basis-, Startpunkt Branch kopieren. Dies ist möglich mit dem --start-point-clone-thresholds Flag. Beachten Sie, dass das --thresholds-reset Flag weiterhin alle geklonten Thresholds entfernt, die nicht explizit angegeben sind.

Mehrere Schwellenwerte

Es ist möglich, mehrere Schwellenwerte mit demselben bencher run Aufruf zu erstellen. Wenn Sie mehrere Schwellenwerte angeben, müssen für jeden Schwellenwert dieselben Optionen verwendet werden. Um eine Option für einen spezifischen Schwellenwert zu ignorieren, verwenden Sie einen Unterstrich (_).

Zum Beispiel, wenn Sie nur zwei Schwellenwerte verwenden möchten, einen für die Latenzmessung und einen für die Durchsatzmessung, dann möchten Sie wahrscheinlich eine Obergrenze für die Latenzmessung und eine Untergrenze für die Durchsatzmessung festlegen. Daher würden Sie --threshold-lower-boundary _ für die Latenzmessung und --threshold-upper-boundary _ für die Durchsatzmessung verwenden. Sie könnten so etwas schreiben:

Terminal window
bencher run \
--project save-walter-white-1234abcd \
--branch main \
--testbed localhost \
--threshold-measure latency \
--threshold-test t_test \
--threshold-max-sample-size 64 \
--threshold-lower-boundary _ \
--threshold-upper-boundary 0.99 \
--threshold-measure throughput \
--threshold-test t_test \
--threshold-max-sample-size 64 \
--threshold-lower-boundary 0.99 \
--threshold-upper-boundary _ \
--thresholds-reset \
--err \
--adapter json \
bencher mock --measure latency --measure throughput

--threshold-measure <MEASURE>


Verwenden Sie den angegebenen Measure-Namen, Slug oder UUID für einen Threshold. Wenn der angegebene Wert ein Name oder Slug ist und die Measure noch nicht existiert, wird sie für Sie erstellt. Wenn der angegebene Wert jedoch eine UUID ist, muss die Measure bereits existieren.

Beispielsweise könnten Sie, um einen Schwellenwert für die Latenz-Messung zu verwenden, --threshold-measure latency schreiben.

--threshold-test <TEST>


Verwenden Sie den angegebenen Test, um Leistungsregressionen zu erkennen.

Es stehen mehrere verschiedene Tests zur Verfügung:

Zum Beispiel, um ein Schwellenwert mit einem Student’s t-test zu verwenden, könnten Sie --threshold-test t_test schreiben.

Prozentsatz

Ein Prozentsatztest (percentage) ist der einfachste statistische Test. Wenn eine neue Metrik unter einem bestimmten Prozentsatz des Mittels (untere Grenze) oder über einem bestimmten Prozentsatz des Mittels (obere Grenze) Ihrer historischen Metriken liegt, wird eine Warnung generiert. Es muss entweder eine untere Grenze, eine obere Grenze oder beides festgelegt werden. Prozentsatztests eignen sich am besten, wenn der Wert der Metrik innerhalb eines bekannten guten Bereichs bleiben sollte.

  • Prozentsatz Untere Grenze

    • Eine untere Grenze eines Prozentsatztests kann in Dezimalform jeder Prozentsatz größer oder gleich null sein (z. B.: verwenden Sie 0.10 für 10%). Sie wird verwendet, wenn ein kleinerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Ein Beispiel: Wenn Sie einen Prozentsatztest mit einer unteren Grenze von 0.10 hätten und Ihre historischen Metriken einen Mittelwert von 100 hätten, würde das untere Grenzlager 90 betragen, und jeder Wert unter 90 würde eine Warnung generieren.
  • Prozentsatz Obere Grenze

    • Eine obere Grenze eines Prozentsatztests kann in Dezimalform jeder Prozentsatz größer oder gleich null sein (z. B.: verwenden Sie 0.10 für 10%). Sie wird verwendet, wenn ein größerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Ein Beispiel: Wenn Sie einen Prozentsatztest mit einer oberen Grenze von 0.10 hätten und Ihre historischen Metriken einen Mittelwert von 100 hätten, würde das obere Grenzlager 110 betragen, und jeder Wert über 110 würde eine Warnung generieren.

z-score

Ein z-score Test (z_score) misst die Anzahl der Standardabweichungen (σ), die eine neue Metrik vom Mittelwert Ihrer historischen Metriken mithilfe eines z-score entfernt ist.

z-score Tests funktionieren am besten, wenn:

  • Es keine extremen Unterschiede zwischen Benchmark-Durchläufen gibt
  • Benchmark-Durchläufe völlig unabhängig voneinander sind
  • Die Anzahl der Iterationen für einen einzelnen Benchmark-Durchlauf weniger als 10% der historischen Metriken beträgt
  • Mindestens 30 historische Metriken vorhanden sind (minimale Stichprobengröße >= 30)

Für z-score Tests werden Standardabweichungen als dezimale kumulative Prozentsätze ausgedrückt. Wenn eine neue Metrik unter einem bestimmten linken kumulativen Prozentsatz (untere Grenze) oder über einem bestimmten rechten kumulativen Prozentsatz (obere Grenze) für Ihre historischen Metriken liegt, wird ein Alarm ausgelöst. Entweder eine untere Grenze, eine obere Grenze oder beide müssen festgelegt werden.

  • z-score Untere Grenze

    • Eine z-score Untere Grenze kann jede positive Dezimalzahl zwischen 0.5 und 1.0 sein. Dabei steht 0.5 für den Mittelwert und 1.0 für alle möglichen linken Werte (-∞). Sie wird verwendet, wenn ein kleinerer Wert auf eine Leistungsregression hinweisen würde.
    • Zum Beispiel, wenn Sie einen z-score Test mit einer unteren Grenze von 0.977 verwenden und Ihre historischen Metriken einen Mittelwert von 100 und eine Standardabweichung von 10 hatten, wäre die untere Grenzschwelle 80.05 und jeder Wert unter 80.05 würde einen Alarm auslösen.
  • z-score Obere Grenze

    • Eine z-score Obere Grenze kann jede positive Dezimalzahl zwischen 0.5 und 1.0 sein. Dabei steht 0.5 für den Mittelwert und 1.0 für alle möglichen rechten Werte (∞). Sie wird verwendet, wenn ein größerer Wert auf eine Leistungsregression hinweisen würde.
    • Zum Beispiel, wenn Sie einen z-score Test mit einer oberen Grenze von 0.977 verwenden und Ihre historischen Metriken einen Mittelwert von 100 und eine Standardabweichung von 10 hatten, wäre die obere Grenzschwelle 119.95 und jeder Wert über 119.95 würde einen Alarm auslösen.

t-test

Ein t-Test (t_test) misst das Konfidenzintervall (CI) für die Wahrscheinlichkeit, dass ein neuer Metrikwert über oder unter dem Mittelwert Ihrer historischen Metriken liegt, mit Hilfe eines Student’s t-Tests.

t-Test-Tests funktionieren am besten, wenn:

  • Keine extremen Unterschiede zwischen Benchmark-Durchläufen bestehen
  • Benchmark-Durchläufe völlig unabhängig voneinander sind
  • Die Anzahl der Iterationen für einen einzelnen Benchmark-Durchlauf weniger als 10% der historischen Metriken beträgt

Bei t-Test-Tests werden Konfidenzintervalle als dezimale Konfidenzprozentsätze ausgedrückt. Wenn ein neuer Metrikwert unterhalb eines bestimmten linksseitigen Konfidenzprozentsatzes (untere Grenze) oder oberhalb eines bestimmten rechtsseitigen Konfidenzprozentsatzes (obere Grenze) für Ihre historischen Metriken liegt, wird eine Warnung generiert. Es muss entweder eine untere Grenze, eine obere Grenze oder beides festgelegt sein.

  • t-Test untere Grenze

    • Eine t-Test untere Grenze kann ein beliebiges positives Dezimal zwischen 0.5 und 1.0 sein. Dabei steht 0.5 für den Mittelwert und 1.0 für alle möglichen linksseitigen Werte (-∞). Es wird verwendet, wenn ein kleinerer Wert auf eine Leistungsverschlechterung hinweist.
    • Wenn Sie beispielsweise einen t-Test mit einer unteren Grenze von 0.977 verwenden und 25 historische Metriken mit einem Mittelwert von 100 und einer Standardabweichung von 10 hätten, würde das untere Grenzwertlimit 78.96 betragen und jeder Wert unter 78.96 würde eine Warnung generieren.
  • t-Test obere Grenze

    • Eine t-Test obere Grenze kann ein beliebiges positives Dezimal zwischen 0.5 und 1.0 sein. Dabei steht 0.5 für den Mittelwert und 1.0 für alle möglichen rechtsseitigen Werte (∞). Es wird verwendet, wenn ein größerer Wert auf eine Leistungsverschlechterung hinweist.
    • Wenn Sie beispielsweise einen t-Test mit einer oberen Grenze von 0.977 verwenden und 25 historische Metriken mit einem Mittelwert von 100 und einer Standardabweichung von 10 hätten, würde das obere Grenzwertlimit 121.04 betragen und jeder Wert über 121.04 würde eine Warnung generieren.

Lognormalverteilung

Ein Lognormaltest (log_normal) misst, wie wahrscheinlich es ist, dass ein neuer Metrikwert über oder unter dem zentralen Standort Ihrer historischen Metriken liegt, wobei eine Lognormalverteilung verwendet wird.

Lognormaltests funktionieren am besten, wenn:

  • Benchmark-Läufe vollkommen unabhängig voneinander sind
  • Die Anzahl der Iterationen für einen einzelnen Benchmark-Lauf weniger als 10 % der historischen Metriken beträgt
  • Alle Daten positiv sind (der natürliche Logarithmus einer negativen Zahl ist undefiniert)

Für Lognormaltests wird die Wahrscheinlichkeit als dezimaler Prozentsatz ausgedrückt. Wenn ein neuer Metrikwert unter einem bestimmten Prozentsatz auf der linken Seite (Untere Grenze) oder über einem bestimmten Prozentsatz auf der rechten Seite (Obere Grenze) Ihrer historischen Metriken liegt, wird ein Alarm ausgelöst. Entweder muss eine Untere Grenze, eine Obere Grenze oder beide festgelegt werden.

  • Untere Grenze der Lognormalverteilung

    • Eine Untere Grenze eines Lognormaltests kann jede positive Dezimalzahl zwischen 0,5 und 1,0 sein. Wo 0,5 den zentralen Standort und 1,0 alle möglichen linken Werte (-∞) darstellt. Sie wird verwendet, wenn ein kleinerer Wert eine Leistungsverschlechterung anzeigen würde.
    • Wenn Sie beispielsweise einen Lognormaltest mit einer Unteren Grenze von 0,977 verwenden und 25 historische Metriken um 100 zentriert sowie einen vorherigen Ausreißer bei 200 haben, wäre die Untere Grenzgrenze 71,20 und jeder Wert unter 71,20 würde einen Alarm auslösen.
  • Obere Grenze der Lognormalverteilung

    • Eine Obere Grenze eines Lognormaltests kann jede positive Dezimalzahl zwischen 0,5 und 1,0 sein. Wo 0,5 den zentralen Standort und 1,0 alle möglichen rechten Werte (∞) darstellt. Sie wird verwendet, wenn ein größerer Wert eine Leistungsverschlechterung anzeigen würde.
    • Wenn Sie beispielsweise einen Lognormaltest mit einer Oberen Grenze von 0,977 verwenden und 25 historische Metriken um 100 zentriert sowie einen vorherigen Ausreißer bei 200 haben, wäre die Obere Grenzgrenze 134,18 und jeder Wert über 134,18 würde einen Alarm auslösen.

Interquartilbereich

Ein Interquartilbereichstest (iqr) misst, wie viele Vielfache des Interquartilbereichs (IQR) eine neue Metrik über oder unter dem Median Ihrer historischen Metriken liegt. Wenn eine neue Metrik unter einem bestimmten Vielfachen des IQR vom Median (untere Grenze) oder über einem bestimmten Vielfachen des IQR vom Median (obere Grenze) Ihrer historischen Metriken liegt, wird ein Alarm ausgelöst. Entweder muss eine untere Grenze, eine obere Grenze oder beide festgelegt werden.

  • Untere Grenze des Interquartilbereichs

    • Eine untere Grenze des Interquartilbereichstests kann jeder Multiplikator größer oder gleich null sein (z. B. verwenden Sie 2.0 für 2x). Sie wird verwendet, wenn ein kleinerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Beispielsweise, wenn Sie einen Interquartilbereichstest mit einer unteren Grenze von 2.0 hatten und Ihre historischen Metriken einen Median von 100 und einen Interquartilbereich von 10 aufwiesen, würde das Grenzwert-Limit bei 80 liegen und jeder Wert unter 80 würde einen Alarm auslösen.
  • Obere Grenze des Interquartilbereichs

    • Eine obere Grenze des Interquartilbereichstests kann jeder Multiplikator größer oder gleich null sein (z. B. verwenden Sie 2.0 für 2x). Sie wird verwendet, wenn ein größerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Beispielsweise, wenn Sie einen Interquartilbereichstest mit einer oberen Grenze von 2.0 hatten und Ihre historischen Metriken einen Median von 100 und einen Interquartilbereich von 10 aufwiesen, würde das Grenzwert-Limit bei 120 liegen und jeder Wert über 120 würde einen Alarm auslösen.

Delta-Interquartilsbereich

Ein Delta-Interquartilsbereichstest (delta_iqr) misst, um wie viele Vielfache der durchschnittlichen prozentualen Änderung (Δ) des Interquartilsbereichs (IQR) ein neuer Metrikwert über oder unter dem Median Ihrer historischen Metriken liegt. Wenn eine neue Metrik unter einem bestimmten Vielfachen des ΔIQR vom Median (untere Grenze) oder über einem bestimmten Vielfachen des ΔIQR vom Median (obere Grenze) Ihrer historischen Metriken liegt, wird ein Alarm ausgelöst. Entweder muss eine untere Grenze, eine obere Grenze oder beides gesetzt werden.

  • Untere Grenze des Delta-Interquartilsbereichs

    • Eine untere Grenze für den Delta-Interquartilsbereichstest kann jedes Vielfache sein, das größer oder gleich null ist (z. B. 2.0 für 2x verwenden). Dies wird verwendet, wenn ein kleinerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Ein Beispiel: Wenn Sie einen Delta-Interquartilsbereichstest mit einer unteren Grenze von 2.0 haben und Ihre historischen Metriken einen Median von 100, einen Interquartilsbereich von 10 und einen durchschnittlichen Delta-Interquartilsbereich von 0.2 (20%) aufweisen, wäre das untere Grenzwertlimit 60 und jeder Wert unter 60 würde einen Alarm auslösen.
  • Obere Grenze des Delta-Interquartilsbereichs

    • Eine obere Grenze für den Delta-Interquartilsbereichstest kann jedes Vielfache sein, das größer oder gleich null ist (z. B. 2.0 für 2x verwenden). Dies wird verwendet, wenn ein größerer Wert auf eine Leistungsverschlechterung hinweisen würde.
    • Ein Beispiel: Wenn Sie einen Delta-Interquartilsbereichstest mit einer oberen Grenze von 2.0 haben und Ihre historischen Metriken einen Median von 100, einen Interquartilsbereich von 10 und einen durchschnittlichen Delta-Interquartilsbereich von 0.2 (20%) aufweisen, wäre das obere Grenzwertlimit 140 und jeder Wert über 140 würde einen Alarm auslösen.

Static

Ein statischer Test (static) ist der einfachste Test. Wenn ein neuer Metrikwert unter eine festgelegte Untergrenze oder über eine festgelegte Obergrenze fällt, wird ein Alarm ausgelöst. Das heißt, die Unter-/Obergrenze ist ein expliziter Unter-/Obergrenzwert. Es muss entweder eine Untergrenze, eine Obergrenze oder beides festgelegt werden. Statische Tests funktionieren am besten, wenn der Wert der Metrik in einem konstanten Bereich über alle Benchmarks hinweg bleiben soll, wie beispielsweise die Codeabdeckung.

🐰 Wenn Sie ein anderes statisches Unter-/Obergrenzen-Limit für jeden Benchmark wünschen, sollten Sie den Prozent-Test (percentage) mit der Unter-/Obergrenze auf 0.0 und der maximalen Stichprobengröße auf 2 einstellen.

  • Statische Untergrenze

    • Eine statische Test-Untergrenze kann eine beliebige Gleitkommazahl sein. Sie wird verwendet, wenn ein kleinerer Wert auf einen Leistungseinbruch hinweisen würde. Die Untergrenze muss kleiner oder gleich der Obergrenze sein, wenn beide angegeben sind.
    • Zum Beispiel, wenn Sie einen statischen Test mit einer festgelegten Untergrenze von 100 hätten, wäre der Untergrenzwert ebenfalls 100 und jeder Wert, der kleiner als 100 ist, würde einen Alarm auslösen.
  • Statische Obergrenze

    • Eine statische Test-Obergrenze kann eine beliebige Gleitkommazahl sein. Sie wird verwendet, wenn ein größerer Wert auf einen Leistungseinbruch hinweisen würde. Die Obergrenze muss größer oder gleich der Untergrenze sein, wenn beide angegeben sind.
    • Zum Beispiel, wenn Sie einen statischen Test mit einer festgelegten Obergrenze von 100 hätten, wäre der Obergrenzwert ebenfalls 100 und jeder Wert, der größer als 100 ist, würde einen Alarm auslösen.

--threshold-min-sample-size <SAMPLE_SIZE>


Optional geben Sie die minimale Anzahl von Metriken an, die erforderlich sind, um einen Test durchzuführen. Wenn dieses Minimum nicht erreicht wird, wird der Test nicht durchgeführt. Die angegebene Stichprobengröße muss größer oder gleich 2 sein. Wenn auch die Option --threshold-max-sample-size gesetzt ist, muss die angegebene Stichprobengröße kleiner oder gleich --threshold-max-sample-size sein. Diese Option kann nicht mit dem statischen (static) Test verwendet werden.

Um beispielsweise einen Schwellenwert mit einer minimalen Stichprobengröße von 10 zu verwenden, könnten Sie --threshold-min-sample-size 10 schreiben. Wenn es weniger als 10 Metriken gäbe, würde der Test nicht durchgeführt. Im Gegensatz dazu würde der Test durchgeführt, wenn es 10 oder mehr Metriken gäbe.

--threshold-max-sample-size <SAMPLE_SIZE>


Optional kann die maximale Anzahl der Metriken angegeben werden, die zum Ausführen eines Tests verwendet werden. Wenn dieses Maximum überschritten wird, werden die ältesten Metriken ignoriert. Die angegebene Stichprobengröße muss größer oder gleich 2 sein. Wenn auch die Option --threshold-min-sample-size gesetzt ist, muss die angegebene Stichprobengröße größer oder gleich --threshold-min-sample-size sein. Diese Option kann nicht mit dem statischen (static) Test verwendet werden.

Zum Beispiel, um einen Schwellenwert mit einer maximalen Stichprobengröße von 100 zu verwenden, könnten Sie --threshold-max-sample-size 100 schreiben. Wenn es mehr als 100 Metriken gäbe, würden nur die aktuellsten 100 Metriken einbezogen. Umgekehrt, wenn es 100 oder weniger Metriken gäbe, würden alle Metriken einbezogen.

--threshold-window <WINDOW>


Optional geben Sie das Zeitfenster für Metriken an, die für den Test verwendet werden, in Sekunden. Das angegebene Zeitfenster muss größer als 0 sein. Diese Option kann nicht mit dem statischen (static) Test verwendet werden.

Ein Beispiel: Um einen Schwellwert mit einem Fenster von vier Wochen oder 2419200 Sekunden zu verwenden, könnten Sie --threshold-window 2419200 schreiben. Falls Metriken älter als vier Wochen sind, würden sie ausgeschlossen. Umgekehrt würden alle Metriken, die innerhalb der letzten vier Wochen liegen, eingeschlossen.

--threshold-lower-boundary <BOUNDARY>


Geben Sie die Untergrenze an. Die Einschränkungen für die Untergrenze hängen von dem verwendeten Test ab. Entweder die Untergrenze, die Obergrenze oder beide müssen angegeben werden.

Für Details siehe die Dokumentation für den spezifischen Test, den Sie verwenden:

--threshold-upper-boundary <BOUNDARY>


Geben Sie die obere Grenze an. Die Einschränkungen für die obere Grenze hängen von dem verwendeten Test ab. Entweder die untere Grenze, die obere Grenze oder beide müssen angegeben werden.

Für Details siehe die Dokumentation für den spezifischen Test, den Sie verwenden:

---thresholds-reset


Setzen Sie alle nicht spezifizierten Schwellenwerte für den angegebenen Branch und Testbed zurück. Wenn ein Schwellenwert bereits existiert und nicht spezifiziert ist, wird sein aktuelles Modell entfernt.

Zum Beispiel, wenn es zwei Schwellenwerte für den main Branch und das localhost Testbed gäbe:

  • main Branch, localhost Testbed, latency Messung
  • main Branch, localhost Testbed, throughput Messung

Wenn nur die latency Messung im bencher run Unterbefehl spezifiziert wird und --thresholds-reset verwendet wird, würde die throughput Messung ihr Modell entfernt bekommen.

--err


Optionale Fehlerausgabe, wenn ein Alert erzeugt wird. Ein Alert wird erzeugt, wenn eine neue Metrik unter ein Untergrenzlimit oder über ein Obergrenzlimit fällt.

Unterdrücken von Alerts

Manchmal kann es nützlich sein, Alerts für einen bestimmten Benchmark zu unterdrücken. Der beste Weg, dies zu tun, besteht darin, einen dieser speziellen Suffixe an den Namen des Benchmarks anzuhängen:

  • _bencher_ignore
  • BencherIgnore
  • -bencher-ignore

Zum Beispiel, wenn Ihr Benchmark my_flaky_benchmark genannt wurde, dann würde das Umbenennen in my_flaky_benchmark_bencher_ignore diesen speziellen Benchmark zukünftig ignorieren. Ignorierte Benchmarks werden dennoch gegen bestehende Schwellenwerte überprüft. Für sie wird jedoch kein Alert generiert. Die Metriken für ignorierte Benchmarks werden dennoch gespeichert. Die Ergebnisse von my_flaky_benchmark_bencher_ignore würden weiterhin als Benchmark my_flaky_benchmark gespeichert. Wenn Sie das Suffix entfernen und zum ursprünglichen Benchmark-Namen zurückkehren, werden die Dinge genau dort fortgesetzt, wo Sie aufgehört haben.



🐰 Herzlichen Glückwunsch! Sie haben alles über Schwellenwerte & Alarme gelernt! 🎉


Weitermachen: Benchmark Harness Adapters ➡

🤖 Dieses Dokument wurde automatisch von OpenAI GPT-4 generiert. Es ist möglicherweise nicht korrekt und kann Fehler enthalten. Wenn Sie Fehler finden, öffnen Sie bitte ein Problem auf GitHub.


Published: Fri, October 27, 2023 at 8:40:00 AM UTC | Last Updated: Sat, October 19, 2024 at 1:27:00 PM UTC