AWS DMSTugas pemantauan - AWS Layanan Migrasi Database

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS DMSTugas pemantauan

Pemantauan adalah bagian penting dari menjaga keandalan, ketersediaan, dan kinerja AWS DMS dan AWS solusi Anda. Anda harus mengumpulkan data pemantauan dari semua bagian AWS solusi Anda sehingga Anda dapat lebih mudah men-debug kegagalan multi-titik jika terjadi. AWS menyediakan beberapa alat untuk memantau AWS DMS tugas dan sumber daya Anda, dan menanggapi insiden potensial:

AWS DMS acara dan pemberitahuan

AWS DMS menggunakan Amazon Simple Notification Service (AmazonSNS) untuk memberikan notifikasi ketika suatu AWS DMS peristiwa terjadi, misalnya pembuatan atau penghapusan instance replikasi. AWS DMS mengelompokkan acara ke dalam kategori yang dapat Anda berlangganan, sehingga Anda dapat diberi tahu saat acara dalam kategori tersebut terjadi. Misalnya, jika Anda berlangganan kategori Pembuatan untuk suatu instans replikasi tertentu, Anda akan diberi tahu setiap kali ada tindakan terkait pembuatan yang memengaruhi instans replikasi Anda. Anda dapat bekerja dengan notifikasi ini dalam bentuk apa pun yang didukung oleh Amazon SNS untuk suatu AWS Wilayah, seperti pesan email, pesan teks, atau panggilan ke HTTP titik akhir. Untuk informasi selengkapnya, silakan lihat Bekerja dengan acara Amazon SNS dan pemberitahuan diAWS Database Migration Service

Status Tugas

Anda dapat memantau kemajuan tugas Anda dengan memeriksa status tugas dan memantau tabel kontrol tugas tersebut. Status tugas menunjukkan kondisi AWS DMS tugas dan sumber daya terkait. Ini termasuk indikasi seperti jika tugas sedang dibuat, mulai, berjalan, atau berhenti. Status ini juga mencakup keadaan saat tabel dengan tugas dilakukan migrasi, seperti jika beban penuh dari suatu tabel telah dimulai atau sedang berlangsung dan detail seperti jumlah sisipan, penghapusan, dan pembaruan telah berlangsung untuk tabel tersebut. Untuk informasi selengkapnya tentang pemantauan syarat tugas dan sumber daya tugas, lihat Status Tugas dan Kondisi tabel selama tugas. Untuk informasi selengkapnya tentang tabel pengendali, lihat Mengontrol pengaturan tugas tabel.

CloudWatch Alarm dan log Amazon

Menggunakan CloudWatch alarm Amazon, Anda menonton satu atau beberapa metrik tugas selama periode waktu yang Anda tentukan. Jika metrik melebihi ambang batas tertentu, pemberitahuan dikirim ke SNS topik Amazon. CloudWatch alarm tidak memanggil tindakan karena mereka berada dalam keadaan tertentu. Sebaliknya negara harus telah berubah dan dipertahankan untuk sejumlah periode tertentu. AWS DMS juga menggunakan CloudWatch untuk mencatat informasi tugas selama proses migrasi. Anda dapat menggunakan AWS CLI atau AWS DMS API untuk melihat informasi tentang log tugas. Untuk informasi selengkapnya tentang menggunakan CloudWatch with AWS DMS, lihatMemantau tugas replikasi menggunakan Amazon CloudWatch. Untuk informasi selengkapnya tentang AWS DMS metrik pemantauan, lihatAWS Database Migration Service metrik. Untuk informasi selengkapnya tentang menggunakan log AWS DMS tugas, lihatMelihat dan mengelola log AWS DMS tugas.

Log Perjalanan Waktu

Untuk mencatat dan men-debug tugas replikasi, Anda dapat menggunakan AWS DMS Time Travel. Dalam pendekatan ini, Anda menggunakan Amazon S3 untuk menyimpan log dan mengenkripsi mereka menggunakan kunci enkripsi Anda. Anda dapat mengambil log S3 Anda menggunakan filter tanggal-waktu, lalu melihat, mengunduh, dan mengaburkan log sesuai kebutuhan. Dengan melakukan ini, Anda dapat “melakukan perjalanan kembali ke masa lalu” untuk menyelidiki aktivitas database.

Anda dapat menggunakan Time Travel dengan titik akhir SQL sumber Postgre yang DMS didukung dan Postgre dan titik akhir target saya yang DMS didukung. SQL SQL Anda dapat mengaktifkan Perjalanan Waktu hanya untuk beban penuh dan CDC tugas dan CDC hanya untuk tugas. Untuk mengaktifkan Perjalanan Waktu atau mengubah pengaturan Perjalanan Waktu yang ada, pastikan tugas Anda dihentikan.

Untuk informasi selengkapnya tentang log Perjalanan Waktu, lihatPengaturan tugas Perjalanan Waktu. Untuk praktik terbaik dalam menggunakan log Perjalanan Waktu, lihatMemecahkan masalah tugas replikasi dengan Time Travel.

AWS CloudTrail log

AWS DMS terintegrasi dengan AWS CloudTrail, layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, IAM peran, atau AWS layanan di AWS DMS. CloudTrailmenangkap semua API panggilan untuk AWS DMS sebagai peristiwa, termasuk panggilan dari AWS DMS konsol dan dari panggilan kode ke AWS DMS API operasi. Jika Anda membuat jejak, Anda dapat mengaktifkan pengiriman CloudTrail acara secara berkelanjutan ke bucket Amazon S3, termasuk acara untuk. AWS DMS Jika Anda tidak mengonfigurasi jejak, Anda masih dapat melihat peristiwa terbaru di CloudTrail konsol dalam Riwayat acara. Dengan menggunakan informasi yang dikumpulkan oleh CloudTrail, Anda dapat menentukan permintaan yang dibuat AWS DMS, alamat IP dari mana permintaan dibuat, siapa yang membuat permintaan, kapan dibuat, dan detail tambahan. Untuk informasi selengkapnya, lihat Pencatatan AWS DMS API panggilan dengan AWS CloudTrail.

Mencatat Basis Data

Anda dapat melihat, mengunduh, dan menonton log database untuk titik akhir tugas Anda menggunakan AWS Management Console, AWS CLI, atau API untuk layanan AWS database Anda. Untuk informasi selengkapnya, lihat dokumentasi untuk layanan basis data Anda di dokumentasi AWS.

Untuk informasi lebih lanjut, lihat topik berikut.

Status Tugas

Status tugas menunjukkan kondisi tugas. Tabel berikut menunjukkan status yang mungkin dapat dimiliki suatu tugas:

Status Tugas Deskripsi

Creating

AWS DMS sedang menciptakan tugas.

Berlari

Tugas tersebut adalah melaksanakan tugas migrasi yang ditentukan.

Stopped

Tugas dihentikan.

Stopping

Tugas sedang dihentikan. Ini biasanya merupakan indikasi intervensi pengguna dalam tugas.

Deleting

Tugas sedang dihapus, biasanya dari permintaan untuk campur tangan pengguna.

Failed

Tugas telah gagal. Untuk informasi lebih lanjut, lihat file yang mencatat tugas.

Kesalahan

Tugas berhenti karena kesalahan. Deskripsi singkat tentang kesalahan tugas disediakan di bagian pesan kegagalan terakhir pada tab Ikhtisar.

Berjalan dengan kesalahan

Tugas berjalan dengan status kesalahan. Ini biasanya menunjukkan bahwa satu atau lebih tabel dalam tugas tidak dapat dimigrasikan. Tugas terus memuat tabel lain sesuai dengan aturan pemilihan.

Starting

Tugas ini menjadikan connect ke instans replikasi dan ke titik akhir sumber dan target. Setiap filter dan transformasi sedang diterapkan.

Siap

Tugas ini siap dijalankan. Status ini biasanya mengikuti status “membuat”.

Modifying

Tugas sedang diubah, biasanya disebabkan oleh tindakan pengguna yang mengubah pengaturan tugas.

Bergerak

Tugas ini sedang dalam proses dipindahkan ke instans replikasi lain. Replikasi tetap berada dalam keadaan ini sampai langkah ini selesai. Menghapus tugas adalah satu-satunya operasi diizinkan pada tugas replikasi sementara tugas itu sedang dipindahkan.

Gagal bergerak

Pemindahan tugas telah gagal untuk alasan apa pun, seperti halnya tidak memiliki cukup ruang penyimpanan pada instans replikasi target. Ketika tugas replikasi berada dalam keadaan ini, maka tugas ini dapat dimulai, dimodifikasi, dipindahkan, atau dihapus.

Pengujian

Migrasi database yang ditentukan untuk tugas ini sedang diuji sebagai respons terhadap menjalankan StartReplicationTaskAssessmentRun, atau StartReplicationTaskAssessmentoperasi.

Bilah status tugas memberikan estimasi tentang kemajuan tugas. Kualitas estimasi ini tergantung pada kualitas statistik tabel basis data sumber; semakin baik statistik tabel, semakin akurat estimasi. Untuk tugas dengan hanya satu tabel yang tidak memiliki estimasi statistik baris, kita tidak dapat memberikan persentase estimasi lengkap apa pun. Dalam hal ini, gunakan status tugas dan indikasi baris yang dimuat untuk mengonfirmasi bahwa tugas berlangsung dan mengalami kemajuan.

Perhatikan bahwa kolom “terakhir diperbarui” DMS konsol hanya menunjukkan waktu AWS DMS terakhir memperbarui catatan statistik tabel untuk tabel. Ini tidak menunjukkan waktu pembaruan terakhir pada tabel.

Selain menggunakan DMS konsol, Anda dapat menampilkan deskripsi tugas replikasi saat ini, termasuk status tugas, dengan menggunakan aws dms describe-replication-tasks perintah di AWS CLI, seperti yang ditunjukkan pada contoh berikut.

{ "ReplicationTasks": [ { "ReplicationTaskIdentifier": "moveit2", "SourceEndpointArn": "arn:aws:dms:us-east-1:123456789012:endpoint:6GGI6YPWWGAYUVLKIB732KEVWA", "TargetEndpointArn": "arn:aws:dms:us-east-1:123456789012:endpoint:EOM4SFKCZEYHZBFGAGZT3QEC5U", "ReplicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:T3OM7OUB5NM2LCVZF7JPGJRNUE", "MigrationType": "full-load", "TableMappings": ...output omitted... , "ReplicationTaskSettings": ...output omitted... , "Status": "stopped", "StopReason": "Stop Reason FULL_LOAD_ONLY_FINISHED", "ReplicationTaskCreationDate": 1590524772.505, "ReplicationTaskStartDate": 1590619805.212, "ReplicationTaskArn": "arn:aws:dms:us-east-1:123456789012:task:K55IUCGBASJS5VHZJIINA45FII", "ReplicationTaskStats": { "FullLoadProgressPercent": 100, "ElapsedTimeMillis": 0, "TablesLoaded": 0, "TablesLoading": 0, "TablesQueued": 0, "TablesErrored": 0, "FreshStartDate": 1590619811.528, "StartDate": 1590619811.528, "StopDate": 1590619842.068 } } ] }

Kondisi tabel selama tugas

AWS DMSKonsol memperbarui informasi mengenai status tabel Anda selama migrasi. Tabel berikut menunjukkan kemungkinan nilai keadaan:

AWS Contoh replikasi Layanan Migrasi Database
Status Deskripsi

Tabel tidak ada

AWS DMStidak dapat menemukan tabel di titik akhir sumber.

Sebelum memuat

Mengaktifkan proses beban penuh telah dilakukan, tetapi belum mulai.

Beban penuh

Proses beban penuh sedang berlangsung.

Tabel selesai

Beban penuh telah selesai.

Tabel dibatalkan

Pemuatan beban tabel telah dibatalkan.

Kesalahan tabel

Terjadi kesalahan saat memuat beban tabel.

Memantau tugas replikasi menggunakan Amazon CloudWatch

Anda dapat menggunakan CloudWatch alarm atau peristiwa Amazon untuk melacak migrasi Anda dengan lebih dekat. Untuk informasi selengkapnya tentang Amazon CloudWatch, lihat Apa itu Amazon CloudWatch, CloudWatch Acara Amazon, dan CloudWatch Log Amazon? di Panduan CloudWatch Pengguna Amazon. Perhatikan bahwa ada biaya untuk menggunakan Amazon CloudWatch.

Jika tugas replikasi Anda tidak membuat CloudWatch log, lihat AWS DMS tidak membuat CloudWatch log di panduan pemecahan masalah.

AWS DMS Konsol menampilkan CloudWatch statistik dasar untuk setiap tugas, termasuk status tugas, persen selesai, waktu berlalu, dan statistik tabel, seperti yang ditunjukkan berikut. Pilih tugas replikasi dan kemudian pilih tab CloudWatch metrik.

Untuk melihat dan mengubah pengaturan log CloudWatch tugas, pilih Ubah pencatatan tugas. Untuk informasi selengkapnya, lihat Pengaturan tugas pengelogan.

AWS DMSPemantauan

AWS DMSKonsol menampilkan statistik kinerja untuk setiap tabel, termasuk jumlah sisipan, penghapusan, dan pembaruan, saat Anda memilih tab Statistik tabel.

AWS DMSPemantauan

Selain itu, jika Anda memilih instance replikasi dari halaman Instance Replikasi, Anda dapat melihat metrik kinerja untuk instance dengan memilih tab metrik. CloudWatch

AWS DMSPemantauan

AWS Database Migration Service metrik

AWS DMSmenyediakan statistik untuk hal-hal berikut:

  • Metrik Host — Statistik kinerja dan pemanfaatan untuk host replikasi, yang disediakan oleh Amazon. CloudWatch Untuk daftar lengkap metrik yang tersedia, lihat Metrik instans replikasi.

  • Metrik Tugas Replikasi – Statistik untuk tugas replikasi termasuk perubahan masuk dan yang dilakukan, dan latensi antara host replikasi dan basis data sumber dan target. Untuk daftar lengkap metrik yang tersedia, lihat Metrik tugas replikasi.

  • Metrik Tabel — Statistik untuk tabel yang sedang dalam proses migrasi, termasuk jumlah penyisipan, pembaruan, penghapusan, dan DDL pernyataan yang diselesaikan.

Metrik tugas dibagi menjadi beberapa statistik antara host replikasi dan titik akhir sumber, dan statistik antara host replikasi dan titik akhir target. Anda dapat menentukan total statistik untuk suatu tugas dengan menambahkan dua statistik terkait bersama-sama. Misalnya, Anda dapat menentukan latensi total, atau lag replika, untuk tugas dengan menggabungkan CDCLatencySourcedan CDCLatencyTargetnilai.

Nilai metrik tugas dapat dipengaruhi oleh aktivitas saat ini di dalam basis data sumber Anda. Misalnya, jika transaksi telah dimulai, tetapi belum dilakukan, maka CDCLatencySourcemetrik terus tumbuh hingga transaksi tersebut dilakukan.

Untuk contoh replikasi, FreeableMemorymetrik memerlukan klarifikasi. Memori bebas bukan indikasi dari memori bebas sebenarnya yang tersedia. Ini merupakan memori yang saat ini digunakan yang dapat dibebaskan dan digunakan untuk kegunaan lain; ini merupakan kombinasi dari buffer dan cache yang digunakan pada instans replikasi.

Meskipun FreeableMemorymetrik tidak mencerminkan memori bebas aktual yang tersedia, kombinasi metrik FreeableMemorydan SwapUsagemetrik dapat menunjukkan apakah instance replikasi kelebihan beban.

Memantau kedua metrik ini untuk syarat-syarat berikut:

  • FreeableMemoryMetrik mendekati nol.

  • SwapUsageMetrik meningkat atau berfluktuasi.

Jika Anda melihat salah satu dari dua syarat ini, itu menunjukkan bahwa Anda harus mempertimbangkan pindah ke instans replikasi yang lebih besar. Anda juga harus mempertimbangkan untuk mengurangi jumlah dan tipe tugas yang berlangsung pada instans replikasi. Tugas beban penuh memerlukan lebih banyak memori daripada tugas yang hanya melakukan replikasi perubahan.

Untuk memperkirakan secara kasar persyaratan memori aktual untuk tugas AWS DMS migrasi, Anda dapat menggunakan parameter berikut.

LOBkolom

Rata-rata jumlah LOB kolom di setiap tabel dalam lingkup migrasi Anda.

Jumlah maksimum tabel untuk dimuat secara paralel

Jumlah maksimum tabel yang AWS DMS dimuat secara paralel dalam satu tugas.

Nilai default adalah 8.

LOBukuran bongkahan

Ukuran LOB potongan, dalam kilobyte, yang AWS DMS digunakan untuk mereplikasi data ke database target.

Tingkat komit selama beban penuh

Jumlah maksimum catatan yang AWS DMS dapat ditransfer secara paralel.

Nilai default adalah 10,000.

LOBukuran

Ukuran maksimum individuLOB, dalam kilobyte.

Ukuran array massal

Jumlah maksimum baris yang diambil atau diproses oleh driver endpoint Anda. Nilai ini tergantung pada pengaturan driver.

Nilai default adalah 1,000.

Setelah menentukan nilai ini, Anda dapat menggunakan salah satu metode berikut untuk memperkirakan jumlah memori yang diperlukan untuk tugas migrasi Anda. Metode ini bergantung pada opsi yang Anda pilih untuk pengaturan LOB kolom dalam tugas migrasi Anda.

  • Untuk LOBmode Penuh, gunakan rumus berikut.

    Required memory = (LOB columns) * (Maximum number of tables to load in parallel) * (LOB chunk size) * (Commit rate during full load)

    Pertimbangkan contoh di mana tabel sumber Anda menyertakan rata-rata 2 LOB kolom, dan ukuran LOB potongannya adalah 64 KB. Jika Anda menggunakan nilai default untuk Maximum number of tables to load in parallel danCommit rate during full load, maka jumlah memori yang diperlukan untuk tugas Anda adalah sebagai berikut.

    Required memory = 2 * 8 * 64 * 10,000 = 10,240,000 KB

    catatan

    Untuk mengurangi nilai Commit rate selama pemuatan penuh, buka AWS DMS konsol, pilih tugas migrasi database, dan buat atau ubah tugas. Perluas Pengaturan lanjutan, dan masukkan nilai Anda untuk tingkat Komit selama pemuatan penuh.

  • Untuk LOBmode Terbatas, gunakan rumus berikut.

    Required memory = (LOB columns) * (Maximum number of tables to load in parallel) * (LOB size) * (Bulk array size)

    Pertimbangkan contoh di mana tabel sumber Anda menyertakan rata-rata 2 LOB kolom, dan ukuran maksimum individu LOB adalah 4.096 KB. Jika Anda menggunakan nilai default untuk Maximum number of tables to load in parallel danBulk array size, maka jumlah memori yang diperlukan untuk tugas Anda adalah sebagai berikut.

    Required memory = 2 * 8 * 4,096 * 1,000 = 65,536,000 KB

AWS DMS Untuk melakukan konversi secara optimal, CPU harus tersedia ketika konversi terjadi. Kelebihan beban CPU dan tidak memiliki CPU sumber daya yang cukup dapat mengakibatkan migrasi yang lambat. AWS DMS bisa CPU intensif, terutama saat melakukan migrasi dan replikasi heterogen seperti bermigrasi dari Oracle ke Postgre. SQL Penggunaan kelas instans replikasi C4 dapat menjadi pilihan yang bagus untuk situasi ini. Untuk informasi selengkapnya, lihat Memilih instans replikasi AWS DMS yang tepat untuk migrasi Anda.

Metrik instans replikasi

Pemantauan instans replikasi mencakup CloudWatch metrik Amazon untuk statistik berikut.

Metrik

Deskripsi

AvailableMemory

Perkiraan berapa banyak memori yang tersedia untuk mulai aplikasi baru, tanpa bertukar. Untuk informasi lebih lanjut, lihat nilai MemAvailable dalam bagian /proc/memInfo dari Linux man-pages.

Unit: Bita

CPUAllocated

Persentase yang dialokasikan CPU secara maksimal untuk tugas (0 berarti tidak ada batas).

AWS DMS memunculkan metrik ini terhadap dimensi gabungan ReplicationInstanceIdentifer dan ReplicationTaskIdentifier di CloudWatch konsol. Gunakan ReplicationInstanceIdentifier, ReplicationTaskIdentifier kategori untuk melihat metrik ini.

Unit: Persen

CPUUtilization

Persentase v CPU (virtualCPU) yang dialokasikan saat ini digunakan pada instance.

Unit: Persen

DiskQueueDepth

Jumlah yang luar biasaread/write requests (I/Os) menunggu untuk mengakses disk.

Unit: Jumlah

FreeStorageSpace

Jumlah ruang penyimpanan yang tersedia.

Unit: Bita

FreeMemory

Jumlah memori fisik yang tersedia untuk digunakan oleh aplikasi, cache halaman, dan struktur data kernel sendiri. Untuk informasi lebih lanjut, lihat nilai MemFree dalam bagian /proc/memInfo dari Linux man-pages.

Unit: Bita

FreeableMemory

Jumlah memori mengakses acak yang tersedia.

Unit: Bita

MemoryAllocated

Alokasi maksimum memori untuk tugas (0 berarti tidak ada batas).

AWS DMS memunculkan metrik ini terhadap dimensi gabungan ReplicationInstanceIdentifer dan ReplicationTaskIdentifier di CloudWatch konsol. Gunakan ReplicationInstanceIdentifier, ReplicationTaskIdentifier kategori untuk melihat metrik ini.

Unit: MiB

Menulis IOPS

Jumlah rata-rata operasi I/O tulis disk per detik.

Unit: Jumlah/Detik

Baca IOPS

Jumlah rata-rata operasi I/O baca disk per detik.

Unit: Jumlah/Detik

WriteThroughput

Jumlah rata-rata byte yang ditulis pada disk per detik.

Unit: Byte/Detik

ReadThroughput

Jumlah rata-rata byte untuk baca dari disk per detik.

Unit: Byte/Detik

WriteLatency

Jumlah waktu rata-rata yang diambil per operasi I/O (output) disk.

Unit: Milidetik

ReadLatency

Jumlah waktu rata-rata yang diambil per operasi I/O (input) disk.

Unit: Milidetik

SwapUsage

Jumlah ruang tukar yang digunakan pada instans replikasi.

Unit: Bita

NetworkTransmitThroughput

Lalu lintas jaringan keluar (transmit) pada instans replikasi, termasuk lalu lintas basis data pelanggan dan lalu lintas AWS DMS yang digunakan untuk pemantauan dan replikasi.

Unit: Byte/Detik

NetworkReceiveThroughput

Lalu lintas jaringan masuk (penerima) pada instans replikasi, termasuk lalu lintas basis data pelanggan dan lalu lintas AWS DMS yang digunakan untuk pemantauan dan replikasi.

Unit: Byte/Detik

Metrik tugas replikasi

Pemantauan tugas replikasi mencakup metrik untuk statistik berikut.

Metrik

Deskripsi

FullLoadThroughputBandwidthTarget

Data keluar ditransmisikan dari beban penuh untuk target di KB per detik.

FullLoadThroughputRowsTarget

Perubahan keluar dari beban penuh untuk target dalam baris per detik.

CDCIncomingChanges

Jumlah total peristiwa perubahan di a point-in-time yang menunggu untuk diterapkan ke target. Perhatikan bahwa ini tidak sama dengan ukuran nilai perubahan transaksi dari titik akhir sumber. Jumlah large metrik ini biasanya menunjukkan AWS DMS tidak dapat menerapkan perubahan yang ditangkap pada waktu yang tepat, sehingga menyebabkan latensi target tinggi.

CDCChangesMemorySource

Jumlah baris yang terakumulasi dalam memori dan menunggu untuk melakukan dari sumber tersebut. Anda dapat melihat metrik ini bersama-sama denganCDCChangesDiskSource.

CDCChangesMemoryTarget

Jumlah baris yang terakumulasi dalam memori dan menunggu untuk melakukan dari target tersebut. Anda dapat melihat metrik ini bersama-sama denganCDCChangesDiskTarget.

CDCChangesDiskSource

Jumlah baris yang terakumulasi pada disk dan menunggu untuk melakukan dari sumber tersebut. Anda dapat melihat metrik ini bersama-sama denganCDCChangesMemorySource.

CDCChangesDiskTarget

Jumlah baris yang terakumulasi dalam memori dan menunggu untuk melakukan dari target tersebut. Anda dapat melihat metrik ini bersama-sama denganCDCChangesMemoryTarget.

CDCThroughputBandwidthTarget

Data keluar dikirimkan untuk target dalam KB per detik. CDCThroughputBandwidthmencatat data keluar yang dikirimkan pada titik pengambilan sampel. Jika tidak ada lalu lintas jaringan tugas yang ditemukan, nilai tersebut adalah nol. Karena CDC tidak mengeluarkan transaksi yang berjalan lama, lalu lintas jaringan mungkin tidak dicatat.

CDCThroughputRowsSource

Perubahan tugas masuk dari sumber dalam baris per detik.

CDCThroughputRowsTarget

Perubahan tugas keluar untuk target dalam baris per detik.

CDCLatencySource

Kesenjangan, dalam hitungan detik, antara peristiwa terakhir yang diambil dari titik akhir sumber dan cap waktu sistem saat ini dari instance. AWS DMS CDCLatencySourcemewakili latensi antara sumber dan contoh replikasi. Tinggi CDCLatencySource berarti proses menangkap perubahan dari sumber tertunda. Untuk mengidentifikasi latensi dalam replikasi yang sedang berlangsung, Anda dapat melihat metrik ini bersama-sama dengan. CDCLatencyTarget Jika keduanya CDCLatencySource dan CDCLatencyTarget tinggi, selidiki CDCLatencySource terlebih dahulu.

CDCSourceLatencybisa 0 ketika tidak ada jeda replikasi antara sumber dan instance replikasi. CDCSourceLatencyjuga bisa menjadi nol ketika tugas replikasi mencoba membaca peristiwa berikutnya di log transaksi sumber dan tidak ada peristiwa baru dibandingkan dengan terakhir kali dibaca dari sumber. Ketika ini terjadi, tugas me-reset CDCSourceLatency ke 0.

CDCLatencyTarget

Kesenjangan, dalam detik, antara tempel waktu tindakan pertama yang menunggu untuk melakukan pada target dan stempel waktu saat ini dari instans AWS DMS . Latensi target adalah perbedaan antara waktu server instance replikasi dan id peristiwa tertua yang belum dikonfirmasi yang diteruskan ke komponen target. Dengan kata lain, latensi target adalah perbedaan stempel waktu antara instance replikasi dan peristiwa tertua yang diterapkan tetapi belum dikonfirmasi oleh TRG titik akhir (99%). Ketika CDCLatencyTarget tinggi, ini menunjukkan proses penerapan peristiwa perubahan ke target tertunda. Untuk mengidentifikasi latensi dalam replikasi yang sedang berlangsung, Anda dapat melihat metrik ini bersama-sama dengan. CDCLatencySource Jika CDCLatencyTarget tinggi tetapi CDCLatencySource tidak tinggi, selidiki apakah:

  • Tidak ada kunci primer atau indeks yang berada di target

  • Sumber daya kemacetan terjadi dalam instans target atau replikasi

  • Masalah jaringan berada di antara instans replikasi dan target

CPUUtilization

Persentase CPU yang digunakan oleh tugas di beberapa core. Semantik tugas CPUUtilization sedikit berbeda dari replikasi. CPUUtilizaiton Jika 1 v sepenuhnya CPU digunakan, ini menunjukkan 100%, tetapi jika beberapa vCPUs digunakan, nilainya bisa di atas 100%.

Unit: Persen

SwapUsage

Jumlah pertukaran yang digunakan oleh tugas.

Unit: Bita

MemoryUsage

Kelompok kontrol (cgroup) memori.usage_in_bytes dikonsumsi oleh tugas. DMSmenggunakan cgroups untuk mengontrol penggunaan sumber daya sistem seperti memori danCPU. Metrik ini menunjukkan penggunaan memori tugas dalam Megabyte dalam cgroup yang dialokasikan untuk tugas itu. Batas cgroup didasarkan pada sumber daya yang tersedia untuk kelas instance DMS replikasi Anda. memory.usage_in_bytes terdiri dari resident set size (RSS), cache, dan komponen swap memori. Sistem operasi dapat merebut kembali memori cache jika diperlukan. Kami menyarankan Anda juga memantau metrik instance replikasi, AvailableMemory.

AWS DMS memunculkan metrik ini terhadap dimensi gabungan ReplicationInstanceIdentifer dan ReplicationTaskIdentifier di CloudWatch konsol. Gunakan ReplicationInstanceIdentifier, ReplicationTaskIdentifier kategori untuk melihat metrik ini.

Melihat dan mengelola log AWS DMS tugas

Anda dapat menggunakan Amazon CloudWatch untuk mencatat informasi tugas selama proses AWS DMS migrasi. Anda mengaktifkan untuk mencatat pada pilihan pengaturan tugas. Untuk informasi selengkapnya, lihat Pengaturan tugas pengelogan.

Untuk melihat informasi yang mencatat tugas yang berjalan, ikuti langkah berikut:

  1. Buka AWS DMS konsol, lalu pilih Tugas migrasi database dari panel navigasi. Dialog tugas migrasi basis data muncul.

  2. Tentukan pilihan nama tugas Anda. Dialog detail Gambaran Umum muncul.

  3. Temukan bagian log tugas Migrasi dan pilih Lihat CloudWatch Log.

Selain itu, Anda dapat menggunakan AWS CLI atau AWS DMS API untuk melihat informasi tentang log tugas. Untuk melakukan ini, gunakan describe-replication-instance-task-logs AWS CLI perintah atau AWS DMS API tindakanDescribeReplicationInstanceTaskLogs.

Misalnya, AWS CLI perintah berikut menunjukkan metadata log tugas dalam JSON format.

$ aws dms describe-replication-instance-task-logs \ --replication-instance-arn arn:aws:dms:us-east-1:237565436:rep:CDSFSFSFFFSSUFCAY

Respons sampel dari perintah tersebut adalah sebagai berikut.

{ "ReplicationInstanceTaskLogs": [ { "ReplicationTaskArn": "arn:aws:dms:us-east-1:237565436:task:MY34U6Z4MSY52GRTIX3O4AY", "ReplicationTaskName": "mysql-to-ddb", "ReplicationInstanceTaskLogSize": 3726134 } ], "ReplicationInstanceArn": "arn:aws:dms:us-east-1:237565436:rep:CDSFSFSFFFSSUFCAY" }

Dalam respon ini, ada yang mencatat tugas tunggal (mysql-to-ddb) yang terkait dengan instans replikasi. Mencatat pengukuran ini yaitu 3,726,124 byte.

Anda dapat menggunakan informasi yang dikembalikan oleh describe-replication-instance-task-logs untuk mendiagnosis dan memecahkan masalah dengan mencatat tugas. Sebagai contoh, jika Anda mengaktifkan untuk mencatat debug detail untuk suatu tugas, dengan mencatat tugas akan berkembang cepat—berpotensi menghabiskan semua penyimpanan yang tersedia pada instans replikasi, dan menyebabkan status instans berubah ke storage-full. Melalui penjelasan dengan mencatat tugas, Anda dapat menentukan mana yang tidak lagi Anda butuhkan; maka Anda dapat menghapusnya, sehingga membebaskan ruang penyimpanan.

Untuk menghapus catatan tugas untuk suatu tugas, tetapkan pengaturan tugas DeleteTaskLogs ke BETUL. Misalnya, berikut ini JSON menghapus log tugas saat memodifikasi tugas menggunakan AWS CLI modify-replication-task perintah atau tindakan. AWS DMS API ModifyReplicationTask

{ "Logging": { "DeleteTaskLogs":true } }
catatan

Untuk setiap contoh replikasi, AWS DMS menghapus log yang lebih tua dari 10 hari.

Pencatatan AWS DMS API panggilan dengan AWS CloudTrail

AWS DMS terintegrasi dengan AWS CloudTrail, layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, peran, atau AWS layanan di AWS DMS. CloudTrail menangkap semua API panggilan untuk AWS DMS sebagai peristiwa, termasuk panggilan dari AWS DMS konsol dan dari panggilan kode ke AWS DMS API operasi. Jika Anda membuat jejak, Anda dapat mengaktifkan pengiriman CloudTrail acara secara berkelanjutan ke bucket Amazon S3, termasuk acara untuk. AWS DMS Jika Anda tidak mengonfigurasi jejak, Anda masih dapat melihat peristiwa terbaru di CloudTrail konsol dalam Riwayat acara. Dengan menggunakan informasi yang dikumpulkan oleh CloudTrail, Anda dapat menentukan permintaan yang dibuat AWS DMS, alamat IP dari mana permintaan dibuat, siapa yang membuat permintaan, kapan dibuat, dan detail tambahan.

Untuk mempelajari selengkapnya CloudTrail, lihat Panduan AWS CloudTrail Pengguna.

AWS DMS informasi di CloudTrail

CloudTrail diaktifkan di AWS akun Anda saat Anda membuat akun. Ketika aktivitas terjadi di AWS DMS, aktivitas tersebut dicatat dalam suatu CloudTrail peristiwa bersama dengan peristiwa AWS layanan lainnya dalam riwayat Acara. Anda dapat melihat, mencari, dan mengunduh acara terbaru di AWS akun Anda. Untuk informasi selengkapnya, lihat Melihat peristiwa dengan riwayat CloudTrail acara.

Untuk catatan peristiwa yang sedang berlangsung di AWS akun Anda, termasuk acara untuk AWS DMS, buat jejak. Jejak memungkinkan CloudTrail untuk mengirimkan file log ke bucket Amazon S3. Secara default, saat Anda membuat jejak di konsol, jejak tersebut berlaku untuk semua AWS Wilayah. Jejak mencatat peristiwa dari semua AWS Wilayah di AWS partisi dan mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Selain itu, Anda dapat mengonfigurasi AWS layanan lain untuk menganalisis lebih lanjut dan menindaklanjuti data peristiwa yang dikumpulkan dalam CloudTrail log. Untuk informasi selengkapnya, lihat:

Semua AWS DMS tindakan dicatat oleh CloudTrail dan didokumentasikan dalam AWS Database Migration Service APIReferensi. Misalnya, panggilan keCreateReplicationInstance, TestConnection dan StartReplicationTask tindakan menghasilkan entri dalam file CloudTrail log.

Setiap entri peristiwa atau log berisi informasi tentang siapa yang membuat permintaan tersebut. Informasi identitas membantu Anda menentukan hal berikut:

  • Baik permintaan tersebut dibuat dengan kredensial pengguna root atau IAM.

  • Apakah permintaan tersebut dibuat dengan kredensial keamanan sementara untuk satu peran atau pengguna terfederasi.

  • Apakah permintaan itu dibuat oleh AWS layanan lain.

Untuk informasi lebih lanjut, lihat CloudTrail userIdentityelemen.

Memahami entri file AWS DMS log

Trail adalah konfigurasi yang memungkinkan pengiriman peristiwa sebagai file log ke bucket Amazon S3 yang Anda tentukan. CloudTrail file log berisi satu atau lebih entri log. Peristiwa mewakili permintaan tunggal dari sumber manapun dan mencakup informasi tentang tindakan yang diminta, tanggal dan waktu tindakan, parameter permintaan, dan sebagainya. CloudTrail file log bukanlah jejak tumpukan yang dipesan dari API panggilan publik, sehingga tidak muncul dalam urutan tertentu.

Contoh berikut menunjukkan entri CloudTrail log yang menunjukkan RebootReplicationInstance tindakan.

{ "eventVersion": "1.05", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAIOSFODNN7EXAMPLE:johndoe", "arn": "arn:aws:sts::123456789012:assumed-role/admin/johndoe", "accountId": "123456789012", "accessKeyId": "ASIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2018-08-01T16:42:09Z" }, "sessionIssuer": { "type": "Role", "principalId": "AKIAIOSFODNN7EXAMPLE", "arn": "arn:aws:iam::123456789012:role/admin", "accountId": "123456789012", "userName": "admin" } } }, "eventTime": "2018-08-02T00:11:44Z", "eventSource": "dms.amazonaws.com", "eventName": "RebootReplicationInstance", "awsRegion": "us-east-1", "sourceIPAddress": "72.21.198.64", "userAgent": "console.amazonaws.com", "requestParameters": { "forceFailover": false, "replicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:EX4MBJ2NMRDL3BMAYJOXUGYPUE" }, "responseElements": { "replicationInstance": { "replicationInstanceIdentifier": "replication-instance-1", "replicationInstanceStatus": "rebooting", "allocatedStorage": 50, "replicationInstancePrivateIpAddresses": [ "172.31.20.204" ], "instanceCreateTime": "Aug 1, 2018 11:56:21 PM", "autoMinorVersionUpgrade": true, "engineVersion": "2.4.3", "publiclyAccessible": true, "replicationInstanceClass": "dms.t2.medium", "availabilityZone": "us-east-1b", "kmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/f7bc0f8e-1a3a-4ace-9faa-e8494fa3921a", "replicationSubnetGroup": { "vpcId": "vpc-1f6a9c6a", "subnetGroupStatus": "Complete", "replicationSubnetGroupArn": "arn:aws:dms:us-east-1:123456789012:subgrp:EDHRVRBAAAPONQAIYWP4NUW22M", "subnets": [ { "subnetIdentifier": "subnet-cbfff283", "subnetAvailabilityZone": { "name": "us-east-1b" }, "subnetStatus": "Active" }, { "subnetIdentifier": "subnet-d7c825e8", "subnetAvailabilityZone": { "name": "us-east-1e" }, "subnetStatus": "Active" }, { "subnetIdentifier": "subnet-6746046b", "subnetAvailabilityZone": { "name": "us-east-1f" }, "subnetStatus": "Active" }, { "subnetIdentifier": "subnet-bac383e0", "subnetAvailabilityZone": { "name": "us-east-1c" }, "subnetStatus": "Active" }, { "subnetIdentifier": "subnet-42599426", "subnetAvailabilityZone": { "name": "us-east-1d" }, "subnetStatus": "Active" }, { "subnetIdentifier": "subnet-da327bf6", "subnetAvailabilityZone": { "name": "us-east-1a" }, "subnetStatus": "Active" } ], "replicationSubnetGroupIdentifier": "default-vpc-1f6a9c6a", "replicationSubnetGroupDescription": "default group created by console for vpc id vpc-1f6a9c6a" }, "replicationInstanceEniId": "eni-0d6db8c7137cb9844", "vpcSecurityGroups": [ { "vpcSecurityGroupId": "sg-f839b688", "status": "active" } ], "pendingModifiedValues": {}, "replicationInstancePublicIpAddresses": [ "18.211.48.119" ], "replicationInstancePublicIpAddress": "18.211.48.119", "preferredMaintenanceWindow": "fri:22:44-fri:23:14", "replicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:EX4MBJ2NMRDL3BMAYJOXUGYPUE", "replicationInstanceEniIds": [ "eni-0d6db8c7137cb9844" ], "multiAZ": false, "replicationInstancePrivateIpAddress": "172.31.20.204", "patchingPrecedence": 0 } }, "requestID": "a3c83c11-95e8-11e8-9d08-4b8f2b45bfd5", "eventID": "b3c4adb1-e34b-4744-bdeb-35528062a541", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }

AWS DMS Pencatatan konteks

AWS DMS menggunakan pencatatan konteks untuk memberi Anda informasi tentang migrasi yang sedang berlangsung. Pencatatan konteks menulis informasi, seperti berikut ini, ke CloudWatch log tugas:

  • Informasi tentang koneksi tugas ke basis data sumber dan target.

  • Perilaku tugas replikasi. Anda dapat menggunakan log tugas untuk mendiagnosis masalah replikasi.

  • SQLpernyataan tanpa data yang AWS DMS dijalankan pada basis data sumber dan target. Anda dapat menggunakan SQL log untuk mendiagnosis perilaku migrasi yang tidak terduga.

  • Streaming detail posisi untuk setiap CDC acara.

Pencatatan konteks hanya tersedia di AWS DMS versi 3.5.0 atau lebih tinggi.

AWS DMS mengaktifkan pencatatan konteks secara default. Untuk mengontrol pencatatan konteks, setel pengaturan EnableLogContext tugas ke true ataufalse, atau dengan memodifikasi tugas di konsol.

AWS DMS menulis informasi log konteks ke tugas replikasi CloudWatch log setiap tiga menit. Pastikan instance replikasi Anda memiliki ruang yang cukup untuk log aplikasinya. Untuk informasi selengkapnya tentang mengelola log tugas, lihatMelihat dan mengelola log AWS DMS tugas.

Jenis Objek

AWS DMS menghasilkan konteks login CloudWatch untuk jenis objek berikut.

Jenis Objek Deskripsi
TABLE_NAME Entri log ini berisi informasi tentang tabel yang berada dalam cakupan dengan aturan pemetaan tugas saat ini. Anda dapat menggunakan entri ini untuk memeriksa peristiwa tabel untuk periode tertentu selama migrasi.
SCHEMA_NAME Entri log ini berisi informasi tentang skema yang digunakan oleh aturan pemetaan tugas saat ini. Anda dapat menggunakan entri ini untuk menentukan skema mana yang AWS DMS digunakan untuk periode tertentu selama migrasi.
TRANSACTION_ID Entri ini berisi ID transaksi untuk tiap-tiap DML DDL perubahan yang diambil dari database sumber. Anda dapat menggunakan entri log ini untuk menentukan perubahan apa yang terjadi selama transaksi tertentu.
CONNECTION_ID Entri ini berisi ID koneksi. Anda dapat menggunakan entri log ini untuk menentukan koneksi mana yang AWS DMS digunakan untuk setiap langkah migrasi.
STATEMENT Entri ini berisi SQL kode yang digunakan untuk mengambil, memproses, dan menerapkan setiap perubahan migrasi.
STREAM_POSITION Entri ini berisi posisi dalam file log transaksi untuk setiap tindakan migrasi pada database sumber. Format untuk entri ini bervariasi antara jenis mesin database sumber. Anda juga dapat menggunakan informasi ini untuk menentukan posisi awal untuk pos pemeriksaan pemulihan saat mengonfigurasi replikasi CDC -only.

Contoh Pencatatan

Bagian ini berisi contoh catatan log yang dapat Anda gunakan untuk memantau replikasi dan mendiagnosis masalah replikasi.

Contoh log koneksi

Bagian ini berisi sampel log yang menyertakan koneksiIDs.

2023-02-22T10:09:29 [SOURCE_CAPTURE ]I: Capture record 1 to internal queue from Source {operation:START_REGULAR (43), connectionId:27598, streamPosition:0000124A/6800A778.NOW} (streamcomponent.c:2920) 2023-02-22T10:12:30 [SOURCE_CAPTURE ]I: Capture record 0 to internal queue from Source {operation:IDLE (51), connectionId:27598} (streamcomponent.c:2920) 2023-02-22T11:25:27 [SOURCE_CAPTURE ]I: Capture record 0 to internal queue from Source {operation:IDLE (51), columnName:region, connectionId:27598} (streamcomponent.c:2920)

Contoh log perilaku tugas

Bagian ini berisi sampel log tentang perilaku log tugas replikasi. Anda dapat menggunakan informasi ini untuk mendiagnosis masalah replikasi, seperti tugas dalam IDLE status.

SOURCE_CAPTURELog berikut menunjukkan bahwa tidak ada peristiwa yang tersedia untuk dibaca dari file log database sumber, dan berisi TARGET_APPLY catatan yang menunjukkan bahwa tidak ada peristiwa yang diterima dari AWS DMS CDC komponen untuk diterapkan ke database target. Peristiwa ini juga berisi detail konteks terkait peristiwa yang diterapkan sebelumnya.

2023-02-22T11:23:24 [SOURCE_CAPTURE ]I: No Event fetched from wal log (postgres_endpoint_wal_engine.c:1369) 2023-02-22T11:24:29 [TARGET_APPLY ]I: No records received to load or apply on target , waiting for data from upstream. The last context is {operation:INSERT (1), tableName:sales_11, schemaName:public, txnId:18662441, connectionId:17855, statement:INSERT INTO "public"."sales_11"("sales_no","dept_name","sale_amount","sale_date","region") values (?,?,?,?,?),

SQLcontoh log pernyataan

Bagian ini berisi sampel log tentang SQL pernyataan yang dijalankan pada basis data sumber dan target. SQLPernyataan yang Anda lihat di log hanya menampilkan SQL pernyataan; mereka tidak menampilkan data. TARGET_APPLYLog berikut menunjukkan INSERT pernyataan yang berjalan pada target.

2023-02-22T11:26:07 [TARGET_APPLY ]I: Applied record 2193305 to target {operation:INSERT (1), tableName:sales_111, schemaName:public, txnId:18761543, connectionId:17855, statement:INSERT INTO "public"."sales_111"("sales_no","dept_name","sale_amount","sale_date","region") values (?,?,?,?,?),

Batasan

Batasan berikut berlaku untuk pencatatan AWS DMS konteks:

  • Meskipun AWS DMS membuat logging minimal untuk semua tipe titik akhir, logging konteks khusus mesin ekstensif hanya tersedia untuk tipe titik akhir berikut. Sebaiknya aktifkan pencatatan konteks saat menggunakan tipe titik akhir ini.

    • Saya SQL

    • Postgre SQL

    • Oracle

    • SQLServer Microsoft

    • MongoDB/Amazon DocumentDB

    • Amazon S3