Überwachen und Fehler beheben

Auf dieser Seite wird beschrieben, wie Sie Informationen zu Fehlern abrufen, die beim Import von Katalogen und Nutzerereignissen und in anderen API-Vorgängen in Vertex AI Search für den Einzelhandel aufgetreten sind.

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

Einleitung

Die Bereitstellung korrekter Kataloginformationen und Nutzerereignisse für die API ist wichtig, um qualitativ hochwertige Ergebnisse zu erzielen. Wenn Sie die Fehlerquelle überwachen und verstehen, können Sie Fehler auf Ihrer Website finden und beheben.

Aggregierte Integrationsfehler ansehen

Die aggregierten Fehler, die durch Ihre Datenuploadprozesse und Vorhersage- oder Suchanfragen generiert werden, finden Sie auf der Seite Monitoring.

Auf dieser Seite werden alle Fehler für die Vertex AI Search for Retail API angezeigt. Sie können Fehler im Zusammenhang mit dem Produktkatalog, Nutzerereignissen, Empfehlungsvorhersagen, Suchergebnissen und Modellen aufrufen. 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 für einen bestimmten Integrationsvorgang ansehen

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

  1. Rufe in der Search for Retail-Konsole die Seite Daten> auf.

    Zur Seite „Daten“

  2. Klicken Sie auf Aktivitätsstatus.

    Im Fenster Aktivitätsstatus wird der Status von Vorgängen mit langer Ausführungszeit im Produktkatalog sowie bei Nutzerereignissen und Steuerelementen angezeigt.

    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 „Loganzeige“ (roles/logging.viewer), um Logs anzusehen.

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

  2. Wählen Sie in der Projektauswahl Ihr Projekt in Vertex AI Search für den Einzelhandel aus.

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

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

Durch diesen Link werden beispielsweise Logs für alle Vertex AI Search für Fehler im Einzelhandel in der letzten Stunde geöffnet:

Vertex AI Search für Einzelhandelslogs öffnen

Informationen zum Konfigurieren der API-Logs finden Sie unter Logging konfigurieren.

Logging konfigurieren

Sie können konfigurieren, welche Dienstlogs in Logging geschrieben werden. Die Logging-Konfiguration bietet eine Möglichkeit, die Wichtigkeitsstufen für das Schreiben von Logs festzulegen, das Logging zu aktivieren oder zu deaktivieren und die Standard-Logging-Einstellungen für bestimmte Dienste zu überschreiben.

Für jede API-Anfrage eines Endnutzers kann ein Logging-Eintrag generiert werden. Ein Eintrag enthält Informationen wie die API-Methode, den Zeitpunkt des Aufrufs, den Antwortcode sowie den Anfrage- und Antworttext. Die Logging-Konfiguration eines Projekts gibt an, welche Arten von Logs, die von der API generiert werden, in Logging geschrieben werden. Die Möglichkeit, Logging-Konfigurationen für bestimmte API-Dienste detailliert anzugeben, ist möglich.

Zum Aktualisieren von Logging-Konfigurationen benötigen Sie die Bearbeiterrolle für Vertex AI Search für den Einzelhandel.

Sie können Logging mit der Console oder der LoggingConfig API konfigurieren.

Console

So aktualisieren Sie Logging-Konfigurationen in der Console:

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

    Zur Seite „Monitoring“

  2. Klicken Sie auf Logging-Konfiguration.

  3. Wählen Sie zum Festlegen einer globalen Logging-Konfiguration eine Logging-Ebene aus. Wenn Sie LOG_ALL auswählen, geben Sie auch eine Abtastrate für erfolgreiche Logs ein.

  4. Wenn Sie eine Konfiguration auf Dienstebene festlegen möchten, wählen Sie einen Dienst aus, der aktualisiert werden soll, und legen Sie seine Logging-Ebene fest. Diese Einstellung überschreibt die globale Logging-Konfiguration.

curl

Verwenden Sie die Ressource LoggingConfig, um Logging-Konfigurationen mithilfe 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 findest du in der LoggingConfig API-Referenz.

    In diesem Beispiel wird loggingConfig.Patch verwendet, um die globale Logging-Konfiguration auf LOG_WARNINGS_AND_ABOVE zu setzen. 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

Nur Logs mit bestimmten Schweregraden werden in Logging geschrieben. Die Einstellungen auf Logging-Ebene bestimmen, welche Logs, die von einer API-Methode generiert werden, in Logging geschrieben werden.

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

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

Für das Feld logging_level sind folgende Werte zulässig:

  • LOGGING_DISABLED: Kein Log geschrieben.
  • LOG_ERRORS_AND_ABOVE: Protokolliert nur Fehler.
  • LOG_WARNINGS_AND_ABOVE: Protokolliert nur Fehler und Warnungen.
  • LOG_ALL: Protokolliert alles, auch erfolgreiche Logs wie INFO-Logs.

Abtastrate für erfolgreiche Logs

Wenn Sie die Einstellung für die Logging-Ebene auf LOG_ALL festgelegt haben, aber nicht jedes erfolgreiche Log protokollieren möchten, können Sie eine Stichprobenrate angeben. Sie können beispielsweise festlegen, dass Logs regelmäßig auf erfolgreiche Statusbestätigung geprüft werden oder der Prozentsatz der erfolgreichen Logs angezeigt werden soll. Wenn Sie eine Abtastrate angeben, können Sie dies erreichen, ohne eine große Anzahl von INFO-Logeinträgen in Logging zu schreiben, da dies zu höheren Logging-Kosten führen kann.

Zum Angeben einer Abtastrate setzen Sie info_log_sample_rate auf einen gültigen Gleitkommawert größer als 0 und kleiner oder gleich 1. Die Abtastrate bestimmt, mit welcher Wahrscheinlichkeit ein INFO-Log in Logging geschrieben wird. Der Standardwert ist 1 (alle INFO-Logs werden geschrieben).

Service-Level-Konfigurationen

Sie können Logging-Konfigurationen für bestimmte Dienste festlegen. Dadurch wird die globale Logging-Einstellung für diesen Dienst überschrieben. Beispiel: Sie haben die globale Logging-Ebene auf LOG_WARNINGS_AND_ABOVE und die Logging-Ebene des Dienstes UserEventService auf LOG_ALL gesetzt, um nach erfolgreichen Nutzerereignisintegrationen zu suchen.

Verwenden Sie das Objekt ServiceLoggingLevel, um detaillierte Logging-Ebenen festzulegen.

Für das Feld service_name sind folgende Werte zulässig:

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

Fehlertypen

Dieser Abschnitt enthält Definitionen für Fehlertypen, die in Ihren Logs 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 Aufnahme Ihrer Katalog- und Nutzerereignisdaten in die Google Cloud Console:

  1. Auf der Seite Monitoring können Sie Fehlermesswerte für die Aufnahme Ihres Katalogs und Ihrer Nutzerereignisdaten ansehen.

    Zur Seite „Monitoring“

  2. Wenn das System zum Hochladen von Daten erfolgreich ausgeführt wird, können Sie auf den Tabs Katalog und Ereignis auf der Seite Daten zusammengefasste Informationen zu Ihrem Katalog aufrufen, eine Vorschau Ihrer hochgeladenen Produkte ansehen und Visualisierungen Ihrer Messwerte für die Einbindung Ihrer Nutzerereignisse ansehen.

    Zur Seite "Daten"

  3. Folgen Sie der Anleitung unter Cloud Monitoring-Benachrichtigungen einrichten, um Benachrichtigungen zu erstellen, die Sie informieren, wenn bei Ihren Datenuploads etwas schiefgeht.

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 Zweige importieren, um Empfehlungen oder Suchergebnisse bereitzustellen und als Vorschau anzusehen. Zur Vorbereitung auf eine Festtagssaison können Sie beispielsweise neue Katalogdaten in einen nicht standardmäßigen Zweig hochladen und dafür sorgen, dass die Ergebnisse von Vertex AI Search für den Einzelhandel 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 mit dem Prozentsatz der Produkte und Nutzerereignisse, die den empfohlenen Datenqualitätsstandards für die Suche entsprechen. Bewerten Sie auf dieser Seite, welche Daten Sie importieren oder aktualisieren müssen, um die Qualität der Suchergebnisse zu verbessern und Stufen für die Suchleistung freizuschalten.

Weitere Informationen zu Stufen für die Suchleistung und zum Prüfen der Qualität Ihrer Daten finden Sie unter Stufen für die Suchleistung aktivieren.

Eine Liste aller Messwerte zur Katalogdatenqualität finden Sie unter Messwerte zur Katalogdatenqualität.

Alle Anforderungen an Nutzerereignisse und Empfehlungen für Empfehlungen und die Suche finden Sie unter Anforderungen und Best Practices für Nutzerereignisse.

Nicht verknüpfte Ereignisse

Wenn ein Nutzerereignis oder eine API-Anfrage auf ein Produkt verweist, das nicht in Vertex AI Search für den Einzelhandel 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

Wenn Sie ein Diagramm der API-Fehler im Zeitverlauf sehen möchten, das nach Methodenname angezeigt wird, klicken Sie in der Schaltflächenleiste der Seite Monitoring auf API-Messwerte ansehen.

API-Methodenaktivität überwachen

Visualisierungen von Traffic, Fehlern und Latenz nach API-Methode finden Sie auf der 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