Verwendung von Elastic Recheck

[ English | English (United Kingdom) | español (México) | 中文 (简体, 中国) | Indonesia | Deutsch | 한국어 (대한민국) ]

Verwendung von Elastic Recheck

Bemerkung

Dieser Abschnitt geht davon aus, dass Sie Status in Zuul prüfen abgeschlossen haben.

Wenn Sie mit Ihrer Cloud ein externes Speicher-Plugin oder ein gemeinsam genutztes Dateisystem verwenden, können Sie testen, ob es funktioniert, indem Sie eine zweite Freigabe oder einen zweiten Endpunkt erstellen. So können Sie das System testen, bevor Sie die neue Version Ihrem Speicher anvertrauen.

  • Verbessern Sie die automatischen Tests, die die Community bei jedem Patch durchführt, der bei gerrit eingereicht wird.

  • Melden Sie wiederkehrende Fehler, damit Sie nicht manuell „erneut prüfen“ müssen.

Was tun, wenn ein Testauftrag fehlschlägt?

Wenn Sie einen Patch an gerrit senden und zuul die Testergebnisse für die von ihm ausgeführten Jobs zurückgibt, schlägt manchmal einer dieser Tests fehl. Die meiste Zeit zeigt dies an, dass es ein Problem mit Ihrer vorgeschlagenen Änderung gibt und die Tests fangen es auf. Manchmal ist der Testlauf über einen zugrunde liegenden, bereits vorhandenen Fehler in OpenStack gestolpert. Darüber hinaus konnte es vorkommen, dass die Infrastruktur für die Durchführung der Tests manchmal ausgefallen ist. Um dies herauszufinden, müssen Sie sich immer die Protokolle des fehlgeschlagenen Auftrags ansehen, um zu verstehen, was passiert.

Was ist eine elastic-recheck?

Der Elasticitätsnachweis ist ein Werkzeug zur Verfolgung von Fehlern bei Prüfaufträgen. Es speichert ein Repository mit Fingerabdrücken für bekannte Fehler, die sich auf Jobs im Gate auswirken. Es wird dann verwendet, um sowohl die Rate zu verfolgen, mit der diese Fehler gefunden werden, als auch um Kommentare in Gerrit und im IRC zu hinterlassen, wenn es bei einem Fehler einen bekannten Fehler-Fingerabdruck gefunden hat.

elastic-recheck basiert auf einem ELK (Elastic Search, Logstash, Kibana) Stapel, in dem wir Logstash verwenden, um alle Protokolle von CI-Aufträgen in einem Elastic Search Cluster zu speichern. Wir hosten auch ein Kibana Dashboard, das verwendet werden kann, um Abfragen auf dem Cluster auszuführen und mit den Daten zu interagieren. Elastic-recheck fragt den elastischen Suchcluster nach den Fingerabdrücken ab.

Sie können den aktuellen Status der Bugs durch elastic-recheck sehen unter: Elastische Überprüfung

../_images/er_status.png

Jede Grafik zeigt, wie viele Übereinstimmungen für diesen Fingerabdruck in den letzten 10 Tagen gefunden wurden. Es bietet auch einen Link sowohl zur Launchpad-Seite für den Bug als auch zum Kibana Dashboard für die zugrunde liegende elastische Suchanfrage, die für den Fingerabdruck verwendet wird.

elastic-recheck hat auch eine Seite, die anzeigt, wie viele Fehler aufgetreten sind, die keinen passenden Fingerabdruck haben. Typischerweise ist das Gate umso instabiler, je mehr Fehler nicht kategorisiert werden (und OpenStack als Ganzes).

Sie finden diese Seiten unter:

Nicht klassifizierte fehlgeschlagene integrierte Gate-Jobs <http://status.openstack.org/elastic-recheck/data/integrated_gate.html>`_ und ` Nicht klassifizierte fehlgeschlagene Jobs <http://status.openstack.org/elastic-recheck/data/others.html>`_

je nachdem, für welche Jobs Sie sich interessieren.

../_images/er_uncategorized.png

Wenn Sie sich für mehr über die Theorie und Geschichte des Projekts interessieren, bietet dieser Vortrag vom Juno OpenStack Summit einen guten Überblick: Elastische Nachprüfung - Werkzeuge zur Ermittlung von Rennbedingungen in OpenStack

Aufspüren eines neuen Fehlers beim elastic-recheck

Wenn Sie auf einen Fehler stoßen, der nicht durch elastic-recheck verfolgt wird, und Sie die Protokolle durchgesehen haben, um festzustellen, dass er nicht durch die vorgeschlagene Änderung verursacht wird und andere Änderungen beeinflusst, können Sie einen neuen elastic-recheck Fingerabdruck vorschlagen.

Dieser Leitfaden wird nicht auf die Details der Verfolgung der Protokolle eines Laufs und der Suche nach einem guten Fingerabdruck eingehen, da dies sehr aufwändig ist, abhängig von der Aufgabe, die Sie gerade ausführen, und bereits an einigen Stellen dokumentiert ist:

Sobald Sie eine Nachricht in den Protokollen identifiziert haben, die für den Fingerabdruck verwendet werden kann, müssen Sie diese in eine elastische Suchanfrage umwandeln. Sie können jeden der vorhandenen Fingerabdrücke als Beispiel verwenden: openstack-infra/elastic-recheck

Sie sollten auch alle elastischen Suchanfragen mit Kibana überprüfen: Logstash-Suche

Sobald Sie eine Abfrage erstellt und bei der elastischen Suche eingecheckt haben, sollten Sie eine yaml-Datei im queries-Verzeichnis des elastic-recheck git repo erstellen. Der Dateiname ist die Launchpad-Bugnummer für den Bug und der Inhalt ist die elastische Suchanfrage.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.