Agen Ops menulis ke file log yang disebut logging-module.log
. Saat
agen berjalan tanpa pengawasan dalam waktu lama atau saat terjadi masalah, file
"log mandiri" ini dapat menghabiskan semua ruang disk yang tersedia. Dokumen ini menjelaskan
cara menggunakan rotasi log untuk mencegah masalah ini.
Ops Agent versi 2.31.0 memperkenalkan fitur rotasi log yang dapat dikonfigurasi dan terintegrasi dengan agen. Jika menjalankan Ops Agent versi 2.31.0 atau yang lebih baru, Anda dapat menggunakan fitur rotasi log bawaan; lihat Mengonfigurasi rotasi log di Ops Agent.
Anda juga dapat mengelola rotasi log secara manual. Anda mungkin memerlukan proses manual jika menggunakan versi Agen Operasi tanpa rotasi log bawaan, atau jika Anda lebih suka memutar log secara manual. Lihat Menyiapkan rotasi file log mandiri di VM Linux untuk mengetahui salah satu kemungkinan pendekatan.
Mengonfigurasi rotasi log di Agen Operasional
Bagian ini menjelaskan cara mengubah konfigurasi rotasi log default yang digunakan oleh Ops Agent untuk memutar log secara otomatis. Untuk menggunakan fitur ini, Anda memerlukan Ops Agent versi 2.31.0 atau yang lebih baru.
Konfigurasi default
Agen Operasi menggunakan entri default_self_log_file_rotation
untuk
mengonfigurasi rotasi log. Entri konfigurasi ini menggunakan tiga opsi;
cuplikan berikut menunjukkan opsi dan nilai defaultnya:
default_self_log_file_rotation: enabled: true max_file_size_megabytes: 400 backup_count: 1
Konfigurasi default_self_log_file_rotation
menggunakan tiga opsi:
enabled
: Apakah rotasi log diaktifkan; defaultnya adalahtrue
.max_file_size_megabytes
: Ukuran maksimum yang dapat dicapai file log sebelum dicadangkan oleh rotasi log. Diukur dalam megabyte (10242 byte). Default adalah 400, nilai minimum yang valid adalah 1.backup_count
: Jumlah file log lama yang akan dipertahankan. Default adalah 1, nilai minimum yang valid adalah 1.
Konfigurasi pengguna untuk rotasi log
Untuk mengubah konfigurasi rotasi log default, Anda mengganti konfigurasi tersebut dengan menentukan ulang konfigurasi dalam file konfigurasi pengguna Ops Agent:
- Di Linux:
/etc/google-cloud-ops-agent/config.yaml
- Di Windows:
C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml
Untuk mengonfigurasi rotasi log di Ops Agent, tambahkan bagian global
ke file konfigurasi pengguna dan sertakan elemen konfigurasi default_self_log_file_rotation
di bagian global
. Anda mungkin sudah memiliki pipeline logging atau metrik dalam file konfigurasi ini; tambahkan bagian global
setelah pipeline Anda. Hasilnya, yang menentukan semua
opsi dan nilai default, akan terlihat seperti berikut:
logging: ... metrics: ... global: default_self_log_file_rotation: enabled: true max_file_size_megabytes: 400 backup_count: 1
Contoh konfigurasi
Untuk menonaktifkan rotasi log oleh Agen Operasi, tentukan opsi enabled
dengan nilai false
:
logging: ... metrics: ... global: default_self_log_file_rotation: enabled: false
Untuk merotasi log saat file log mencapai 20 MB dan menyimpan 5 cadangan (total 6 file):
logging: ... metrics: ... global: default_self_log_file_rotation: max_file_size_megabytes: 20 backup_count: 5
Untuk merotasi log saat file log mencapai 2.000 MB (2 GB) dan menyimpan 1 cadangan (total 2 file):
logging: ... metrics: ... global: default_self_log_file_rotation: max_file_size_megabytes: 2000
Untuk merotasi log saat file log mencapai 400 MB dan menyimpan 2 cadangan (total 3 file):
logging: ... metrics: ... global: default_self_log_file_rotation: backup_count: 2
Jika Anda sering melakukan perubahan saat meningkatkan kualitas konfigurasi rotasi log, jangan lupa untuk memulai ulang agen untuk menerapkan perubahan Anda.
Menyiapkan rotasi file log mandiri di VM Linux
Untuk membatasi ukuran log sub-agen logging di
/var/log/google-cloud-ops-agent/subagents/logging-module.log
, instal dan
konfigurasi utilitas logrotate
.
Instal utilitas
logrotate
dengan menjalankan perintah berikut:Di Debian dan Ubuntu
sudo apt install logrotate
Di CentOS, RHEL, dan Fedora
sudo yum install logrotate
Buat file konfigurasi
logrotate
di/etc/logrotate.d/google-cloud-ops-agent.conf
.sudo tee /etc/logrotate.d/google-cloud-ops-agent.conf > /dev/null << EOF # logrotate config to rotate Google Cloud Ops Agent self log file. # See https://manpages.debian.org/jessie/logrotate/logrotate.8.en.html for # the full options. /var/log/google-cloud-ops-agent/subagents/logging-module.log { # Log files are rotated every day. daily # Log files are rotated this many times before being removed. This # effectively limits the disk space used by the Ops Agent self log files. rotate 30 # Log files are rotated when they grow bigger than maxsize even before the # additionally specified time interval maxsize 256M # Skip rotation if the log file is missing. missingok # Do not rotate the log if it is empty. notifempty # Old versions of log files are compressed with gzip by default. compress # Postpone compression of the previous log file to the next rotation # cycle. delaycompress } EOF
Siapkan
crontab
atausystemd timer
untuk memicu utilitaslogrotate
secara berkala.
Setelah rotasi log diterapkan, Anda akan melihat file yang dirotasi di
direktori /var/log/google-cloud-ops-agent/subagents/
. Hasilnya akan terlihat mirip dengan output berikut:
/var/log/google-cloud-ops-agent/subagents$ ls -lh
total 24K
-rw-r--r-- 1 root root 717 Sep 3 19:54 logging-module.log
-rw-r--r-- 1 root root 6.8K Sep 3 19:51 logging-module.log.1
-rw-r--r-- 1 root root 874 Sep 3 19:50 logging-module.log.2.gz
-rw-r--r-- 1 root root 873 Sep 3 19:50 logging-module.log.3.gz
-rw-r--r-- 1 root root 3.2K Sep 3 19:34 logging-module.log.4.gz
Untuk menguji rotasi log, lakukan hal berikut:
Kurangi ukuran file untuk sementara saat rotasi dipicu dengan menetapkan nilai
maxsize
ke1k
dalam file/etc/logrotate.d/google-cloud-ops-agent.conf
.Memicu file log mandiri agen menjadi lebih besar dari 1 K dengan memulai ulang agen beberapa kali:
sudo service google-cloud-ops-agent restart
Tunggu hingga
crontab
atausystemd timer
diterapkan untuk memicu utilitaslogrotate
, atau picu utilitaslogrotate
secara manual dengan menjalankan perintah ini:sudo logrotate /etc/logrotate.d/google-cloud-ops-agent.conf
Pastikan Anda melihat file log yang dirotasi di direktori
/var/log/google-cloud-ops-agent/subagents/
.Reset konfigurasi rotasi log dengan memulihkan nilai
maxsize
asli.