El Agente de operaciones escribe en un archivo de registro llamado logging-module.log
. Cuando el agente se ejecuta sin supervisión por períodos prolongados o cuando ocurre un problema, este archivo de “registro automático” puede consumir todo el espacio disponible en disco. En este documento, se describe cómo usar la rotación del registro para evitar este problema.
La versión 2.31.0 del Agente de operaciones presenta una característica de rotación del registro configurable integrada en el agente. Si ejecutas la versión 2.31.0 o posterior del Agente de operaciones, puedes usar la función de rotación del registro integrada. Consulta Configura la rotación de registros en el Agente de operaciones.
También puedes administrar la rotación del registro de forma manual. Es posible que necesites un proceso manual si usas una versión del Agente de operaciones sin rotación del registro integrada o si prefieres rotar tus registros de forma manual. Consulta Configura la rotación de archivos de registro automático en las VMs de Linux para obtener un enfoque posible.
Configura la rotación del registro en el Agente de operaciones
En esta sección, se describe cómo modificar la configuración de la rotación del registro predeterminada que usa el Agente de operaciones para rotar sus registros de forma automática. Para usar esta función, se requiere la versión 2.31.0 o una posterior del Agente de operaciones.
Configuración predeterminada
El Agente de operaciones usa la entrada default_self_log_file_rotation
para configurar la rotación del registro. Esta entrada de configuración toma tres opciones. En el siguiente fragmento, se muestran las opciones y sus valores predeterminados:
default_self_log_file_rotation: enabled: true max_file_size_megabytes: 400 backup_count: 1
La configuración de default_self_log_file_rotation
tiene tres opciones:
enabled
: Si la rotación del registro está habilitada. El valor predeterminado estrue
.max_file_size_megabytes
: El tamaño máximo que puede alcanzar el archivo de registro antes de que se realice una copia de seguridad mediante la rotación del registro. Se mide en megabytes (1,0242 bytes). El valor predeterminado es 400 y el valor válido mínimo es 1.backup_count
: La cantidad de archivos de registro antiguos que se retendrán. El valor predeterminado es 1 y el valor válido mínimo es 1.
Configuración del usuario de la rotación del registro
Para modificar la configuración predeterminada de la rotación del registro, debes anular esa configuración mediante un nuevo redireccionamiento de la configuración en el archivo de configuración del usuario del Agente de operaciones:
- En Linux:
/etc/google-cloud-ops-agent/config.yaml
- En Windows:
C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml
Para configurar la rotación del registro en el Agente de operaciones, agrega una sección global
al archivo de configuración del usuario y, luego, incluye el elemento de configuración default_self_log_file_rotation
en la sección global
. Es posible que ya tengas canalizaciones de registro o métricas en este archivo de configuración. Agrega la sección global
después de tus canalizaciones. El resultado y la especificación de todas las opciones y valores predeterminados tienen el siguiente aspecto:
logging: ... metrics: ... global: default_self_log_file_rotation: enabled: true max_file_size_megabytes: 400 backup_count: 1
Configuración de ejemplo
Para inhabilitar la rotación del registro por parte del agente de operaciones, especifica la opción enabled
con el valor false
:
logging: ... metrics: ... global: default_self_log_file_rotation: enabled: false
Para rotar el registro cuando el archivo alcanza 20 MB y conservar 5 copias de seguridad (6 archivos en total):
logging: ... metrics: ... global: default_self_log_file_rotation: max_file_size_megabytes: 20 backup_count: 5
Para rotar el registro cuando el archivo de registro alcanza 2,000 MB (2 GB) y mantener 1 copia de seguridad (2 archivos en total):
logging: ... metrics: ... global: default_self_log_file_rotation: max_file_size_megabytes: 2000
Para rotar el registro cuando el archivo de registro alcanza 400 MB y conservar 2 copias de seguridad (3 archivos en total):
logging: ... metrics: ... global: default_self_log_file_rotation: backup_count: 2
Si realizas cambios frecuentes cuando defines mejor la configuración de la rotación del registro, recuerda reiniciar el agente para aplicar los cambios.
Configura la rotación de archivos de registro propio en las VMs de Linux
Para limitar el tamaño del registro del agente secundario de registro en /var/log/google-cloud-ops-agent/subagents/logging-module.log
, instala y configura la utilidad logrotate
.
Instala la utilidad
logrotate
; para ello, ejecuta el siguiente comando:En Debian y Ubuntu
sudo apt install logrotate
En CentOS, RHEL y Fedora
sudo yum install logrotate
Crea un archivo de configuración
logrotate
en/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
Configura
crontab
osystemd timer
para activar la utilidadlogrotate
de forma periódica.
Una vez que la rotación del registro entra en vigor, verás los archivos rotados en el directorio /var/log/google-cloud-ops-agent/subagents/
. Los resultados son similares a los siguientes:
/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
Para probar la rotación del registro, haz lo siguiente:
Para reducir de forma temporal el tamaño en el que se activa la rotación, configura el valor
maxsize
como1k
en el archivo/etc/logrotate.d/google-cloud-ops-agent.conf
.Activa el archivo de registro propio del agente para que sea mayor que 1K; para ello, reinicia el agente varias veces:
sudo service google-cloud-ops-agent restart
Espera a que
crontab
osystemd timer
se activen para activar la utilidadlogrotate
o activa la utilidadlogrotate
de forma manual si ejecutas este comando:sudo logrotate /etc/logrotate.d/google-cloud-ops-agent.conf
Verifica que veas archivos de registro rotados en el directorio
/var/log/google-cloud-ops-agent/subagents/
.Restablece la configuración de la rotación de registros mediante el restablecimiento del valor
maxsize
original.