/
/

Cómo automatizar la rotación de archivos de log y los informes de espacio en disco en todos tus clientes

por Team Ninja
How to Automate Log File Rotation and Disk Space Reporting Across Clients blog banner image

Resumen instantáneo

Este post ofrece una lista completa de comandos CMD básicos y una inmersión profunda en los comandos de Windows, con más de 70 comandos cmd esenciales tanto para principiantes como para usuarios avanzados. Explica comandos prácticos del símbolo del sistema para la gestión de archivos, la navegación por directorios, la solución de problemas de red, las operaciones de disco y la automatización con ejemplos reales para mejorar la productividad. Tanto si estás aprendiendo los comandos básicos de cmd como si ya dominas las herramientas avanzadas de la CLI de Windows, esta guía te ayudará a utilizar el Símbolo del sistema de forma más eficaz.

La rotación de archivos de log es imprescindible en entornos empresariales. Los archivos de log crecen de forma natural con el tiempo, mientras que el espacio en disco sigue siendo limitado. Sin una supervisión centralizada, puedes acumular demasiados y quedarte sin espacio para el resto de tus archivos. Automatizar el proceso garantiza que tus archivos de log se archiven o se eliminen a intervalos regulares o cuando el uso del disco supere un umbral determinado.

Guía para automatizar la rotación de archivos de log y el control del espacio en disco

La rotación de logs se puede automatizar con Windows PowerShell. También puedes usar PowerShell para recopilar informes de uso de disco. Para programar tareas, puedes recurrir al símbolo del sistema y ejecutar un script de PowerShell a intervalos fijos. En escenarios más complejos, como definir umbrales de uso de disco, te conviene una herramienta RMM.

📌 Requisitos previos:

  • Necesitas PowerShell 5.1 o una versión superior.
  • Necesitas privilegios completos de administrador.
  • Necesitas acceso al Registro para hacer seguimiento de las políticas y la configuración de las aplicaciones.
  • Necesitas programar tareas en local o contar con una integración con un RMM para ejecutar estos scripts a intervalos regulares.
  • Necesitas acceso a las directivas de grupo para aplicar políticas de retención de logs cuando corresponda.

🎥 Este vídeo explica paso a paso cómo automatizar la rotación de archivos de log y los informes de espacio en disco en todos tus clientes.

📌 Estrategias de despliegue recomendadas:

Haz clic para elegir un paso💻
Ideal para usuarios individuales
💻💻💻
Ideal para empresas
Paso 1: identifica y cataloga las ubicaciones clave de los archivos de log✓
Paso 2: automatiza la rotación de logs según su antigüedad o tamaño✓
Paso 3: usa CMD y tareas programadas para una limpieza básica de logs✓
Paso 4: recopila informes de uso de disco con PowerShell✓
Paso 5: registra el estado de la rotación y el espacio libre en el Registro✓
Paso 6: aplica la política de logs mediante GPO (cuando sea posible)✓

Paso 1: identifica y cataloga las ubicaciones clave de los archivos de log

Los administradores pueden usar Windows PowerShell para listar el contenido de los directorios de logs que se monitorizan con más frecuencia, como:

  • C:\Windows\System32\LogFiles
  • C:\ProgramData\AppName\Logs\
  • C:\Logs\CustomScripts\
  • C:\inetpub\logs\LogFiles (IIS)
  • Herramientas de antivirus, copia de seguridad y monitorización (por ejemplo, SentinelOne, Veeam, NinjaOne)

Para hacerlo, sigue estos pasos:

  1. Abre el menú Inicio y busca Windows PowerShell.
  2. Haz clic derecho en Windows PowerShell > Ejecutar como administrador.
  3. Despliega el script que generará los logs. Este es un script de PowerShell de ejemplo:

$paths = @(

"C:\Windows\System32\LogFiles",

"C:\ProgramData\AppName\Logs",

"C:\Logs",

"C:\inetpub\logs\LogFiles"

)

foreach ($path in $paths) {

Get-ChildItem -Path $path -Recurse -Include *.log |

Select-Object FullName, Length, LastWriteTime

}

Adapta el script a tus necesidades.

  1. Exporta los archivos a un CSV para tener una referencia de comparación.

Paso 2: automatiza la rotación de logs según su antigüedad o tamaño

Puedes rotar los logs cuando superen un número determinado de días. Para ello, sigue estos pasos:

  1. Abre el menú Inicio y busca Windows PowerShell.
  2. Haz clic derecho en Windows PowerShell > Ejecutar como administrador.
  3. Escribe este script y pulsa Intro:

$logPath = "C:\ProgramData\AppName\Logs"

$days = 30

Get-ChildItem -Path $logPath -Recurse -Filter *.log |

Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-$days) } |

ForEach-Object {

$archive = "$($_.FullName).bak"

Rename-Item -Path $_.FullName -NewName $archive

}

También puedes comprimir los logs en un archivo .zip antes de archivarlos o eliminarlos cuando superen un umbral determinado.

Para comprimir los archivos, despliega este script:

Compress-Archive -Path $archive -DestinationPath "$archive.zip"

Remove-Item -Path $archive

Para eliminar los archivos de log cuando superen un umbral determinado, despliega este script:

Get-ChildItem -Path $logPath -Recurse -Filter *.log |

Where-Object { $_.Length -gt 100MB } |

Remove-Item -Force

Ajusta el umbral de tamaño de archivo a tus necesidades y a los requisitos de tu organización.

Paso 3: usa CMD y tareas programadas para una limpieza básica de logs

Puedes usar el símbolo del sistema para programar una tarea que limpie tus archivos de log periódicamente después de un plazo determinado. Abre el símbolo del sistema con permisos elevados y ejecuta el comando. Este es un comando de ejemplo que puedes utilizar:

Para eliminar los logs:

forfiles /p "C:\Logs" /s /m *.log /d -30 /c "cmd /c del @path"

Para programar una tarea:

schtasks /create /tn "RotateLogs" /tr "powershell.exe -File C:\Scripts\RotateLogs.ps1" /sc weekly /ru SYSTEM

El script anterior ejecutará a intervalos fijos un archivo de PowerShell como este:

Get-ChildItem -Path $logPath -Recurse -Filter *.log |
Where-Object { $_.Length -gt 100MB } |
Remove-Item -Force

Adapta los scripts del símbolo del sistema y de PowerShell en cada endpoint según los requisitos de tu organización y las políticas de tus clientes.

Paso 4: recopila informes de uso de disco con PowerShell

Controlar el uso del disco te ayuda a saber cuántos logs has generado y si ha llegado el momento de eliminarlos o archivarlos. Para hacerlo, sigue estos pasos:

  1. Abre el menú Inicio y busca Windows PowerShell.
  2. Haz clic derecho en Windows PowerShell > Ejecutar como administrador.
  3. Escribe este script y pulsa Intro:

Get-PSDrive -PSProvider FileSystem | Select-Object Name, @{Name="Free(GB)";Expression={[math]::round($_.Free/1GB,2)}}, @{Name="Used(GB)";Expression={[math]::round(($_.Used)/1GB,2)}}

Detailed per folder:

Get-ChildItem "C:\" -Directory |

ForEach-Object {

$_.FullName

(Get-ChildItem $_.FullName -Recurse | Measure-Object -Property Length -Sum).Sum / 1MB

}

  1. Exporta los informes.

Paso 5: registra el estado de la rotación y el espacio libre en el Registro

Puedes dejar constancia de los resultados de las limpiezas de logs en el Registro de Windows y seguir su estado con una herramienta de gestión de endpoints.

  1. Abre el menú Inicio y busca Windows PowerShell.
  2. Haz clic derecho en Windows PowerShell > Ejecutar como administrador.
  3. Escribe este script y pulsa Intro:

New-Item -Path "HKLM:\SOFTWARE\Org\LogRotation" -Force

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\LogRotation" -Name "LastRotation" -Value (Get-Date).ToString("u")

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\LogRotation" -Name "FreeSpaceGB" -Value 120

  1. Para comprobar los datos dentro de las claves del Registro, abre el símbolo del sistema como administrador.
  2. Escribe este comando y pulsa Intro:

reg query HKLM\SOFTWARE\Org\LogRotation

Paso 6: aplica la política de logs mediante GPO (cuando sea posible)

  1. Abre el menú Inicio y busca Editar directiva de grupo para abrir el programa.
  2. Ve a esta ruta: Configuración del equipo > Plantillas administrativas > Componentes de Windows > Servicio de registro de eventos.
  3. Entra en Aplicación, Seguridad y Sistema para configurar las siguientes directivas:
    • Especificar el tamaño máximo del archivo de registro (KB) : aquí puedes indicar el tamaño máximo del log.
    • Configurar el acceso al registro : define el permiso de acceso al registro de seguridad.
    • Hacer copia de seguridad del registro automáticamente cuando esté lleno : define el método de retención de logs (sobrescribir o archivar).

⚠️ Resolución de problemas y aspectos a tener en cuenta

Problema o riesgoPosibles consecuenciasSolución o reversión
Aparecen errores de permisos.No podrás rotar ni eliminar los archivos de log.Asegúrate de ejecutar estos scripts con permisos elevados.
Los archivos de log están bloqueados.No podrás rotar ni eliminar los archivos de log.Revisa handle.exe o reinicia el servicio antes de rotarlos o eliminarlos. Algunas aplicaciones pueden impedir que modifiques sus archivos de log.
Faltan las actualizaciones del Registro.No podrás registrar datos en el Registro de Windows.Comprueba que los scripts se ejecutaron correctamente y que las rutas eran las correctas.
Las tareas programadas no se activan.No podrás rotar ni eliminar los archivos de log.Valida el historial del Programador de tareas o consulta el estado de las directivas en el símbolo del sistema con gpresult /h result.html.

Guía de inicio rápido

NinjaOne ofrece varias funciones relacionadas con la rotación de archivos de log y los informes de espacio en disco:

1. Informes de espacio en disco:

Incluye un script integrado, «Disk Space Alert», que puede:

  • Avisar cuando una unidad baja de un porcentaje o un tamaño determinados
  • Diferenciar entre unidades de sistema y de datos

2. Gestión de logs y archivos:

Varios scripts facilitan la monitorización relacionada con los logs:

3. Otras funciones relevantes:

Otros aspectos a tener en cuenta al automatizar la rotación de archivos de log y los informes de espacio en disco

  • Algunas aplicaciones escriben logs rotativos de forma automática, mientras que otras hay que configurarlas. Tenlo en cuenta al ajustar estos parámetros.
  • Los clientes sujetos a HIPAA y SOC 2 pueden necesitar periodos de archivado más largos. En ese caso, conviene rotar los archivos de log en lugar de eliminarlos.
  • Vigila de cerca tus unidades. Configura la limpieza de logs para que se active cuando el uso llegue al 80 %-90 %.
  • Usa herramientas como NXLog o PowerShell para extraer los eventos relevantes antes de la rotación.

Servicios de NinjaOne para la rotación de logs y los informes de espacio en disco

NinjaOne ayuda a las organizaciones a gestionar sus archivos de log y su espacio en disco de estas formas:

FunciónBeneficioCómo facilita el proceso
Desplegar y programar scripts de PowerShell para la rotación de logs.Garantiza un mantenimiento de logs homogéneo en todos los dispositivos.Automatiza las tareas repetitivas y elimina la necesidad de limpiezas manuales.
Etiquetar dispositivos según el espacio libre en disco, el número de logs y las tendencias de crecimiento.Permite identificar los dispositivos en riesgo antes de que surjan problemas.Aporta una visibilidad clara para priorizar dónde hace falta actuar.
Avisar a los administradores cuando falla la limpieza o queda poco espacio.Evita tiempos de inactividad y problemas de rendimiento.Envía notificaciones proactivas para que los administradores puedan actuar rápido.
Generar informes de uso de disco y presencia de logs en todos los clientesRespalda las auditorías y las revisiones trimestrales con datos precisos.Ahorra tiempo al generar informes de cumplimiento y de negocio listos para usar.
Lanzar acciones condicionales (limpieza, notificaciones) a partir de umbrales.Mantiene los sistemas optimizados y en cumplimiento.Automatiza la respuesta a los problemas sin necesidad de intervención manual.

Gestiona el espacio en disco automatizando la rotación de archivos de log en todos tus dispositivos gestionados

Automatizar la rotación de archivos de log y la monitorización del espacio en disco es clave para unas operaciones de TI escalables. Es fundamental contar con una supervisión centralizada y asegurarte de que tus archivos de log no superen ciertos umbrales de uso de disco. Así podrás gestionar tus recursos de forma más eficiente y tu organización dedicará el espacio en disco a lo que de verdad importa.

Artículos relacionados:

Quizá también te interese…

¿Listo para simplificar los aspectos más complejos de las TI?