Überwachen und Fehler beheben

Auf dieser Seite wird beschrieben, wie Sie Informationen zu Fehlern abrufen können, die in Katalog- und Nutzerereignisimporte sowie in anderen API-Vorgängen in Vertex AI Search for Retail.

Informationen 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.

Zusammengefasste 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. Hier finden Sie Fehler im Zusammenhang mit dem Produktkatalog, Nutzerereignissen, Vervollständigungen von Empfehlungen, Suchergebnissen und Modelle. 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 abrufen

Den Status eines bestimmten Integrationsvorgangs können Sie in der Fenster Aktivitätsstatus:

  1. Gehen Sie zu Daten > in der Search for Retail-Konsole.

    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: Verfahren. 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.

Über diesen Link werden beispielsweise Logs für alle Fehler in Vertex AI Search for Retail im In der letzten Stunde:

Vertex AI Search for Retail-Logs öffnen

Informationen zum Konfigurieren, welche API-Protokolle geschrieben werden, finden Sie unter Konfigurieren Sie Logging.

Logging konfigurieren

Sie können konfigurieren, welche Dienstlogs in Logging geschrieben werden. Mit der Protokollierungskonfiguration 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 Protokolleintrag generiert werden. Einen Eintrag enthält Informationen wie die API-Methode, den Zeitpunkt ihres Aufrufs, Code 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.

Zum Aktualisieren von Logging-Konfigurationen benötigen Sie den Editor von Vertex AI Search for Retail Rolle.

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-Konsole die Seite Monitoring auf.

    Zur Seite „Monitoring“

  2. Klicken Sie auf Protokollierungskonfiguration.

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

  4. Um eine Konfiguration auf Dienstebene festzulegen, wählen Sie einen Dienst aus, aktualisieren und die entsprechende Protokollierungsebene auswählen. 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 zum Aktualisieren der Logging-Konfiguration die Methode loggingConfig.Patch. . Weitere Informationen finden Sie in der API-Referenz zu LoggingConfig.

    In diesem Beispiel wird mit loggingConfig.Patch die globale Logging-Konfiguration auf LOG_WARNINGS_AND_ABOVE festgelegt. Außerdem werden zwei Servicelevels Konfigurationen: „CatalogService“ ist auf „LOG_WARNINGS_AND_ABOVE“ festgelegt und ControlService ist auf LOG_ALL eingestellt.

    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. Die Die Einstellungen auf Protokollierungsebene bestimmen, welche von einer API-Methode generierten Logs in Logging geschrieben.

Wenn für eine API-Methode keine Logging-Konfiguration auf Dienstebene festgelegt ist, Einstellung auf Protokollierungsebene verwendet.

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

Im Feld logging_level können die folgenden Werte eingegeben werden:

  • LOGGING_DISABLED: Es wurde kein Log geschrieben.
  • LOG_ERRORS_AND_ABOVE: Es werden nur Fehler protokolliert.
  • LOG_WARNINGS_AND_ABOVE: Nur Fehler und Warnungen werden protokolliert.
  • 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 alle protokollieren möchten erfolgreiches Log führt, können Sie eine Abtastrate angeben. Beispielsweise könnten Sie entscheiden, um Logs regelmäßig auf eine erfolgreiche Statusbestätigung zu überprüfen oder eine Prozentsatz erfolgreicher Logs. Die Angabe einer Sampling-Rate kann dabei helfen. ohne eine große Anzahl von INFO Logeinträgen zu schreiben, Logging, was höhere Logging-Kosten verursachen 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. Zum Beispiel könnte das globale Logging-Ebene auf LOG_WARNINGS_AND_ABOVE festgelegt, aber mit Dienst-Logging-Ebene von UserEventService auf LOG_ALL, damit Sie prüfen können erfolgreiche Integrationen von Nutzerereignissen.

Verwenden Sie das Objekt ServiceLoggingLevel, um detailliertere Protokollierungsebenen festzulegen.

Im Feld service_name können die folgenden Werte eingegeben werden:

  • 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 zum Laden von Daten ansehen

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

  1. Sehen Sie sich Fehlermesswerte für Ihren Katalog und die Aufnahme von Nutzerereignisdaten auf der Seite Monitoring:

    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. Um Benachrichtigungen zu erstellen, die Sie informieren, wenn mit Ihren Daten etwas schiefgeht Uploads ist, folgen Sie den Schritten 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. Beispiel: können Sie zur Vorbereitung auf die Festtagssaison neue Katalogdaten für eine Standardzweig und dafür sorgen, dass Vertex AI Search for Retail-Ergebnisse korrekt generiert werden bevor Sie es 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 die den empfohlenen Qualitätsstandards für die Suche entsprechen. 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 Suchleistungsstufen und zur Überprüfung der Weitere Informationen finden Sie unter Suchleistungsstufen aktivieren.

Eine Liste aller Katalogdatenqualitätsmesswerte finden Sie unter Messwerte zur Katalogdatenqualität:

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, 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

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