Ikhtisar log basis data Aurora MySQL - Amazon Aurora

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

Ikhtisar log basis data Aurora MySQL

Anda dapat memantau jenis file log Aurora MySQL berikut:

  • Log kesalahan

  • Log kueri lambat

  • Log umum

  • Log audit

Log kesalahan Aurora MySQL dihasilkan secara default. Anda dapat membuat kueri lambat dan log umum dengan mengatur parameter di grup parameter DB Anda.

Log kesalahan Aurora MySQL

Kesalahan tulis Aurora MySQL dalam file mysql-error.log. Setiap file log memiliki jam pembuatan (dalam UTC) yang ditambahkan pada namanya. File log juga memiliki stempel waktu yang membantu Anda menentukan kapan entri log ditulis.

Aurora MySQL ditulis ke log kesalahan hanya saat dinyalakan, dimatikan, dan saat terjadi kesalahan. Instans DB dapat memakan waktu berjam-jam atau berhari-hari tanpa perlu menulis entri baru ke log kesalahan. Jika Anda melihat tidak ada entri terbaru, berarti server tidak mengalami kesalahan yang akan mengakibatkan entri log.

Secara desain, log kesalahan difilter sehingga hanya peristiwa tak terduga seperti kesalahan yang ditampilkan. Namun, log kesalahan juga berisi beberapa informasi basis data tambahan, misalnya kemajuan kueri, yang tidak ditampilkan. Oleh karena itu, bahkan tanpa kesalahan aktual, ukuran log kesalahan mungkin meningkat dikarenakan aktivitas basis data yang sedang berlangsung. Dan meskipun Anda mungkin melihat ukuran tertentu dalam byte atau kilobyte untuk log kesalahan di AWS Management Console, log tersebut mungkin memiliki 0 byte saat Anda mengunduhnya.

Aurora MySQL menulis mysql-error.log ke disk setiap 5 menit. Ini menambahkan konten log kemysql-error-running.log.

Aurora MySQL merotasi file mysql-error-running.log setiap jam.

catatan

Periode retensi log berbeda antara Amazon RDS dan Aurora.

Log umum dan kueri lambat Aurora MySQL

Anda dapat menulis log umum dan log kueri lambat Aurora MySQL ke file atau tabel basis data. Untuk melakukannya, atur parameter di grup parameter DB Anda. Untuk informasi tentang pembuatan dan modifikasi grup parameter DB, lihat Menggunakan grup parameter. Anda harus mengatur parameter ini sebelum dapat melihat log kueri lambat atau log umum di konsol Amazon RDS atau dengan menggunakan Amazon RDS API, Amazon RDS CLI, atau AWS SDK.

Anda dapat mengontrol pengelogan Aurora MySQL dengan menggunakan parameter dalam daftar ini:

  • slow_query_log: Untuk membuat log kueri lambat, atur ke 1. Nilai default-nya adalah 0.

  • general_log: Untuk membuat log umum, atur ke 1. Nilai default-nya adalah 0.

  • long_query_time: Untuk mencegah kueri yang berjalan cepat masuk ke log kueri lambat, tentukan nilai untuk runtime kueri terpendek yang akan dicatat, dalam detik. Nilai default-nya adalah 10 detik; nilai minimumnya adalah 0. Jika log_output = FILE, Anda dapat menentukan nilai titik mengambang yang masuk ke resolusi mikrodetik. Jika log_output = TABLE, Anda harus menentukan nilai integer dengan resolusi kedua. Hanya kueri yang runtime-nya melampaui nilai long_query_time yang akan dicatat. Misalnya, mengatur long_query_time ke 0,1 akan mencegah pengelogan kueri apa pun yang berjalan kurang dari 100 milidetik.

  • log_queries_not_using_indexes: Untuk mencatat semua kueri yang tidak menggunakan indeks pada log kueri lambat, atur ke 1. Kueri yang tidak menggunakan indeks dicatat meskipun runtime-nya kurang dari nilai parameter long_query_time. Nilai default-nya adalah 0.

  • log_output option: Anda dapat menentukan salah satu opsi berikut untuk parameter log_output.

    • TABLE – Menulis kueri umum ke tabel mysql.general_log, dan kueri lambat ke tabel mysql.slow_log.

    • FILE – Menulis log umum dan log kueri lambat ke sistem file.

    • NONE – Menonaktifkan pengelogan.

    Untuk Aurora MySQL versi 2, nilai default untuk log_output adalah FILE.

Untuk informasi selengkapnya tentang log umum dan kueri lambat, buka topik berikut di dokumentasi MySQL:

Log audit Aurora MySQL

Pengelogan audit untuk Aurora MySQL disebut Audit Lanjutan. Untuk mengaktifkan Audit Lanjutan, tetapkan parameter klaster DB tertentu. Untuk informasi selengkapnya, lihat Menggunakan Audit Lanjutan dengan klaster DB Amazon Aurora MySQL.

Rotasi dan retensi log untuk Aurora MySQL

Saat pengelogan diaktifkan, Amazon Aurora merotasi atau menghapus file log secara berkala. Langkah ini merupakan tindakan pencegahan untuk mengurangi kemungkinan file log besar memblokir penggunaan basis data atau memengaruhi performa. Aurora MySQL menangani rotasi dan penghapusan sebagai berikut:

  • Ukuran file log kesalahan Aurora MySQL dibatasi hingga tidak lebih dari 15 persen dari penyimpanan lokal untuk instans DB. Untuk mempertahankan ambang batas ini, log secara otomatis dirotasi setiap jam. Aurora MySQL menghapus log setelah 30 hari atau ketika 15% dari ruang disk tercapai. Jika ukuran file log gabungan melebihi ambang batas setelah file log lama dihapus, file log paling lama akan dihapus hingga ukuran file log tidak lagi melebihi ambang batas.

  • Aurora MySQL menghapus log audit, umum, dan kueri lambat setelah 24 jam atau ketika 15% dari penyimpanan telah terpakai.

  • Saat pengelogan FILE logging, file log umum dan kueri lambat akan diperiksa setiap jam dan file log yang berusia lebih dari 24 jam akan dihapus. Dalam beberapa kasus, ukuran file log gabungan yang tersisa setelah penghapusan mungkin melebihi ambang batas 15 persen dari ruang lokal instans DB. Dalam kasus ini, file log yang paling lama akan dihapus hingga ukuran file log tidak lagi melebihi ambang batas.

  • Saat pengelogan TABLE diaktifkan, tabel log tidak dirotasi atau dihapus. Tabel log akan dipotong jika ukuran semua log yang digabungkan terlalu besar. Anda dapat berlangganan peristiwa low_free_storage yang akan diberitahukan saat tabel log harus dirotasi atau dihapus secara manual untuk mengosongkan ruang. Untuk informasi selengkapnya, lihat Bekerja dengan pemberitahuan peristiwa Amazon RDS.

    Anda dapat merotasi tabel mysql.general_log secara manual dengan memanggil prosedur mysql.rds_rotate_general_log. Anda dapat merotasi tabel mysql.slow_log dengan mengikuti prosedur mysql.rds_rotate_slow_log.

    Saat Anda merotasi tabel log secara manual, tabel log saat ini disalin ke tabel log cadangan dan entri di tabel log saat ini dihapus. Jika sudah ada, tabel log cadangan akan dihapus sebelum tabel log saat ini disalin ke cadangan. Anda dapat meminta tabel log cadangan jika diperlukan. Tabel log cadangan untuk tabel mysql.general_log bernama mysql.general_log_backup. Tabel log cadangan untuk tabel mysql.slow_log bernama mysql.slow_log_backup.

  • Log audit Aurora MySQL dirotasi saat ukuran file mencapai 100 MB, dan dihapus setelah 24 jam.

Untuk bekerja dengan log dari konsol Amazon RDS, Amazon RDS API, Amazon RDS CLI, atau AWS SDK, atur parameter log_output ke FILE. Seperti log kesalahan Aurora MySQL, file log ini dirotasi setiap jam. File log yang dihasilkan selama 24 jam sebelumnya akan dipertahankan. Perhatikan bahwa periode retensi log berbeda antara Amazon RDS dan Aurora.