Memantau dan memecahkan masalah

Halaman ini menjelaskan cara mendapatkan informasi tentang error yang telah terjadi dalam impor peristiwa pengguna dan katalog serta dalam operasi API lainnya di Vertex AI Search untuk retail.

Untuk mendapatkan bantuan terkait penyiapan pemberitahuan, lihat Menyiapkan pemberitahuan Cloud Monitoring.

Pengantar

Memberikan informasi katalog dan peristiwa pengguna yang akurat ke API penting untuk mendapatkan hasil berkualitas tertinggi. Memantau dan memahami sumber error akan membantu Anda menemukan dan memperbaiki error apa pun di situs Anda.

Melihat error integrasi gabungan

Untuk melihat error gabungan yang dihasilkan oleh proses upload data dan permintaan prediksi atau penelusuran, gunakan halaman Pemantauan.

Halaman ini menampilkan semua error untuk Vertex AI Search for retail API. Anda dapat melihat error yang terkait dengan katalog produk, peristiwa pengguna, prediksi rekomendasi, hasil penelusuran, dan model. Sistem juga mencatat error dari impor, seperti baris yang salah format dalam file Cloud Storage Anda. Sistem mencatat hingga 100 error per file impor. Anda dapat menentukan jangka waktu error ditampilkan dan memfilternya berdasarkan jenis error.

Anda dapat mengklik setiap error untuk melihat log error tersebut di Cloud Logging.

Anda dapat membuka log error satu per satu dengan meluaskan log tersebut. Log error memberikan detail selengkapnya tentang permintaan, termasuk payload permintaan dan respons, serta detail error. Informasi ini dapat membantu Anda menentukan lokasi panggilan metode yang salah di situs Anda.

Untuk error JSON yang tidak valid, Anda bisa mendapatkan informasi selengkapnya tentang masalah tersebut dengan memperluas kolom status.

Melihat status untuk operasi integrasi tertentu

Anda dapat melihat status operasi integrasi tertentu di jendela Status aktivitas:

  1. Buka halaman Data> di konsol Penelusuran untuk Retail.

    Buka halaman Data

  2. Klik Status aktivitas.

    Jendela Status aktivitas menampilkan status operasi yang berjalan lama pada katalog produk, peristiwa pengguna, dan kontrol Anda.

    Anda dapat memeriksa error untuk operasi integrasi tertentu di jendela ini.

  3. Klik Lihat log di kolom Detail operasi apa pun yang mengalami error untuk memeriksa file lognya di Cloud Logging.

Lihat log di Cloud Logging

Untuk membuka file log secara langsung di Cloud Logging, gunakan prosedur berikut. Anda harus memiliki peran Logs Viewer (roles/logging.viewer) untuk melihat log.

  1. Buka Logs Explorer di konsol Google Cloud. Buka Logs Explorer

  2. Pilih project Vertex AI Search untuk retail dari pemilih project.

  3. Klik menu drop-down Resource, lalu pilih Consumed API > Cloud Retail.

Untuk mengetahui informasi selengkapnya tentang Logs Explorer, lihat Melihat log menggunakan Logs Explorer.

Misalnya, link ini akan membuka log untuk semua error Vertex AI Search untuk retail dalam satu jam terakhir:

Membuka Vertex AI Search untuk log retail

Untuk mengonfigurasi log API yang ditulis, lihat Mengonfigurasi Logging.

Mengonfigurasi Logging

Anda dapat mengonfigurasi log layanan mana yang ditulis ke Logging. Konfigurasi logging menyediakan cara untuk menetapkan tingkat keparahan saat menulis log, mengaktifkan atau menonaktifkan logging, dan mengganti setelan logging default untuk layanan tertentu.

Setiap permintaan API yang dibuat pengguna akhir dapat menghasilkan satu entri logging. Entri berisi informasi seperti metode API, saat dipanggil, kode respons, dan isi permintaan dan respons. Konfigurasi logging project menentukan jenis log yang dihasilkan oleh API yang ditulis ke Logging, dengan opsi untuk menentukan konfigurasi logging secara terperinci untuk layanan API tertentu.

Untuk memperbarui konfigurasi logging, Anda memerlukan peran editor Vertex AI Search untuk retail.

Anda dapat menggunakan konsol atau LoggingConfig API untuk mengonfigurasi Logging.

Konsol

Untuk memperbarui konfigurasi logging di konsol, ikuti langkah-langkah berikut:

  1. Buka halaman Monitoring di konsol Penelusuran untuk Retail.

    Buka halaman Monitoring

  2. Klik Logging configuration.

  3. Untuk menetapkan konfigurasi logging global, pilih level logging. Jika Anda memilih LOG_ALL, masukkan juga frekuensi sampling untuk log yang berhasil.

  4. Untuk menetapkan konfigurasi tingkat layanan, pilih layanan yang akan diupdate, lalu pilih tingkat logging-nya. Setelan ini menggantikan konfigurasi logging global.

curl

Untuk memperbarui konfigurasi logging menggunakan API, gunakan resource LoggingConfig. Lihat referensi API LoggingConfig.

  1. Untuk melihat konfigurasi logging saat ini, gunakan loggingConfig.Get.

    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: ID project Anda.
  2. Untuk memperbarui konfigurasi logging, gunakan metode loggingConfig.Patch. Untuk informasi selengkapnya, lihat referensi API LoggingConfig.

    Contoh ini menggunakan loggingConfig.Patch untuk menetapkan konfigurasi logging global ke LOG_WARNINGS_AND_ABOVE. Konfigurasi ini juga menetapkan dua konfigurasi tingkat layanan: CatalogService disetel ke LOG_WARNINGS_AND_ABOVE dan ControlService disetel ke LOG_ALL.

    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"
                }
            }
          ]
        }'
    

Level logging

Hanya log dari beberapa tingkat keparahan yang ditulis ke Logging. Setelan tingkat logging menentukan log mana yang dihasilkan oleh metode API yang ditulis ke Logging.

Jika tidak ada konfigurasi logging tingkat layanan yang ditetapkan untuk metode API, setelan tingkat logging global akan digunakan.

Setelan level logging default adalah LOG_WARNINGS_AND_ABOVE.

Kolom logging_level menerima nilai berikut:

  • LOGGING_DISABLED: Tidak ada log yang ditulis.
  • LOG_ERRORS_AND_ABOVE: Hanya mencatat error.
  • LOG_WARNINGS_AND_ABOVE: Hanya mencatat error dan peringatan.
  • LOG_ALL: Mencatat semuanya ke dalam log, termasuk log yang berhasil seperti log INFO.

Frekuensi sampling untuk log yang berhasil

Jika Anda menetapkan setelan level logging ke LOG_ALL, tetapi tidak ingin mencatat setiap log yang berhasil, Anda dapat menentukan frekuensi sampling. Misalnya, Anda mungkin memutuskan untuk memantau log secara berkala untuk mengetahui konfirmasi status yang berhasil, atau ingin melihat persentase log yang berhasil. Menentukan frekuensi sampel dapat membantu Anda melakukannya tanpa menulis entri log INFO dalam volume tinggi ke Logging, yang dapat menimbulkan biaya Logging yang lebih tinggi.

Untuk menentukan frekuensi sampling, tetapkan info_log_sample_rate ke nilai float yang valid yang lebih besar dari 0 dan kurang dari atau sama dengan 1. Frekuensi sampling menentukan kemungkinan log INFO ditulis ke Logging. Nilai default-nya adalah 1 (semua log INFO ditulis).

Konfigurasi tingkat layanan

Anda dapat menetapkan konfigurasi logging untuk layanan tertentu. Tindakan ini akan menimpa setelan logging global untuk layanan tersebut. Misalnya, Anda mungkin menetapkan level logging global ke LOG_WARNINGS_AND_ABOVE, tetapi menetapkan level logging layanan UserEventService ke LOG_ALL sehingga Anda dapat memeriksa integrasi peristiwa pengguna yang berhasil.

Gunakan objek ServiceLoggingLevel untuk menetapkan level logging terperinci.

Kolom service_name menerima nilai berikut:

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

Jenis error

Bagian ini memberikan definisi untuk jenis error yang dapat muncul dalam log Anda:

  • MISSING_FIELD: Nilai kolom yang wajib diisi belum ditetapkan; misalnya, judul item katalog belum ditetapkan.
  • INVALID_TIMESTAMP: Stempel waktu tidak valid, seperti terlalu jauh di masa depan, atau tidak diformat dengan benar.
  • FIELD_VALUE_TOO_SMALL: Nilai dalam kolom lebih rendah dari nilai minimum yang diwajibkan; misalnya, harga negatif.
  • INCORRECT_JSON_FORMAT: Format JSON dalam permintaan salah, seperti tidak dilengkapi { bracket.
  • INVALID_LANGUAGE_CODE: Format kode bahasa salah.
  • FIELD_VALUE_EXCEEDED: Nilai dalam kolom lebih tinggi dari nilai maksimum yang diizinkan.
  • INVALID_RESOURCE_ID: ID resource tidak valid; misalnya, catalog_id yang tidak ada dalam nama resource.
  • FIELD_SIZE_EXCEEDED: Jumlah entri di kolom melebihi batas maksimum.
  • UNEXPECTED_FIELD: Kolom yang seharusnya kosong memiliki nilai; misalnya, transaksi terkait halaman detail melihat peristiwa.
  • INVALID_FORMAT: Format kolom salah, seperti string yang salah formatnya
  • RESOURCE_ALREADY_EXISTS: Anda mencoba membuat resource yang sudah ada, seperti item katalog yang sebelumnya sudah dibuat.
  • INVALID_API_KEY: Kunci API tidak cocok dengan project dalam permintaan Anda.
  • INSUFFICIENT_PERMISSIONS: Anda tidak memiliki izin untuk mengeksekusi permintaan; error ini biasanya berkaitan dengan kurangnya izin IAM yang diperlukan.
  • UNJOINED_WITH_CATALOG: Permintaan menyertakan ID item katalog yang tidak ada dalam katalog. Pastikan katalog Anda selalu ter-update.
  • BATCH_ERROR: Terdapat beberapa error dalam permintaan; misalnya, impor sebaris dengan 10 item tidak dapat divalidasi karena alasan yang berbeda.
  • INACTIVE_RECOMMENDATION_MODEL: Anda membuat kueri model yang belum siap ditayangkan.
  • ABUSIVE_ENTITY: ID pengunjung atau ID pengguna yang terkait dengan permintaan telah mengirim sejumlah peristiwa yang tidak normal dalam jangka waktu singkat.
  • FILTER_TOO_STRICT: Filter permintaan prediksi memblokir semua hasil prediksi. Item populer umum (tidak dipersonalisasi) akan ditampilkan, kecuali jika panggilan menentukan strictFiltering sebagai salah, dalam hal ini tidak ada item yang ditampilkan. Beberapa alasan umum terjadinya masalah ini:

    • Anda menentukan tag filter yang tidak ada di katalog. Mungkin perlu waktu hingga satu hari agar pembaruan tag filter diterapkan.
    • Filter Anda terlalu sempit.

Melihat metrik pemuatan data

Untuk memantau penyerapan data peristiwa pengguna dan katalog di konsol Google Cloud, ikuti langkah-langkah berikut:

  1. Lihat metrik error untuk penyerapan data peristiwa pengguna dan katalog Anda di halaman Pemantauan.

    Buka halaman Monitoring

  2. Setelah sistem upload data berhasil berjalan, gunakan tab Katalog dan Peristiwa di halaman Data untuk melihat informasi gabungan tentang katalog, melihat pratinjau produk yang diupload, dan melihat visualisasi metrik integrasi peristiwa pengguna.

    Buka halaman Data

  3. Untuk membuat pemberitahuan yang memberi tahu Anda jika terjadi masalah dengan upload data, ikuti prosedur di Menyiapkan pemberitahuan Cloud Monitoring.

Ringkasan data katalog

Gunakan tab Katalog di halaman Data untuk melihat statistik data tingkat tinggi untuk setiap cabang katalog. Halaman ini menampilkan jumlah produk yang telah Anda impor, jumlah produk yang tersedia, dan waktu terakhir Anda mengimpor produk untuk setiap cabang katalog produk.

Anda juga dapat melihat pratinjau item katalog yang telah diupload, dan memfilter berdasarkan kolom produk.

Anda dapat mengimpor data ke cabang yang berbeda sebagai cara untuk melakukan staging dan melihat pratinjau rekomendasi atau hasil penelusuran. Misalnya, untuk mempersiapkan musim liburan, Anda dapat mengupload data katalog baru ke cabang non- default dan memastikan Vertex AI Search untuk hasil retail dihasilkan dengan benar sebelum ditayangkan di situs Anda.

Statistik perekaman peristiwa pengguna

Untuk setiap jenis peristiwa pengguna, Anda dapat melihat di tab Peristiwa jumlah peristiwa yang telah dicatat, jumlah peristiwa yang tidak dapat dikaitkan dengan produk (peristiwa yang tidak tergabung), dan perbedaan jumlahnya dari periode sebelumnya. Anda dapat memilih jangka waktu standar atau memasukkan rentang waktu kustom.

Grafik metrik menampilkan peristiwa pengguna yang diserap dari waktu ke waktu, yang dapat Anda filter berdasarkan jenis peristiwa pengguna.

Metrik kualitas data

Di halaman Kualitas data, Anda dapat melihat metrik yang menampilkan persentase produk dan peristiwa pengguna yang memenuhi standar kualitas data yang direkomendasikan untuk penelusuran. Gunakan halaman ini untuk menilai data yang perlu Anda impor atau perbarui guna meningkatkan kualitas hasil penelusuran dan membuka tingkat performa penelusuran.

Untuk informasi selengkapnya tentang tingkat performa penelusuran dan memeriksa kualitas data Anda, lihat Memanfaatkan tingkat performa penelusuran.

Untuk daftar semua metrik kualitas data katalog, lihat Metrik kualitas data katalog.

Untuk semua persyaratan dan rekomendasi peristiwa pengguna untuk rekomendasi dan penelusuran, lihat Praktik terbaik dan persyaratan peristiwa pengguna.

Peristiwa yang belum digabungkan

Jika peristiwa pengguna atau permintaan API merujuk ke produk yang belum diupload ke Vertex AI Search untuk retail, peristiwa tersebut adalah peristiwa yang tidak tergabung. Peristiwa pengguna yang tidak bergabung masih dicatat ke dalam log, dan permintaan yang tidak bergabung ditangani, tetapi keduanya tidak dapat digunakan untuk lebih meningkatkan model untuk prediksi mendatang. Oleh karena itu, Anda harus memastikan bahwa persentase peristiwa yang tidak dicatat ke dalam log sangat rendah untuk peristiwa pengguna dan permintaan prediksi.

Anda dapat melihat persentase peristiwa pengguna yang tidak bergabung di tab Peristiwa di halaman Data.

Error API

Anda dapat melihat grafik error API dari waktu ke waktu, yang ditampilkan berdasarkan nama metode, dengan mengklik Lihat metrik API di panel tombol pada halaman Monitoring.

Memantau aktivitas metode API

Untuk visualisasi traffic, error, dan latensi menurut metode API, buka halaman Monitoring. Anda dapat memilih jangka waktu standar atau memasukkan rentang waktu kustom.

Untuk melihat detail selengkapnya tentang setiap grafik:

  • Di bawah grafik, klik nama metode untuk mengisolasinya dalam grafik.
  • Arahkan kursor ke grafik untuk melihat info dengan setiap metode dan nilainya pada saat itu.
  • Klik dan tarik bagian grafik mana pun untuk memperbesar periode waktu tersebut.

Langkah selanjutnya