Bagikan melalui


Memantau permintaan kueri di Azure AI Search

Artikel ini menjelaskan cara mengukur performa dan volume kueri menggunakan metrik bawaan dan pengelogan sumber daya. Ini juga menjelaskan cara mendapatkan string kueri yang dimasukkan oleh pengguna aplikasi.

Portal Microsoft Azure menunjukkan metrik dasar tentang latensi kueri, beban kueri (QPS), dan pembatasan. Data historis yang masuk ke metrik ini dapat diakses di portal selama 30 hari. Untuk retensi yang lebih lama, atau untuk melaporkan data operasional dan string kueri, Anda harus menambahkan pengaturan diagnostik yang menentukan opsi penyimpanan untuk mempertahankan operasi dan metrik yang dicatat. Kami merekomendasikan ruang kerja Log Analytics sebagai tujuan untuk operasi yang dicatat. Kueri Kusto dan eksplorasi data menargetkan ruang kerja Analitik Log.

Kondisi yang memaksimalkan integritas pengukuran data meliputi:

  • Menggunakan layanan yang dapat ditagih (layanan yang dibuat di tingkat Dasar atau Standar). Layanan gratis dibagikan oleh beberapa pelanggan, yang memperkenalkan sejumlah volatilitas sebagai pergeseran beban.

  • Menggunakan satu replika dan partisi jika memungkinkan untuk membuat lingkungan yang terisolasi dan terkontrol. Jika Anda menggunakan beberapa replika, metrik kueri dirata-ratakan di beberapa node, yang dapat menurunkan presisi hasil. Demikian pula, beberapa partisi berarti bahwa data dibagi, dengan potensi bahwa beberapa partisi mungkin memiliki data yang berbeda jika pengindeksan juga sedang berlangsung. Saat Anda menyetel performa kueri, satu simpul dan partisi memberikan lingkungan yang lebih stabil untuk pengujian.

Tip

Dengan kode sisi klien tambahan dan Application Insights, Anda juga dapat menangkap data clickthrough untuk wawasan yang lebih mendalam tentang apa yang menarik minat pengguna aplikasi Anda. Untuk informasi selengkapnya, lihat Mencari analitik lalu lintas.

Volume kueri (QPS)

Volume diukur sebagai Kueri Pencarian Per Detik (QPS), metrik bawaan yang dapat dilaporkan sebagai nilai rata-rata, jumlah, minimum, atau maksimum kueri yang dijalankan dalam satu menit. Interval satu menit (TimeGrain = "PT1M") untuk metrik diperbaiki dalam sistem.

Untuk mempelajari selengkapnya tentang metrik SearchQueriesPerSecond, lihat Kueri pencarian per detik.

Performa Kueri

Performa kueri di seluruh layanan diukur sebagai latensi pencarian dan kueri yang dibatasi.

Latensi pencarian

Latensi pencarian menunjukkan berapa lama waktu yang dibutuhkan kueri untuk diselesaikan. Untuk mempelajari selengkapnya tentang metrik Latensi Pencarian, lihat Latensi pencarian.

Pertimbangkan contoh metrik Latensi Pencarian berikut: 86 kueri diambil sampelnya, dengan durasi rata-rata 23,26 milidetik. Minimal 0 menunjukkan beberapa kueri dihilangkan. Kueri terlama membutuhkan 1000 milidetik untuk diselesaikan. Total waktu eksekusi adalah 2 detik.

Agregasi latensi

Kueri yang dibatasi

Kueri yang dibatasi mengacu pada kueri yang dihilangkan alih-alih diproses. Dalam kebanyakan kasus, pembatasan adalah bagian normal dari menjalankan layanan. Ini belum tentu merupakan indikasi bahwa ada sesuatu yang salah. Untuk mempelajari selengkapnya tentang metrik ThrottledSearchQueriesPercentage, lihat Persentase kueri pencarian yang dibatasi.

Dalam cuplikan layar berikut, angka pertama adalah jumlah (atau jumlah metrik yang dikirim ke log). Agregasi lain, yang muncul di bagian atas atau saat mengarahkan mouse ke atas metrik, termasuk rata-rata, maksimum, dan total. Dalam sampel ini, tidak ada permintaan yang dihilangkan.

Agregasi yang dibatasi

Menjelajahi metrik di portal

Untuk melihat sekilas jumlah yang ada saat ini, tab Pemantauan pada halaman Ringkasan layanan memperlihatkan tiga metrik (Latensi pencarian, Kueri pencarian per detik (per unit pencarian), Persentase Kueri Pencarian yang Dibatasi) selama interval tetap yang diukur dalam jam, hari, dan minggu, dengan opsi mengubah jenis agregasi.

Untuk penjelajahan yang lebih dalam, buka penjelajah metrik dari menu Pemantauan sehingga Anda dapat melapisi, memperbesar, dan memvisualisasikan data untuk menjelajahi tren atau anomali. Pelajari selengkapnya tentang penjelajah metrik dengan menyelesaikan tutorial tentang membuat bagan metrik ini.

  1. Di bawah bagian Pemantauan, pilih Metrik untuk membuka penjelajah metrik dengan cakupan yang diatur ke layanan pencarian Anda.

  2. Di Metrik, pilih salah satu dari daftar tarik turun dan tinjau daftar agregasi yang tersedia untuk jenis yang dipilih. Agregasi menentukan bagaimana nilai yang dikumpulkan diambil sampelnya setiap interval waktu.

    Penjelajah metrik untuk metrik QPS

  3. Di pojok kanan atas, atur interval waktu.

  4. Pilih visualisasi. Defaultnya adalah diagram garis.

  5. Lapisan lebih banyak agregasi dengan memilih Tambahkan metrik dan pilih agregasi yang berbeda.

  6. Perbesar area yang diinginkan pada diagram garis. Letakkan penunjuk mouse di awal area, pilih dan tahan tombol mouse kiri, seret ke sisi lain area, dan lepaskan tombol. Bagan memperbesar rentang waktu tersebut.

Menampilkan string kueri yang dimasukkan oleh pengguna

Saat Anda mengaktifkan pengelogan sumber daya, sistem menangkap permintaan kueri dalam tabel AzureDiagnostics. Sebagai prasyarat, Anda harus sudah menentukan tujuan untuk operasi yang dicatat, baik ruang kerja analitik log atau opsi penyimpanan lainnya.

  1. Di bawah bagian Pemantauan, pilih Log untuk membuka jendela kueri kosong di Analitik Log.

  2. Jalankan ekspresi berikut untuk operasi pencarian Query.Search , mengembalikan kumpulan hasil tabular yang terdiri dari nama operasi, string kueri, indeks yang dikueri, dan jumlah dokumen yang ditemukan. Dua pernyataan terakhir mengecualikan string kueri yang terdiri dari pencarian kosong atau tidak ditentukan melalui indeks sampel, yang mengurangi gangguan dalam hasil Anda.

       AzureDiagnostics
    | project OperationName, Query_s, IndexName_s, Documents_d
    | where OperationName == "Query.Search"
    | where Query_s != "?api-version=2023-11-01&search=*"
    | where IndexName_s != "realestate-us-sample-index"
    
  3. Secara opsional, atur filter Kolom di Query_s untuk mencari sintaks atau string tertentu. Misalnya, Anda dapat memfilter sama dengan ?api-version=2023-11-01&search=*&%24filter=HotelName.

    String kueri yang dicatat

Meskipun teknik ini berfungsi untuk investigasi ad hoc, membuat laporan memungkinkan Anda mengonsolidasikan dan menyajikan string kueri dalam tata letak yang lebih kondusif untuk analisis.

Mengidentifikasi kueri yang sudah berjalan lama

Tambahkan kolom durasi guna mendapatkan angka untuk semua kueri, bukan hanya yang diambil sebagai metrik. Mengurutkan data ini memperlihatkan kepada Anda kueri mana yang membutuhkan waktu paling lama untuk diselesaikan.

  1. Di bawah bagian Pemantauan, pilih Log untuk informasi log yang akan dikueri.

  2. Jalankan kueri dasar berikut untuk menampilkan kueri, diurutkan berdasarkan durasi dalam milidetik. Kueri terlama ada di bagian atas.

    AzureDiagnostics
    | project OperationName, resultSignature_d, DurationMs, Query_s, Documents_d, IndexName_s
    | where OperationName == "Query.Search"
    | sort by DurationMs
    

    Mengurutkan kueri berdasarkan durasi

Membuat peringatan metrik

Pemberitahuan metrik menetapkan ambang batas untuk mengirim pemberitahuan atau memicu tindakan korektif yang Anda tentukan sebelumnya. Anda dapat membuat pemberitahuan yang terkait dengan eksekusi kueri, tetapi Anda juga dapat membuatnya untuk kesehatan sumber daya, perubahan konfigurasi layanan pencarian, eksekusi keterampilan, dan pemrosesan dokumen (pengindeksan).

Semua ambang batas ditentukan pengguna, jadi Anda harus memiliki gambaran tentang tingkat aktivitas apa yang harus memicu pemberitahuan.

Untuk pemantauan kueri, biasanya membuat pemberitahuan metrik untuk latensi pencarian dan kueri yang dibatasi. Jika Anda tahu kapan kueri dihilangkan, Anda dapat mencari solusi yang mengurangi beban atau meningkatkan kapasitas. Misalnya, jika kueri yang dibatasi meningkat selama pengindeksan, Anda dapat menundanya hingga aktivitas kueri mereda.

Jika Anda mendorong batas konfigurasi partisi replika tertentu, menyiapkan pemberitahuan untuk ambang batas volume kueri (QPS) juga berguna.

  1. Di bawah Pemantauan, pilih Pemberitahuan lalu pilih Buat aturan pemberitahuan.

  2. Di bawah Kondisi, pilih Tambahkan.

  3. Mengonfigurasi logika sinyal. Untuk jenis sinyal, pilih metrik lalu pilih sinyal.

  4. Setelah memilih sinyal, Anda dapat menggunakan bagan guna memvisualisasikan data historis untuk keputusan berdasarkan informasi tentang cara melanjutkan pengaturan kondisi.

  5. Berikutnya, gulir ke bawah ke logika Pemberitahuan. Untuk bukti konsep, Anda dapat menentukan nilai yang rendah yang dibuat-buat untuk tujuan pengujian.

  6. Berikutnya, tentukan atau buat Grup Tindakan. Ini adalah respons untuk digunakan saat ambang batas terpenuhi. Respons ini dapat berupa pemberitahuan push atau respons otomatis.

  7. Terakhir, tentukan Detail pemberitahuan. Beri nama dan jelaskan pemberitahuan, tetapkan nilai tingkat kepentingan, dan tentukan jika Anda akan membuat aturan dalam status diaktifkan atau dinonaktifkan.

Jika Anda menentukan pemberitahuan email, Anda menerima email dari "Microsoft Azure" dengan baris subjek "Azure: Activated Severity: 3 <your rule name>".

Langkah berikutnya

Jika Anda belum melakukannya, tinjau dasar-dasar pemantauan layanan pencarian untuk mempelajari tentang seluruh kemampuan pengawasan.