Suchanfragesprache

Die Abfragesprache ist die Syntax, die Sie für die Suche nach Problemen im Google Issue Tracker verwenden. Sie können die Sprache in Suchanfragen verwenden, die Sie in die Suchleiste eingeben. Sie können auch den Search Builder verwenden, um die Kriterien grafisch auszuwählen. Diese werden dann in die Abfragesprache konvertiert, wenn der Search Builder geschlossen wird.

Mit der Abfragesprache können Sie nach folgenden Kriterien suchen:

  • Keywords
  • Feld/Wert-Paare

Ihre Suchvorgänge können mehrere Kriterien enthalten, einschließlich einer Kombination aus Suchbegriffen und Feld/Wert-Paaren. Mit der Syntax der Abfragesprache können Sie mithilfe von logischen Operatoren, Klammern und Anführungszeichen die Beziehung und Reihenfolge angeben, in der die Kriterien berücksichtigt werden.

Suchbegriffsuchen

Keywords sind Textstrings, mit denen Sie bei Problemen in bestimmten Feldern suchen können. Diese Felder sind:

  • Titel
  • Kommentare
  • Namen der Anhänge
  • Felder, die Nutzer enthalten (z. B. Zugewiesene Person oder Cc)
  • Felder, die eine interne ID-Nummer enthalten (z. B. Felder, die die Komponente oder Hotlists mit einem Problem angeben)
  • Felder, die Versionsnummern enthalten
  • Benutzerdefinierte Felder

Ein Beispiel für Keyword-Suchkriterien ist der String configuration properties. Wenn Sie dieses Kriterium in eine Suche eingeben, sucht der Issue Tracker global nach Problemen in allen Komponenten und gibt diejenigen zurück, deren Felder oben beide Schlüsselwörter enthalten, wie in Ihren Berechtigungen für die Zugriffssteuerung festgelegt. Die Keywords können sich in verschiedenen Feldern oder in denselben Feldern befinden.

Issue Tracker behandelt das Leerzeichen zwischen den Suchkriterien als impliziten AND-Operator. Sie können Anführungszeichen (") verwenden, um anzugeben, dass ein aus mehreren Wörtern bestehender String als einzelnes Keyword betrachtet werden soll. Bei allen Suchanfragen im Issue Tracker wird die Groß-/Kleinschreibung nicht berücksichtigt, unabhängig davon, ob Sie Anführungszeichen verwenden oder nicht.

Suche nach Feld/Wert-Paaren

Sie können Suchkriterien auch als Feld/Wert-Paar angeben. Die Basissyntax ist [field]:[value]. Bei Textfeldern stimmt diese Syntax mit Problemen überein, bei denen das angegebene Feld den Wert enthält. Bei anderen Feldtypen werden Probleme erkannt, bei denen der Feldwert äquivalent ist.

Bei einer Suche nach title:latency werden beispielsweise Probleme mit dem Wort latency im Feld Titel zurückgegeben. Bei einer Suche nach priority:p0 werden Probleme mit der Priorität p0 gefunden.

Beachten Sie, dass Sie neben dem Doppelpunkt für die Felder „time“ und „count“ auch andere relationale Symbole verwenden können. Weitere Informationen finden Sie unter Relationale Operatoren.

Suchen mit Sonderwert mit „any“ oder „none“

Optionale Felder können mit den Sonderwerten any und none abgefragt werden. any entspricht jedem Nicht-Null-Wert. none stimmt mit Nullwerten überein. Eine Liste aller unterstützten Feldlabels in der Abfragesprache finden Sie in der Suchanfragereferenz.

Logische Operatoren

Mit logischen Operatoren können Sie mehr als ein Kriterium und die Beziehung zwischen ihnen angeben. Wie oben erwähnt, fungieren Leerzeichen außerhalb von Anführungszeichen als implizite AND-Operatoren. Der Issue Tracker unterstützt die folgenden expliziten logischen Operatoren:

Betreiber Alternatives Symbol Beschreibung Beispiel
UND {Whitespace} Stimmt überein, wenn das Problem beide Kriterien umfasst star:true AND componentid:46046
ODER | Stimmt überein, wenn das Problem eines der Kriterien enthält type:(Bug|feature_request)
NOT - Stimmt überein, wenn das Problem nicht die Kriterien enthält -assignee:jim
"..." Stimmt überein, wenn das Problem eine Wortgruppe in Anführungszeichen enthält (Wörter im Zitat erscheinen in derselben Reihenfolge) comment:"We have a problem"
( ) Gruppiert Werte oder Suchkriterien status:open AND (priority:(p0|p1) OR severity:(s0|s1))

Wichtige Hinweise:

  • Für AND, OR und NOT musst du Großbuchstaben verwenden.

  • Der Operator NOT hat dieselbe Bedeutung, unabhängig davon, ob er dem Feldnamen oder Feldwert vorangestellt ist. Das bedeutet, dass -assignee:jim und assignee:-jim gleichwertig sind.

  • Setzen Sie Klammern relativ großzügig, um Begriffe in der Suchanfrage klar zu gruppieren. Standardmäßig ordnet der Issue Tracker NOT nur dem unmittelbar folgenden Begriff zu und gruppiert OR mit den beiden eingegrenzten Begriffen. Die Suchabfrage title:(a OR b NOT c AND d) entspricht beispielsweise title:((a OR b) AND (NOT c) AND d).

Striche

Der Bindestrich (-) hat je nach Kontext in der Suchanfrage unterschiedliche Bedeutungen:

  • In Issue Tracker wird der Bindestrich vor einem Wort in einer Suche als NOT-Operator behandelt. Bei den Suchkriterien -assignee:none oder assignee:-none werden beispielsweise alle Probleme zurückgegeben, für die eine zuständige Person zuständig ist.

  • Im Issue Tracker werden Strings, die durch einen Bindestrich verbunden sind, so behandelt, als wären sie in Anführungszeichen gesetzt. Das Kriterium state-of-the-art entspricht z. B. "state of the art".

  • In Issue Tracker werden Wörter mit Bindestrich im Problemfeld als unabhängige Wörter behandelt, die durch Leerzeichen getrennt sind. Wenn also ein Problem das Wort state-of-the-art im Titel enthält und Sie die Suchanfrage title:(of art state the) oder title:("state of the art") ausführen, wird das Problem als Teil der Suchergebnisse zurückgegeben.

Relationale Operatoren

Die Basissyntax für ein Feld/Wert-Suchkriterium ist [field]:[value]. Dabei gibt das Doppelpunkt-Zeichen (:) an, dass das angegebene Feld dem angegebenen Wert entsprechen oder diesen enthalten muss, damit ein Problem in den Suchergebnissen zurückgegeben wird.

Felder, die einen Zeitwert (created, modified, resolved, verified und bestimmte benutzerdefinierte Felder) oder einen Wert für die Anzahl (duplicatecount, votecount, commentcount und cccount) enthalten, unterstützen die folgenden zusätzlichen relationalen Operatoren:

Symbol Beschreibung
< Weist einen Fehler zu, wenn sein Wert kleiner als/vor dem Suchwert ist.
<= Weist einen Fehler zu, wenn sein Wert kleiner als/vor oder gleich dem Suchwert ist.
> Weist einen Fehler zu, wenn sein Wert größer als oder nach dem Suchwert ist.
>= Weist einen Fehler zu, wenn sein Wert größer/nach oder gleich dem Suchwert ist.

Suchanfragen nach Zeitangaben

Die Abfragesprache bietet eine spezielle Syntax zum Abgleichen von Feldern, die einen Zeitwert enthalten. So kann der Issue Tracker nach Bedarf über mehrere Zeiträume oder relative Zeiten hinweg suchen.

Format der absoluten Zeit

Uhrzeiten werden im folgenden Format angegeben:

[yyyy]-[MM]-[dd]T[HH]:[mm]:[ss].

In diesem Format ist [yyyy] das vierstellige Jahr, [MM] der zweistellige Monat, [dd] der zweistellige Tag, [HH] die zweistellige Stunde einer 24-Stunden-Uhr, [mm] die Minute und [ss] die Sekunde. Alle Zeitangaben in UTC.

Sie können bei der Suche nach Problemen, die zu einem bestimmten Zeitpunkt oder vor oder nach einem bestimmten Zeitpunkt erstellt wurden, die gewünschte Spezifität angeben. Sie können beispielsweise created:2014-06 angeben, um Probleme zu finden, die im Juni 2014 erstellt wurden. Für mehr Genauigkeit können Sie nach created:2014-06-03T04 suchen, um Probleme zu finden, die am 3. Juni 2014 in der vierten Stunde (zwischen 4:00 und 5:00 Uhr UTC) erstellt wurden.

Zeiträume

Sie können zwei Punktzeichen (..) verwenden, um einen Zeitraum in Suchkriterien für Felder/Werte anzugeben. Die Syntax lautet [field]:[start time]..[end time]. Die Start- und Endzeiten können beliebig spezifisch sein. verified:2013..2015 gibt beispielsweise alle Probleme zurück, die 2013, 2014 oder 2015 überprüft wurden.

Relatives Zeitformat

Sie können auch ein Datum in Tagen vor dem aktuellen Datum angeben. Verwenden Sie dazu das Format [days]d, wobei [days] für die Anzahl der Tage in der Vergangenheit steht, die in den Suchergebnissen berücksichtigt werden sollen. Sie können beispielsweise modified:5d verwenden, um Probleme zu ermitteln, die in den letzten fünf Tagen geändert wurden.

Bei Verwendung eines relativen Zeitformats muss der Operator ein Doppelpunkt (:) sein, z. B. created:5d. Wenn Sie Probleme finden möchten, die nicht in diesen Bereich fallen, können Sie den Operator NOT oder - verwenden.

Beispiel: -verified:10d gibt Probleme zurück, die in den letzten 10 Tagen nicht bestätigt wurden. Wenn Sie Probleme finden möchten, die bestätigt wurden, aber nicht in den letzten 10 Tagen, können Sie (-verified:10d) AND status:verified verwenden.

Suchanfragen nach „Heute“ mit Tagesarithmetik

Sie können das today-Token in zeitbezogenen Suchen als Ersatz für das aktuelle Datum verwenden. Er unterstützt die Verwendung von Tagesarithmetik wie today+10 und today-2. Das today-Token kann auch mit Zeiträumen wie today-2..today+3 verwendet werden. Die Verwendung des today-Tokens in gespeicherten Suchanfragen trägt dazu bei, die Abfrage wiederverwendbar zu machen.

Beispiele:

  • created:today
  • modified<=today-10
  • nearestslo:today+10
  • resolved:2024-02-29..today+2
  • customfield1002:today..today+5

Achtung: Wie im Absolutenzeitformat erwähnt, erfolgen Zeitsuchen im Issue Tracker in UTC. Dasselbe gilt für Suchanfragen mit today.