Hintergrundabfrage konfigurieren

Sie können eine Abfrage erstellen, im Hintergrund ausführen und die Abfrageergebnisse zu einem späteren Zeitpunkt im Trace-Explorer anzeigen.

Das Erstellen und Ausführen einer Abfrage im Hintergrund ist nützlich, wenn Sie eine Abfrage haben, deren Ausführung einige Zeit in Anspruch nehmen kann. Der Abfragestatus und die Ergebnisse können zu einem späteren Zeitpunkt abgerufen werden.

So führen Sie eine Hintergrundabfrage aus:
  1. Navigieren Sie zur Seite Trace-Explorer.
  2. Stellen Sie sicher, dass das entsprechende Compartment und die APM-Domain ausgewählt sind.
  3. Klicken Sie auf das Dropdown-Menü neben Ausführen, und wählen Sie Abfrage im Hintergrund ausführen aus.

    Abbildung 5-1 Abfrage im Hintergrund ausführen

    Abfrage im Hintergrund ausführen
    Das Fenster Im Hintergrund ausführen wird mit den folgenden Optionen angezeigt:
  4. Klicken Sie nach Abschluss auf Weiterleiten.

Hintergrundabfragen anzeigen

Nachdem Sie eine Hintergrundabfrage erstellt haben, wählen Sie Hintergrundabfragen anzeigen aus, um die Liste der zuvor initialisierten Abfragen und deren Ergebnisse anzuzeigen.

Sie können Informationen zu den Hintergrundabfragen anzeigen, wie Instanzen, Status, Zeilen gesamt, Zeitplan und Läuft ab.

Hinweis

Nach Erreichen der Ablaufzeit sind die in einer Hintergrundabfrage gespeicherten Abfrageergebnisse nicht mehr zugänglich. Der Abfragename und der Text der Hintergrundabfrage werden als abgelaufene Abfrage beibehalten.
Verwenden Sie das Symbol Aktionen (Symbol "Aktionen"), um Folgendes auszuführen:
  • Details bearbeiten: Bearbeiten Sie die Details einer Hintergrundabfrage. Beispiel: Wenn Sie das Ablaufdatum der Hintergrundabfragen verlängern müssen, aktualisieren Sie das Feld Abläuft. Der Standardwert für Ablauf ist 30 Tage.
  • Abfrageergebnisse abrufen: Siehe Hintergrundabfrageergebnis.

    Option für Aggregierte Abfrage nicht verfügbar.

  • Neue Abfrage aus Attributen: Verfeinern Sie die Ergebnisse einer Hintergrundabfrage, indem Sie Änderungen an der vorhandenen Abfrage vornehmen. Beispiel: Wenn die Ergebnisse weniger Zeilen zurückgeben sollen, können Sie eine where-Klausel mit einem Attribut hinzufügen.

    Außerdem können Abfrageergebnisdaten als Quelle für andere Abfragen verwendet werden (ähnlich wie verschachtelte Abfragen). Dieses Tool kann bei der Erstellung dieser Abfragen helfen.

  • Abfrage erneut ausführen: Führen Sie eine Hintergrundabfrage erneut aus. Das bedeutet, dass die vorhandenen Abfrageergebnisdaten gelöscht und die neue Abfrage mit demselben Namen erstellt werden.
  • Löschen: Löschen Sie eine Hintergrundabfrage.

Eine Ausführung

Sie können eine einzelne Abfrage zur Ausführung im Hintergrund erstellen und die Abfrageergebnisse als Hintergrundabfrage speichern.

Verwenden Sie Einzelausführung, wenn Sie eine Abfrage haben, deren Ausführung einige Zeit in Anspruch nehmen kann und die nur einmal ausgeführt werden muss (Sie müssen sie nicht mehrmals ausführen).

Gehen Sie auf der Registerkarte Einzelausführung wie folgt vor:

  1. Abfragename: Geben Sie einen Namen für die Abfrage ein.
  2. Beschreibung: Geben Sie optional eine Beschreibung für die Abfrage ein.
  3. Abfrage: Erstellen Sie eine neue Abfrage, oder bearbeiten Sie die vorhandene Abfrage.
  4. Zeitbereich: Wählen Sie den gewünschten Zeitraum aus.
  5. Maximale Ausführungsdauer in Minuten: Geben Sie die maximale Ausführungsdauer in Minuten ein.
  6. Maximale Anzahl Zeilen pro Ausführung: Geben Sie die maximale Anzahl Zeilen pro Ausführung ein.
  7. Gültigkeitsdauer: Geben Sie den Gültigkeitszeitraum ein.
  8. Ablaufzeittyp: Geben Sie den Ablaufzeittyp ein.
  9. Klicken Sie auf Weiterleiten.

Wiederholung

Sie können eine wiederholte Abfrage erstellen, die im Hintergrund mit einem benutzerdefinierten Zeitplan ausgeführt wird, und die Abfrageergebnisse als Hintergrundabfrage speichern.

Verwenden Sie Ausführung wiederholen, wenn Sie eine Abfrage haben, deren Ausführung einige Zeit in Anspruch nehmen kann und die mehrmals in einem bestimmten Intervall ausgeführt werden muss. Damit können Sie das Abfrageergebnis in einem bekannten Intervall aktualisieren. Beispiel: Eine Zusammenfassung der Daten der Vorwoche, die jeden Montagmorgen aktualisiert werden.

Die Abfrageergebnisse werden nach jeder Ausführung ersetzt.

Gehen Sie auf der Registerkarte Ausführung wiederholen wie folgt vor:

  1. Abfragename: Geben Sie einen Namen für die Abfrage ein.
  2. Beschreibung: Geben Sie optional eine Beschreibung für die Abfrage ein.
  3. Abfrage: Erstellen Sie eine neue Abfrage, oder bearbeiten Sie die vorhandene Abfrage.
  4. Legen Sie unter Konfiguration Folgendes fest:
    • Erste Laufzeit: Wählen Sie die erforderliche Zeit für die erste Ausführung aus.
    • Maximale Ausführungsdauer in Minuten: Geben Sie die maximale Ausführungsdauer in Minuten ein.
    • Maximale Anzahl Zeilen pro Ausführung: Geben Sie die maximale Anzahl Zeilen pro Ausführung ein
  5. Wählen Sie unter Planung eine der folgenden Optionen aus:
    • Wiederholungsintervall
      1. Wiederholen alle: Wählen Sie den Wiederholungszeitbetrag aus, und geben Sie den Wiederholungstyp dafür an.
      2. Abfragezeitraum relativ zur geplanten Ausführungszeit: Wählen Sie den Abfragezeitraum relativ zur geplanten Ausführungszeit aus, und geben Sie den Wiederholungstyp dafür an.
    • Cron-Planung
      1. Cron-Ausdruck:

        Geben Sie die Werte ein, um einen Cronjob-Ausdruck basierend auf einer Zeichenfolge aus fünf Feldern zu erstellen, die durch ein Leerzeichen mit der folgenden Syntax getrennt sind:

        S1 S2 S3 S4 S5
        Die folgende Abbildung zeigt beispielsweise einen Cronjob, der am 15. Tag eines Monats um 23:10 Uhr ausgeführt wird.
        10 23 15 * *
      2. Abfrageperiode relativ zur geplanten Laufzeit: Geben Sie an, wann die Abfrage gestartet wird.
  6. Klicken Sie auf Weiterleiten.

Aggregierte Abfrage

Sie können eine aggregierte Abfrage erstellen, die im Hintergrund mit einer wiederholten Abfrage ausgeführt wird, und die kumulativen Abfrageergebnisse als Hintergrundabfrage speichern.

Verwenden Sie Aggregierte Abfrage, wenn Sie eine wiederholte Abfrage haben, deren Ausführung einige Zeit in Anspruch nehmen kann, und die kumulativen Ergebnisse kontinuierlich abfragen müssen. Die Abfrageergebnisse werden nach jeder Ausführung zum vorherigen Ergebnis hinzugefügt.

Mit Aggregierte Abfrage können Sie benutzerdefinierte Entitys basierend auf der Aggregation von Spans oder Traces erstellen. Dies ist in Fällen nützlich, in denen das Aufnahmevolumen sehr hoch ist und Sie eine Zusammenfassung/Aggregation von Millionen von Spans in einem Dashboard anzeigen müssen.

  1. Abfragename: Geben Sie einen Namen für die Abfrage ein.
  2. Beschreibung: Geben Sie optional eine Beschreibung für die Abfrage ein.
  3. Abfrage: Erstellen Sie eine neue Abfrage, oder bearbeiten Sie die vorhandene Abfrage.
  4. Legen Sie unter Konfiguration Folgendes fest:
    • Erste Laufzeit: Wählen Sie die erforderliche Zeit für die erste Ausführung aus.
    • Maximale Ausführungsdauer in Minuten: Geben Sie die maximale Ausführungsdauer in Minuten ein.
    • Maximale Anzahl Zeilen pro Ausführung: Geben Sie die maximale Anzahl Zeilen pro Ausführung ein.
  5. Legen Sie unter Aggregation Folgendes fest:
    1. Wiederholen alle: Wählen Sie den Wiederholungszeitbetrag aus, und geben Sie den Wiederholungstyp dafür an.
    2. Tage für Datenaufbewahrung: Geben Sie die Anzahl der Tage für die Datenaufbewahrung ein.
  6. Klicken Sie auf Weiterleiten.

Beispiel:

Die folgende Hintergrundaggregatabfrage kann zuerst erstellt und zur Zusammenfassung von Daten pro Benutzer verwendet werden:
show traces userName, time_bucket_start(60) as timeBucket, 
sum(ApdexScore) as apdex, sum(PageViews) as pageViews, 
count(*) as "count", 
sum(PageResponseTime) as totalResponseTime, percentile(PageResponseTime,90) as P90, 
count_distinct(sessionId) as sessions, sum(ErrorCount) as errorCount 
where pageViews > 0 and userName is not omitted 
group by userName, time_bucket_start(60)
Anschließend können Sie die folgende Aggregatabfrage verwenden, um die durchschnittliche Anzahl von Sessions pro Benutzer im Zeitverlauf zu erfassen:
show from query result User avg(sessions) 
timeseries time range using attribute timeBucket