Setelah tugas transformasi data dimulai, mesin transformasi data mengirimkan hasil ke Logstore tujuan berdasarkan aturan routing. Topik ini menjelaskan metode pemecahan masalah jika tugas transformasi data gagal, misalnya tidak ada log yang dihasilkan di Logstore tujuan atau terjadi penundaan panjang selama proses.
Menganalisis kesalahan
Jika terjadi kesalahan, Anda dapat memeriksa kesalahan dalam proses transformasi data.
Setiap tugas transformasi data terdiri dari empat langkah berdasarkan Dasar-dasar transformasi data. Gambar berikut menunjukkan langkah-langkah tersebut.
Kesalahan dapat terjadi pada setiap langkah. Penyebab, dampak, dan metode pemecahan masalah bervariasi tergantung pada langkah tersebut.
Memulai mesin transformasi data.
Kesalahan dapat terjadi jika aturan bahasa domain-spesifik (DSL) gagal dalam pemeriksaan keamanan di mesin transformasi data.
Jika terjadi kesalahan pada langkah ini, tugas transformasi data berhenti. Anda harus memodifikasi aturan DSL dan memulai ulang tugas. Jika percobaan ulang berhasil, tugas dilanjutkan tanpa kehilangan data atau redundansi.
Untuk informasi lebih lanjut tentang metode pemecahan masalah pada langkah ini, lihat Bagaimana cara memperbaiki kesalahan startup mesin transformasi data?.
Membaca data dari Logstore sumber.
Kesalahan dapat terjadi karena kegagalan akses ke Logstore sumber. Kegagalan ini mungkin disebabkan oleh konfigurasi Logstore sumber yang tidak valid, kesalahan jaringan, atau pembaruan Logstore sumber.
Jika terjadi kesalahan pada langkah ini, tugas transformasi data terus mencoba hingga pembacaan data berhasil atau dihentikan secara manual. Jika percobaan ulang berhasil, tugas dilanjutkan tanpa kehilangan data.
Jika terjadi kesalahan setelah beberapa data dibaca, tugas menyimpan titik periksa dan terus mencoba. Setelah percobaan ulang berhasil, tugas melanjutkan membaca data dari titik periksa tanpa kehilangan data atau redundansi. Jika tugas dihentikan selama proses percobaan ulang, tidak ada kehilangan data atau redundansi yang terjadi.
Untuk informasi lebih lanjut tentang metode pemecahan masalah pada langkah ini, lihat Bagaimana cara memperbaiki kesalahan yang terjadi ketika mesin transformasi data membaca data dari Logstore sumber?.
Mentransformasikan peristiwa log.
Kesalahan dapat terjadi jika aturan transformasi tidak berlaku untuk semua atau sebagian peristiwa log selama proses transformasi data.
Selama proses transformasi, peristiwa log yang bertentangan dengan aturan transformasi menyebabkan kesalahan. Kesalahan ini dibagi menjadi tingkat WARNING dan ERROR. Tingkat kesalahan diidentifikasi oleh bidang logging.levelname.
Untuk kesalahan tingkat ERROR, peristiwa log yang relevan dihapus. Hasil transformasi tidak berisi peristiwa log ini.
Untuk kesalahan tingkat WARNING, data tidak ditransformasikan dalam DSL saat ini. Sebagai contoh, jika peristiwa log tidak cocok dengan ekspresi reguler yang ditentukan, langkah berikutnya dilakukan.
Untuk informasi lebih lanjut tentang metode pemecahan masalah pada langkah ini, lihat Bagaimana cara memperbaiki kesalahan terkait aturan transformasi data?.
Mengekspor hasil transformasi ke Logstore tujuan.
Kesalahan dapat terjadi karena kegagalan akses ke Logstore tujuan. Kegagalan ini mungkin disebabkan oleh konfigurasi Logstore tujuan yang tidak valid, kesalahan jaringan, atau pembaruan Logstore tujuan.
Jika terjadi kesalahan pada langkah ini, tugas transformasi data terus mencoba hingga pembacaan data berhasil atau dihentikan secara manual. Jika percobaan ulang berhasil, tugas dilanjutkan tanpa kehilangan data.
Jika terjadi kesalahan setelah beberapa data diekspor, tugas terus mencoba. Sebagai contoh, asumsikan bahwa dua Logstore tujuan ditentukan. Ekspor data dari satu Logstore berhasil, tetapi data dari Logstore lainnya gagal. Dalam kasus ini, tugas menyimpan titik putus dan terus mencoba. Setelah percobaan ulang berhasil, tidak ada kehilangan data atau redundansi yang terjadi. Jika tugas transformasi data dihentikan dan kemudian dimulai ulang ketika kesalahan terjadi, tugas dilanjutkan dari titik putus. Dalam kasus ini, tidak ada data yang hilang, tetapi redundansi data mungkin terjadi.
Untuk informasi lebih lanjut tentang metode pemecahan masalah pada langkah ini, lihat Bagaimana cara memperbaiki kesalahan yang terjadi selama output data ke Logstore target?.
Memecahkan kesalahan umum
Periksa apakah data telah ditulis ke Logstore tujuan.
Untuk memeriksa apakah data telah ditulis ke Logstore tujuan baru-baru ini, Anda dapat melihat data tersebut di halaman Pratinjau Konsumsi Logstore tujuan.
CatatanData pratinjau konsumsi mungkin tidak akurat karena alasan berikut:
Di Layanan Log, log ditransformasikan berdasarkan waktu ketika log diterima. Dalam skenario di mana log historis sedang ditransformasikan, waktu ketika log ditulis mungkin tidak berada dalam rentang waktu yang ditentukan untuk kueri log historis.
Anda dapat menanyakan data log berdasarkan indeks log historis. Namun, penundaan beberapa menit mungkin terjadi. Jika log historis sedang ditulis dalam tugas transformasi data, data log mungkin tidak langsung dapat dikueri.
Lihat status tugas transformasi data.
Periksa apakah tugas saat ini telah dimulai. Untuk informasi lebih lanjut, lihat Lihat status pekerjaan transformasi data. Tugas dengan rentang waktu tetap secara otomatis berhenti pada waktu akhir yang ditentukan.
Periksa apakah grup konsumen dalam tugas saat ini diaktifkan dan diperbarui.

Periksa apakah terjadi kesalahan. Untuk informasi lebih lanjut, lihat Lihat log kesalahan. Jika terjadi kesalahan, identifikasi penyebab kesalahan dan perbaiki kesalahan tersebut. Untuk informasi lebih lanjut, lihat Menganalisis kesalahan.
Periksa apakah data dihasilkan di Logstore sumber.
Periksa apakah log ada di Logstore sumber dalam rentang waktu tugas transformasi data saat ini.
Jika waktu akhir rentang waktu tidak ditentukan, periksa apakah log baru dihasilkan di Logstore sumber. Jika tidak ada log baru yang dihasilkan dan tidak ada log historis dalam rentang waktu yang ditentukan, tugas transformasi data tidak dapat dilakukan.
Jika Anda memilih rentang waktu historis, periksa apakah log ada di Logstore sumber dalam rentang waktu tersebut.
Klik Modifikasi aturan transformasi pekerjaan transformasi data dari tugas transformasi data, pilih rentang waktu, dan kemudian periksa apakah log mentah ada dalam rentang waktu yang ditentukan.
Periksa apakah aturan transformasi valid.
Periksa apakah ada kesalahan kode dalam aturan transformasi. Contoh:
Waktu log dimodifikasi. Akibatnya, tidak ada log yang dapat ditemukan dalam rentang waktu yang ditentukan.
Log dihapus berdasarkan aturan transformasi dalam kondisi tertentu.
Sebagai contoh, asumsikan bahwa aturan transformasi berisi kode berikut. Jika sebuah log tidak berisi bidang
nameatau nilai bidang ini adalah null, log tersebut dihapus. Pra-logika dalam kode digunakan untuk membangun bidangname. Jika bidangnametidak dibangun karena masalah pra-logika, tidak ada log yang dihasilkan.# .... Pra-logika. # .... Bangun bidang name... e_keep(e_search('name: "?"'))Jika tugas menarik data dari pihak ketiga untuk pengayaan data, periksa apakah ukuran data pihak ketiga terlalu besar. Jika demikian, tugas transformasi data tidak dapat segera mulai mengonsumsi data dan mungkin tetap berada dalam keadaan inisialisasi untuk waktu yang lama. Contoh:
e_dict_map(res_rds_mysql(..database="userinfo", table="user"), "username", ["city", "school", "age"])
Klik Modifikasi aturan transformasi pekerjaan transformasi data dari tugas transformasi data, pilih rentang waktu, dan kemudian klik Pratinjau Data untuk melihat hasilnya.
Jika log ditemukan, komentari pernyataan spesifik yang menyebabkan kesalahan dan pratinjau hasilnya lagi.
Periksa apakah jumlah shard sesuai harapan.
Jika transformasi data terlalu lambat, periksa apakah Logstore sumber dan tujuan memenuhi harapan performa Anda. Kami sarankan Anda menyesuaikan jumlah shard di Logstore sumber atau tujuan.
Lihat log kesalahan
Anda dapat melihat log kesalahan menggunakan metode berikut:
Lihat log kesalahan di Logstore
internal-etl-log.Log yang dihasilkan oleh tugas transformasi data disimpan di Logstore
internal-etl-log. Logstore ini secara otomatis dibuat setelah Layanan Log melakukan tugas transformasi data.Logstore
internal-etl-logadalah Logstore khusus yang disediakan secara gratis. Anda tidak dapat memodifikasi konfigurasinya atau menulis data ke dalamnya.Di Logstore
internal-etl-log, bidang__topic__dari setiap peristiwa log menunjukkan status tugas transformasi data. Anda dapat memeriksa apakah terjadi kesalahan dalam tugas transformasi data berdasarkan bidang ini.Anda dapat memeriksa bidang
messagedanreasondari setiap peristiwa log untuk melihat informasi kesalahan secara rinci. Gambar berikut menunjukkan bidang-bidang tersebut.
Lihat log kesalahan di dasbor.
Klik tugas transformasi data dan periksa dasbor di bagian Status pada halaman Data Transformation Overview.
Informasi kesalahan ditampilkan di kolom
reasondi bagian Detail Pengecualian.
Lihat log kesalahan di konsol.
Log kesalahan dalam fase pratinjau ditampilkan di konsol Layanan Log. Dalam fase pratinjau, Layanan Log mensimulasikan operasi yang ditentukan oleh aturan transformasi dan memeriksa apakah data ditransformasikan sesuai harapan. Tidak ada perubahan yang dibuat pada Logstore sumber atau tujuan. Oleh karena itu, kesalahan yang terjadi dalam fase pratinjau tidak memengaruhi peristiwa log sumber.
Batasan pratinjau
Dibandingkan dengan tugas transformasi data nyata, transformasi data dalam fase pratinjau memiliki batasan berikut:
Tidak ada kesalahan yang terjadi meskipun pengguna RAM menggunakan pasangan AccessKey yang tidak valid untuk mengakses Logstore sumber.
Dalam fase pratinjau, tidak ada grup konsumen yang dibuat untuk mengonsumsi data. Oleh karena itu, Layanan Log tidak memeriksa izin grup konsumen.
Tidak ada kesalahan yang terjadi meskipun terjadi kesalahan nama Logstore tujuan dalam aturan transformasi.
Data tidak ditulis ke Logstore tujuan dalam fase pratinjau. Oleh karena itu, sistem tidak memeriksa apakah Logstore tujuan dikonfigurasi dengan benar dalam aturan transformasi.
Tidak ada kesalahan yang terjadi meskipun terdapat kesalahan konfigurasi Logstore tujuan.
Kesalahan konfigurasi termasuk konfigurasi proyek tujuan yang tidak valid, Logstore tujuan, dan pasangan AccessKey.
Data tidak ditulis ke Logstore tujuan dalam fase pratinjau. Oleh karena itu, sistem tidak memeriksa apakah konfigurasi Logstore tujuan benar.
Hanya sebagian data yang ditarik dalam fase pratinjau.
Secara default, hanya 1.000 catatan data yang ditarik dari Logstore sumber untuk transformasi data selama pratinjau.
Jika tidak ada hasil transformasi yang dihasilkan setelah 1.000 catatan data pertama ditransformasikan, Layanan Log terus menarik data selama 5 menit hingga hasil transformasi dihasilkan.