Mendapatkan Status Pengindeks (Azure AI Search REST API)

Operasi Dapatkan Status Pengindeks mengambil status saat ini dan riwayat eksekusi pengindeks:

GET https://[service name].search.windows.net/indexers/[indexer name]/status?api-version=[api-version]&failIfCannotDecrypt=[true|false]
  Content-Type: application/json  
  api-key: [admin key]

Parameter URI

Parameter Deskripsi
nama layanan Wajib diisi. Atur ini ke nama unik yang ditentukan pengguna dari layanan pencarian Anda.
nama pengindeks Wajib diisi. URI permintaan menentukan nama pengindeks yang statusnya harus dikembalikan.
versi-api Wajib diisi. Versi stabil saat ini adalah api-version=2020-06-30. Lihat Versi API untuk versi lainnya.
failIfCannotDecrypt Opsional, default ke true jika tidak ditentukan. Jika pengindeks dibuat menggunakan kunci enkripsi dan layanan pencarian tidak memiliki akses ke kunci enkripsi, pengambilan status pengindeks gagal. Jika false, status pengindeks yang dikembalikan memiliki properti terenkripsi yang diganti dengan "<encrypted>" tempat penampung.

Judul Permintaan

Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.

Bidang Deskripsi
Jenis-Konten Wajib diisi. Atur titik akhir ini ke application/json
api-key Opsional jika Anda menggunakan peran Azure dan token pembawa disediakan berdasarkan permintaan, jika tidak, kunci diperlukan. Kunci api adalah string unik yang dihasilkan sistem yang mengautentikasi permintaan ke layanan pencarian Anda. Dapatkan permintaan untuk definisi objek harus menyertakan bidang kunci api yang diatur ke kunci admin Anda (dibandingkan dengan kunci kueri). Lihat Menyambungkan ke Azure AI Search menggunakan autentikasi kunci untuk detailnya.

Isi Permintaan

Tidak ada.

Respons

Kode Status: 200 OK untuk respons yang berhasil. Isi respons berisi informasi tentang status kesehatan pengindeks keseluruhan, pemanggilan pengindeks terakhir, dan riwayat pemanggilan pengindeks terbaru (jika ada).

Isi respons sampel terlihat seperti ini:

{
    "status" : "running",
    "lastResult" : {
        "status" : "success",
        "errorMessage" : null,
        "startTime" : "2014-11-26T03:37:18.853Z",
        "endTime" : "2014-11-26T03:37:19.012Z",
        "errors" : [],
        "warnings" : [],
        "itemsProcessed" : 11,
        "itemsFailed" : 0,
        "initialTrackingState" : null,
        "finalTrackingState" : null
    },
    "executionHistory" : [
        {
            "status" : "success",
            "errorMessage" : null,
            "startTime" : "2014-11-26T03:37:18.853Z",
            "endTime" : "2014-11-26T03:37:19.012Z",
            "errors" : [],
            "warnings" : [],
            "itemsProcessed" : 11,
            "itemsFailed" : 0,
            "initialTrackingState" : null,
            "finalTrackingState" : null
        },
        {
            "status" : "transientFailure",
            "errorMessage" : null,
            "startTime" : "2014-11-26T03:28:10.125Z",
            "endTime" : "2014-11-26T03:28:12.007Z",
            "errors" : [
                {
                    "key" : "",
                    "name" : "The operation name describing where the error occurred. For example, 'Enrichment.LanguageDetectionSkill.SkillName'",
                    "errorMessage" : "Document key cannot be missing or empty.",
                    "statusCode" : 400,
                    "details" : "Any additional details, such as the WebApi response if executing a custom skill failed.",
                    "documentationLink" : "A link to relevant documentation. For example, 'https://go.microsoft.com/fwlink/?linkid=2099692'""
                }
            ],
            "warnings" : [
                {
                    "key" : "document id",
                    "name" : "The operation name describing where the warning occurred. For example, 'Enrichment.LanguageDetectionSkill.SkillName'",
                    "message" : "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob."
                    "details" : "Any additional details, such as the WebApi response if executing a custom skill failed.",
                    "documentationLink" : "A link to relevant documentation. For example, 'https://go.microsoft.com/fwlink/?linkid=2099692'"
                }
            ],
            "itemsProcessed" : 1,
            "itemsFailed" : 1,
            "initialTrackingState" : null,
            "finalTrackingState" : null
        }
    ]
}

Catatan

Jika pengindeks dibuat menggunakan kunci enkripsi, properti terenkripsi status hanya dapat diambil jika layanan pencarian memiliki akses ke kunci enkripsi. Jika layanan pencarian tidak memiliki akses ke kunci enkripsi, 400 Permintaan Buruk dikembalikan secara default. Tentukan failIfCannotDecrypt=false untuk mengambil status dengan "<encrypted>" tempat penampung yang menggantikan properti terenkripsi.

Status pengindeks

Status pengindeks bisa menjadi salah satu nilai berikut:

  • menjalankan menunjukkan bahwa pengindeks berjalan secara normal. Beberapa eksekusi pengindeks mungkin masih gagal, jadi ada baiknya untuk memeriksa properti lastResult juga.

  • kesalahan menunjukkan bahwa pengindeks mengalami kesalahan yang tidak dapat dikoreksi tanpa intervensi manusia. Misalnya, kredensial sumber data mungkin telah kedaluwarsa, atau skema sumber data atau indeks target telah berubah dengan cara yang melanggar.

Hasil eksekusi pengindeks

Hasil eksekusi pengindeks berisi informasi tentang eksekusi pengindeks tunggal. Hasil terbaru muncul sebagai properti lastResult dari status pengindeks. Hasil terbaru lainnya, jika ada, dikembalikan sebagai properti executionHistory dari status pengindeks.

Hasil eksekusi pengindeks berisi properti berikut:

  • status: Status eksekusi. Lihat Status eksekusi pengindeks di bawah ini untuk detailnya.

  • errorMessage: Pesan kesalahan untuk eksekusi yang gagal.

  • startTime: Waktu dalam UTC ketika eksekusi ini dimulai.

  • endTime: Waktu dalam UTC ketika eksekusi ini telah berakhir. Nilai ini tidak diatur jika eksekusi masih berlangsung.

  • errors: Daftar kesalahan tingkat item, jika ada. Lihat contoh respons di atas misalnya. Dimulai dengan versi 2020-06-30 API setiap kesalahan dalam daftar tidak akan lagi menyertakan "status" karena untuk kesalahan tingkat item selalu salah. Dimulai dengan versi 2020-06-30API , setiap kesalahan dalam daftar berisi properti "name"baru , , "details"dan "documentationLink".

  • peringatan: Daftar peringatan tingkat item, jika ada. Lihat contoh respons di atas misalnya. Dimulai dengan versi 2020-06-30API , setiap peringatan dalam daftar berisi properti "name"baru , , "details"dan "documentationLink".

  • itemsProcessed: Jumlah item sumber data (misalnya, baris tabel) yang coba diindeks oleh pengindeks selama eksekusi ini.

  • itemsFailed: Jumlah item yang gagal selama eksekusi ini. Kesalahan menyediakan ID item yang gagal.

  • initialTrackingState: Selalu null untuk eksekusi pengindeks pertama, atau jika kebijakan pelacakan perubahan data tidak diaktifkan pada sumber data yang digunakan. Jika kebijakan tersebut diaktifkan, dalam eksekusi berikutnya, nilai ini menunjukkan nilai pelacakan perubahan pertama (terendah) yang diproses oleh eksekusi ini.

  • finalTrackingState: Selalu null jika kebijakan pelacakan perubahan data tidak diaktifkan pada sumber data yang digunakan. Jika tidak, menunjukkan nilai pelacakan perubahan terbaru (tertinggi) yang berhasil diproses oleh eksekusi ini.

Status eksekusi pengindeks

Status eksekusi pengindeks menangkap status eksekusi pengindeks tunggal. Parameter dapat memiliki nilai berikut:

  • keberhasilan menunjukkan bahwa eksekusi pengindeks telah berhasil diselesaikan.

  • inProgress menunjukkan bahwa eksekusi pengindeks sedang berlangsung.

  • transientFailure menunjukkan bahwa eksekusi pengindeks telah gagal. Lihat properti errorMessage untuk detailnya. Kegagalan mungkin atau mungkin tidak memerlukan intervensi manusia untuk memperbaikinya. Misalnya, memperbaiki ketidakcocokan skema antara sumber data dan indeks target memerlukan tindakan pengguna, sementara waktu henti sumber data sementara tidak. Pemanggilan pengindeks berlanjut per jadwal, jika ditentukan. Jika pengindeks pada jadwal mencapai status transientFailure berulang kali tanpa membuat kemajuan, pengindeks akan mulai berjalan pada interval yang lebih jarang (hingga maksimum setidaknya sekali setiap 24 jam) sampai berhasil membuat kemajuan lagi.

  • persistentFailure menunjukkan bahwa pengindeks telah gagal dengan cara yang membutuhkan intervensi manusia. Eksekusi pengindeks terjadwal berhenti. Setelah mengatasi masalah ini, gunakan Reset Indexer (Azure AI Search REST API) untuk memulai ulang eksekusi terjadwal.

  • reset menunjukkan bahwa pengindeks telah direset oleh panggilan ke Reset Indexer (Azure AI Search REST API).

Lihat juga