Überwachen und Fehler beheben

Auf dieser Seite wird beschrieben, wie Sie Informationen zu Fehlern abrufen, die bei Katalog- und Nutzerereignis-Importen sowie anderen API-Vorgängen in Vertex AI Search for Retail aufgetreten sind.

Hilfe zum Einrichten von Benachrichtigungen finden Sie unter Cloud Monitoring-Benachrichtigungen einrichten.

Einleitung

Es ist wichtig, der API genaue Kataloginformationen und Nutzerereignisse bereitzustellen, um qualitativ hochwertige Ergebnisse zu erhalten. Wenn Sie die Fehlerquelle überwachen und verstehen, können Sie Fehler auf Ihrer Website finden und beheben.

Aggregierte Integrationsfehler ansehen

Auf der Seite Monitoring können Sie die von den Datenuploadprozessen und -vorhersagen oder Suchanfragen generierten aggregierten Fehler ansehen.

Auf dieser Seite werden alle Fehler für die Vertex AI Search for Retail API angezeigt. Sie können sich Fehler im Zusammenhang mit dem Produktkatalog, Nutzerereignissen, Empfehlungen, Suchergebnissen und Modellen ansehen. Das System protokolliert außerdem Fehler bei Importen, z. B. eine fehlerhafte Zeile in Ihrer Cloud Storage-Datei. Das System protokolliert bis zu 100 Fehler pro Importdatei. Sie können den Zeitraum definieren, für den Fehler angezeigt werden, und einen Filter basierend auf dem Fehlertyp erstellen.

Sie können auf einen einzelnen Fehler klicken, um die Logs für diesen Fehler in Cloud Logging aufzurufen.

Sie können einzelne Fehlerlogs öffnen, indem Sie das Log maximieren. Fehlerlogs enthalten weitere Details zur Anfrage, einschließlich der Nutzlasten der Anfrage- und Antwort sowie Fehlerdetails. Anhand dieser Informationen können Sie feststellen, wo sich der fehlerhafte Methodenaufruf auf Ihrer Website befindet.

Bei Fehlern durch ungültiges JSON erhalten Sie weitere Informationen zu dem Problem, indem Sie das Feld status erweitern.

Status eines bestimmten Integrationsvorgangs ansehen

Sie können den Status eines bestimmten Integrationsvorgangs im Fenster Aktivitätsstatus sehen:

  1. Rufen Sie in der Search for Retail-Konsole die Seite Daten auf.

    Zur Seite „Daten“

  2. Klicken Sie auf Aktivitätsstatus.

    Im Fenster Aktivitätsstatus sehen Sie den Status von Vorgängen mit langer Ausführungszeit für Ihren Produktkatalog, Nutzerereignisse und Steuerelemente.

    In diesem Fenster können Sie Fehler für bestimmte Integrationsvorgänge prüfen.

  3. Klicken Sie auf Logs ansehen in der Spalte "Detail" eines beliebigen Vorgangs mit einem Fehler zur Prüfung der Log-Dateien in Cloud Logging.

Logs in Cloud Logging ansehen

So öffnen Sie Ihre Logdateien direkt in Cloud Logging: Sie benötigen die Rolle „Log-Betrachter“ (roles/logging.viewer), um Protokolle aufrufen zu können.

  1. Rufen Sie in der Google Cloud Console den Log-Explorer auf. Zum Log-Explorer

  2. Wählen Sie in der Projektauswahl Ihr Vertex AI Search for Retail-Projekt aus.

  3. Klicken Sie auf das Drop-down-Menü Ressource und wählen Sie Verbrauchte API > Cloud Retail aus.

Weitere Informationen zum Log-Explorer finden Sie unter Logs mit dem Log-Explorer ansehen.

Mit diesem Link werden beispielsweise Logs für alle Vertex AI Search for Retail-Fehler in der letzten Stunde geöffnet:

Vertex AI Search for Retail-Logs öffnen

Informationen zum Konfigurieren der API-Logs, die geschrieben werden, finden Sie unter Logging konfigurieren.

Logging konfigurieren

Sie können konfigurieren, welche Dienstprotokolle in Logging geschrieben werden. Mit der Logging-Konfiguration können Sie die Schweregrade festlegen, bei denen Protokolle geschrieben werden sollen, die Protokollierung aktivieren oder deaktivieren und die Standardprotokollierungseinstellungen für bestimmte Dienste überschreiben.

Für jede API-Anfrage eines Endnutzers kann ein Logging-Eintrag generiert werden. Ein Eintrag enthält Informationen wie die API-Methode, wann sie aufgerufen wurde, den Antwortcode sowie den Anfrage- und Antworttext. In der Logging-Konfiguration eines Projekts wird angegeben, welche Arten von Protokollen von der API in Logging geschrieben werden. Sie haben auch die Möglichkeit, Logging-Konfigurationen für bestimmte API-Dienste detailliert anzugeben.

Um Logging-Konfigurationen zu aktualisieren, benötigen Sie die Rolle „Bearbeiter“ für Vertex AI Search for Retail.

Sie können die Console oder die LoggingConfig API verwenden, um Logging zu konfigurieren.

Console

So aktualisieren Sie Logging-Konfigurationen in der Console:

  1. Rufen Sie in der Search for Retail Console die Seite Monitoring auf.

    Zur Seite „Monitoring“

  2. Klicken Sie auf Protokollierungskonfiguration.

  3. Wählen Sie eine Logebene aus, um eine globale Logging-Konfiguration festzulegen. Wenn Sie LOG_ALL auswählen, geben Sie auch eine Abtastrate für erfolgreiche Protokolle ein.

  4. Wenn Sie eine Konfiguration auf Dienstebene festlegen möchten, wählen Sie einen Dienst aus, den Sie aktualisieren möchten, und die Protokollierungsebene aus. Diese Einstellung überschreibt die globale Protokollierungskonfiguration.

curl

Verwenden Sie die Ressource LoggingConfig, um Logging-Konfigurationen mit der API zu aktualisieren. Weitere Informationen finden Sie in der LoggingConfig API-Referenz.

  1. Verwenden Sie loggingConfig.Get, um die aktuelle Logging-Konfiguration aufzurufen.

    curl -X GET \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json" \
        "https://retail.googleapis.com/v2alpha/projects/PROJECT_ID/loggingConfig"
    
    • PROJECT_ID: Die ID Ihres Projekts.
  2. Verwenden Sie die Methode loggingConfig.Patch, um die Logging-Konfiguration zu aktualisieren. Weitere Informationen finden Sie in der LoggingConfig API-Referenz.

    In diesem Beispiel wird mit loggingConfig.Patch die globale Logging-Konfiguration auf LOG_WARNINGS_AND_ABOVE festgelegt. Außerdem werden zwei Konfigurationen auf Dienstebene festgelegt: CatalogService wird auf LOG_WARNINGS_AND_ABOVE und ControlService auf LOG_ALL gesetzt.

    curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type: application/json; charset=utf-8" \
      "https://retail.googleapis.com/v2alpha/projects/PROJECT_ID/loggingConfig" \
      --data '{
        "name": "projects/PROJECT_ID/loggingConfig",
        "default_log_generation_rule": {"logging_level": "LOG_ERRORS_AND_ABOVE"},
        "service_log_generation_rules": [
          {
            "service_name": "CatalogService",
            "log_generation_rule": {
              "logging_level": "LOG_WARNINGS_AND_ABOVE"
              }
          },
          {
            "service_name": "ControlService",
            "log_generation_rule": {
                "logging_level": "LOG_ALL", "info_log_sample_rate": "0.1"
                }
            }
          ]
        }'
    

Protokollierungsebenen

In Logging werden nur Logs mit bestimmten Schweregraden geschrieben. Mit den Einstellungen für die Protokollierungsebene wird festgelegt, welche Protokolle, die von einer API-Methode generiert werden, in das Logging geschrieben werden.

Wenn für eine API-Methode keine Protokollierungskonfiguration auf Dienstebene festgelegt ist, wird die globale Einstellung für die Protokollierungsebene verwendet.

Die Standardeinstellung für die Logging-Ebene ist LOG_WARNINGS_AND_ABOVE.

Das Feld logging_level akzeptiert die folgenden Werte:

  • LOGGING_DISABLED: Es wurde kein Log geschrieben.
  • LOG_ERRORS_AND_ABOVE: Es werden nur Fehler protokolliert.
  • LOG_WARNINGS_AND_ABOVE: Es werden nur Fehler und Warnungen protokolliert.
  • LOG_ALL: Alles wird protokolliert, einschließlich erfolgreicher Logs wie INFO-Logs.

Abtastrate für erfolgreiche Logs

Wenn Sie die Logging-Ebene auf LOG_ALL festlegen, aber nicht jeden erfolgreichen Vorgang protokollieren möchten, können Sie eine Abtastrate angeben. So können Sie beispielsweise Logs regelmäßig auf einen erfolgreichen Status prüfen oder den Prozentsatz der erfolgreichen Logs sehen. Wenn Sie eine Stichprobenrate angeben, können Sie dies tun, ohne eine große Anzahl von INFO-Logeinträgen in Logging zu schreiben, was zu höheren Logging-Kosten führen kann.

Um eine Abtastrate anzugeben, legen Sie für info_log_sample_rate einen gültigen Gleitkommawert fest, der größer als 0 und kleiner oder gleich 1 ist. Die Stichprobenrate bestimmt die Wahrscheinlichkeit, dass ein INFO-Log in das Logging geschrieben wird. Der Standardwert ist 1 (alle INFO-Protokolle werden geschrieben).

Konfigurationen auf Dienstebene

Sie können Logging-Konfigurationen für bestimmte Dienste festlegen. Dadurch wird die globale Logging-Einstellung für diesen Dienst überschrieben. Sie können beispielsweise die globale Logging-Ebene auf LOG_WARNINGS_AND_ABOVE festlegen, die Logging-Ebene für den Dienst UserEventService aber auf LOG_ALL, um nach erfolgreichen Integrationen von Nutzerereignissen zu suchen.

Verwenden Sie das Objekt ServiceLoggingLevel, um detailliertere Protokollierungsebenen festzulegen.

Das Feld service_name akzeptiert die folgenden Werte:

  • CompletionService
  • ControlService
  • MerchantCenterStreaming
  • ModelService
  • PredictionService
  • ProductService
  • ServingConfigService
  • UserEventService

Fehlertypen

In diesem Abschnitt finden Sie Definitionen für Fehlertypen, die in Ihren Protokollen auftreten können:

  • MISSING_FIELD: Ein erforderlicher Feldwert ist nicht festgelegt. Bei einem Katalogelement fehlt beispielsweise der Titel.
  • INVALID_TIMESTAMP: Der Zeitstempel ist ungültig, z. B. zu weit in der Zukunft oder falsch formatiert.
  • FIELD_VALUE_TOO_SMALL: Der Wert im Feld liegt unter dem erforderlichen Minimum, z. B. ein negativer Preis.
  • INCORRECT_JSON_FORMAT: Die JSON-Datei in der Anfrage ist falsch formatiert, z. B. eine fehlende Klammer {.
  • INVALID_LANGUAGE_CODE: Der Sprachcode ist falsch formatiert.
  • FIELD_VALUE_EXCEEDED: Der Wert in dem Feld liegt über dem zulässigen Maximum.
  • INVALID_RESOURCE_ID: Die Ressourcen-ID ist ungültig. Beispielsweise ein nicht vorhandenes catalog_id im Ressourcennamen.
  • FIELD_SIZE_EXCEEDED: Die Anzahl der Einträge im Feld überschreitet das maximale Limit.
  • UNEXPECTED_FIELD: In einem Feld, das leer sein sollte, ist ein Wert vorhanden, z. B. eine Transaktion zum Aufrufen einer Detailseite.
  • INVALID_FORMAT: Das Feld ist nicht richtig formatiert, z. B. ein ungültiger String.
  • RESOURCE_ALREADY_EXISTS: Sie haben versucht, eine bereits vorhandene Ressource zu erstellen, z. B. ein zuvor erstelltes Katalogelement.
  • INVALID_API_KEY: Der API-Schlüssel stimmt nicht mit dem Projekt in Ihrer Anfrage überein.
  • INSUFFICIENT_PERMISSIONS: Sie sind nicht berechtigt, die Anfrage auszuführen. Dieser Fehler ist in der Regel auf das Fehlen einer erforderlichen IAM-Berechtigung zurückzuführen.
  • UNJOINED_WITH_CATALOG: Die Anfrage enthält eine ID für den Katalogelement, die nicht im Katalog vorhanden ist. Der Katalog muss auf dem neuesten Stand sein.
  • BATCH_ERROR: Die Anfrage enthält mehrere Fehler, zum Beispiel einen Inline-Import mit 10 Elementen, bei denen die Validierung aus verschiedenen Gründen fehlgeschlagen ist.
  • INACTIVE_RECOMMENDATION_MODEL: Sie haben ein Modell abgefragt, das nicht bereitgestellt werden kann.
  • ABUSIVE_ENTITY: Die mit der Anfrage verknüpfte Besucher-ID oder Nutzer-ID hat in kurzer Zeit eine ungewöhnliche Anzahl von Ereignissen gesendet.
  • FILTER_TOO_STRICT: Der Filter für Vorhersageanfragen blockiert alle Vorhersageergebnisse. Allgemein beliebte Artikel (nicht personalisiert) werden zurückgegeben, es sei denn, der Aufruf hat strictFiltering als "false" angegeben. In diesem Fall werden keine Artikel zurückgegeben. Einige häufige Gründe für dieses Problem:

    • Sie geben ein Filter-Tag an, das in Ihrem Katalog nicht vorhanden ist. Es kann bis zu einem Tag dauern, bis eine Aktualisierung des Filter-Tags wirksam wird.
    • Ihr Filter ist zu klein.

Messwerte zur Datenlast ansehen

So überwachen Sie die Datenaufnahme von Katalog- und Nutzerereignisdaten in der Google Cloud Console:

  1. Auf der Seite Monitoring finden Sie Fehlermesswerte für die Datenaufnahme von Katalog- und Nutzerereignissen.

    Zur Seite „Monitoring“

  2. Sobald das Datenuploadssystem erfolgreich ausgeführt wurde, können Sie auf der Seite Daten die Tabs Katalog und Ereignis verwenden, um aggregierte Informationen zu Ihrem Katalog aufzurufen, eine Vorschau Ihrer hochgeladenen Produkte zu sehen und Visualisierungen Ihrer Messwerte zur Nutzerereignisintegration aufzurufen.

    Zur Seite "Daten"

  3. Wenn Sie Benachrichtigungen erhalten möchten, wenn bei Ihren Datenuploads etwas schiefgeht, folgen Sie der Anleitung unter Cloud Monitoring-Benachrichtigungen einrichten.

Katalogdaten – Zusammenfassung

Über den Tab Katalog auf der Seite Daten können Sie allgemeine Datenstatistiken für jeden Katalogzweig aufrufen. Auf dieser Seite wird angezeigt, wie viele Produkte Sie importiert haben, wie viele auf Lager sind und wann Sie zuletzt Produkte für jeden Produktkatalogzweig importiert haben.

Sie können auch eine Vorschau der hochgeladenen Katalogelemente anzeigen und nach Produktfeldern filtern.

Sie können Daten in verschiedene Branches importieren, um Empfehlungen oder Suchergebnisse bereitzustellen und in der Vorschau anzuzeigen. Wenn Sie sich beispielsweise auf eine Feiertagsvorbereitung vorbereiten möchten, können Sie neue Katalogdaten in einen nicht standardmäßigen Branch hochladen und dafür sorgen, dass die Einzelhandelsergebnisse in Vertex AI Search korrekt generiert werden, bevor Sie sie auf Ihrer Website veröffentlichen.

Statistiken zur Nutzerereignisaufnahme

Für jede Art von Nutzerereignis sehen Sie auf dem Tab Ereignis, wie viele davon Sie aufgezeichnet haben, wie viele davon nicht mit einem Produkt verknüpft wurden (nicht verknüpfte Ereignisse) und wie sich die Zahlen von denen vorheriger Zeiträume unterscheiden. Sie können einen voreingestellten Zeitraum auswählen oder einen benutzerdefinierten Zeitraum eingeben.

Im Messwertdiagramm werden die im Zeitverlauf aufgenommenen Nutzerereignisse angezeigt, die Sie nach Nutzerereignistyp filtern können.

Datenqualitätsmesswerte

Auf der Seite Datenqualität sehen Sie Messwerte, die den Prozentsatz der Produkte und Nutzerereignisse anzeigen, die die empfohlenen Standards für die Datenqualität bei der Suche erfüllen. Auf dieser Seite können Sie prüfen, welche Daten Sie importieren oder aktualisieren müssen, um die Qualität der Suchergebnisse zu verbessern und die Leistungsstufen der Suche freizuschalten.

Weitere Informationen zu Leistungsstufen der Google Suche und zur Überprüfung der Qualität Ihrer Daten finden Sie unter Leistungsstufen der Google Suche freischalten.

Eine Liste aller Qualitätsmesswerte für Katalogdaten finden Sie unter Qualitätsmesswerte für Katalogdaten.

Alle Anforderungen und Empfehlungen für Nutzerereignisse für Empfehlungen und Suchanfragen finden Sie unter Anforderungen und Best Practices für Nutzerereignisse.

Nicht verknüpfte Ereignisse

Wenn sich ein Nutzerereignis oder eine API-Anfrage auf ein Produkt bezieht, das nicht in Vertex AI Search for Retail hochgeladen wurde, ist es ein nicht verknüpftes Ereignis. Nicht verknüpfte Nutzerereignisse werden weiterhin protokolliert und nicht verknüpfte Anfragen werden verarbeitet. Beide können jedoch nicht verwendet werden, um das Modell für zukünftige Vorhersagen zu optimieren. Aus diesem Grund sollten Sie gewährleisten, dass der Prozentsatz der nicht geloggten Ereignisse sowohl für Nutzerereignisse als auch für Vorhersageanfragen sehr niedrig ist.

Sie können den Prozentsatz der nicht verbundenen Nutzerereignisse auf dem Tab Ereignis auf der Seite Daten einsehen.

API-Fehler

Sie können ein Diagramm der API-Fehler im Zeitverlauf anzeigen, das nach Methodenname angezeigt wird. Klicken Sie dazu auf der Schaltflächenleiste der Seite Monitoring auf API-Messwerte ansehen.

API-Methodenaktivität überwachen

Öffnen Sie zum Visualisieren von Traffic, Fehlern und Latenz nach API-Methode die Seite Monitoring. Sie können einen voreingestellten Zeitraum auswählen oder einen benutzerdefinierten Zeitraum eingeben.

So rufen Sie weitere Details zu den einzelnen Grafiken auf:

  • Klicken Sie unter einem Diagramm auf einen Methodennamen, um ihn im Diagramm zu isolieren.
  • Bewegen Sie den Mauszeiger über eine Grafik, um ein Callout mit jeder Methode und ihren Werten zu diesem Zeitpunkt anzuzeigen.
  • Klicken Sie auf einen beliebigen Abschnitt des Diagramms und ziehen Sie ihn, um den Zeitraum zu heranzoomen.

Nächste Schritte