Logtail impone límites en los entornos de ejecución, la recolección de archivos, la recolección de contenedores, la gestión de puntos de control, las configuraciones, los grupos de máquinas, el rendimiento y el manejo de errores.
Entorno de ejecución
|
Límites |
Restricciones |
|
Arquitectura |
|
|
Recursos de cómputo |
El uso real depende de la tasa de recolección, el directorio monitoreado, la cantidad de archivos y los bloqueos de envío. Mantenga el uso por debajo del 80% del límite. |
|
Entorno del sistema |
Los sistemas operativos compatibles se enumeran en System types. |
|
Kubernetes |
Importante
Todos los componentes de Logtail se ejecutan con prioridad system-cluster-critical y pueden desalojar pods existentes. No despliegue si los recursos del clúster son insuficientes. |
|
docker |
Límites para la recolección de salida estándar de contenedores:
|
|
Medio de almacenamiento |
Evite el almacenamiento de red compartido (NAS, OSS), ya que puede causar truncamiento de datos, inconsistencia en el contenido o suspensión de la recolección. Use Elastic Block Storage (EBS). |
Recolección de archivos
|
Límites |
Restricciones |
|
Tamaño de un solo registro |
Predeterminado: 512 KB, ajustable hasta 8 MB con el parámetro de inicio max_read_buffer_size. Set Logtail startup parameters. Los registros multilínea divididos por una expresión regular de primera línea siguen sujetos al límite de 512 KB por registro. Los registros que superan los 512 KB se dividen forzosamente. Por ejemplo, un registro de 1,025 KB se divide en 512 KB + 512 KB + 1 KB, lo que genera varios registros incompletos. |
|
Codificación de archivos |
Se admiten las codificaciones UTF-8 y GBK. Se recomienda UTF-8 para un rendimiento óptimo. Aviso
Si los archivos de registro usan otros formatos de codificación, pueden presentarse problemas como caracteres ilegibles o pérdida de datos. |
|
Tamaño del archivo de registro |
Sin límite. |
|
Rotación de archivos de registro |
Tamaño predeterminado de la cola de rotación: 20, ajustable con el parámetro de inicio logreader_max_rotate_queue_size. Set Logtail startup parameters. Puede especificar la ruta del registro en formato Importante
No mezcle estos dos formatos en la misma instancia de Logtail. Si un solo archivo coincide con varias configuraciones, se producirá una recolección duplicada. Si hay más de 20 archivos sin procesar, los nuevos registros se perderán. Compruebe si se excedió la cuota de escritura del shard del logstore y ajuste la concurrencia de Logtail. Recommended parameter values. |
|
Comportamiento de recolección cuando se bloquea el análisis de registros |
Cuando el análisis de registros se bloquea, Logtail mantiene abierto el descriptor del archivo de registro para evitar su eliminación y la pérdida de datos. Si el archivo de registro rota varias veces mientras el análisis está bloqueado, Logtail coloca el archivo en la cola de rotación. |
|
Expresión regular |
Se admiten expresiones regulares compatibles con Perl. |
|
JSON |
Se admite completamente el JSON estándar, tal como se define en RFC 7159 y ECMA-404. El JSON no estándar, como |
|
Varias configuraciones de Logtail para un solo archivo |
De forma predeterminada, un archivo coincide solo con una configuración de Logtail. How to collect multiple copies of logs from a single file. Importante
Al recolectar varias copias, la E/S de lectura de archivos, los recursos de cómputo y la E/S de red aumentan linealmente. |
|
Comportamiento de apertura de archivos |
Logtail mantiene abiertos los archivos recolectados y pending para garantizar la integridad de los datos. Un archivo se cierra cuando:
Para liberar los manejadores de archivos de forma programada tras su eliminación, establezca el parámetro de inicio force_release_deleted_file_fd_timeout. Set Logtail startup parameters. |
|
Comportamiento inicial de recolección de registros |
Logtail recolecta únicamente datos incrementales. Al detectar por primera vez la modificación de un archivo, si este supera 1 MB (512 KB para la salida estándar de contenedores), la recolección comienza desde el último 1 MB. De lo contrario, inicia desde el principio. Ajuste este comportamiento con el parámetro tail_size_kb. Logtail configurations (Legacy). Logtail omite los archivos no modificados después de aplicar la configuración. Import historical log files. |
|
Comportamiento de sobrescritura de archivos |
Logtail identifica los archivos por su inode y el hash de los primeros 1,024 bytes. Si alguno cambia tras una sobrescritura, el archivo se trata como nuevo y se recolecta desde el inicio. En caso contrario, se omite. |
|
Comportamiento al mover archivos |
Un archivo movido que coincide con una configuración de Logtail previamente no coincidente se trata como nuevo y se recolecta desde el inicio. De lo contrario, se omite. |
|
Historial de recolección de archivos |
Logtail rastrea el historial de recolección de archivos en memoria para recolectar solo datos incrementales. Escribir fuera del alcance de retención provoca una recolección duplicada.
|
|
Registros de texto no estándar |
Para líneas de registro que contienen |
Recolección de contenedores
Estos límites se aplican adicionalmente a los límites de recolección de archivos.
|
Límites |
Restricciones |
|
Comportamiento inicial de recolección de registros |
Para la salida estándar de contenedores, al detectar por primera vez la modificación de un archivo, la recolección comienza desde los últimos 512 KB si el archivo supera dicho tamaño; de lo contrario, inicia desde el principio. Ajuste este comportamiento con el parámetro StartLogMaxOffset. Collect container standard output in DaemonSet mode using the console. |
|
Enlace simbólico |
No se admiten enlaces simbólicos para directorios ni archivos en la recolección de archivos de contenedores. |
|
Ciclo de vida del contenedor |
Ciclo de vida mínimo del contenedor: 10 segundos. Para la recolección de archivos de contenedores, Logtail limita las actualizaciones del contenedor a 10 veces cada 3 minutos. Ajuste este comportamiento con los parámetros de inicio docker_config_update_interval y max_docker_config_update_times. Set Logtail startup parameters. |
|
Rotación de registros de salida estándar |
docker o kubelet rotan los archivos de salida estándar del contenedor. Tamaño de rotación predeterminado: 10 MB para kubelet (100 MB para docker en ACK). Si la salida estándar supera los 10 MB/s, los archivos rotan rápidamente. Para evitar la pérdida de datos, recolecte desde los archivos del contenedor o aumente el parámetro containerLogMaxSize de kubelet. |
|
Controlador de registros de salida estándar |
Si usa docker como entorno de ejecución de contenedores, debe agregar |
Gestión de puntos de control
|
Límites |
Restricciones |
|
Tiempo de espera del punto de control |
Los puntos de control se eliminan tras 30 días de inactividad del archivo. Con |
|
Política de almacenamiento de puntos de control |
Los puntos de control se guardan cada 15 minutos y al salir del programa. Ajuste este comportamiento con el parámetro de inicio check_point_dump_interval. Set Logtail startup parameters. |
|
Ubicación de almacenamiento de puntos de control |
Ruta predeterminada: |
|
Manejo durante interrupciones |
La recuperación tras una interrupción comienza desde el último punto de control guardado, lo que puede causar recolección duplicada. Ajuste la política de guardado de puntos de control para minimizar duplicados. |
Configuraciones de recolección de Logtail
|
Límites |
Restricciones |
|
Latencia de actualización de configuración |
Las actualizaciones de configuración desde la consola o la API tardan aproximadamente 30 segundos en llegar al cliente Logtail. |
|
Carga dinámica de configuraciones |
Compatible. La actualización de una configuración no afecta a las demás. |
|
Número total de configuraciones cargables para una sola instancia de Logtail |
Sin límite estricto. Máximo recomendado: 100 configuraciones por servidor. |
|
Salida de flusher de terceros |
Las configuraciones de la consola o la API están vinculadas a un logstore. Al usar un flusher de terceros, Logtail también envía una copia al logstore asociado de forma predeterminada. |
|
Cuentas múltiples y entre cuentas |
Compatible. Configure a user identifier y Use Logtail to collect container logs across Alibaba Cloud accounts. |
|
Regiones múltiples |
No compatible de forma predeterminada. Para habilitarlo, envíe un ticket. |
|
Global Accelerator |
Compatible. Habilítelo en el lado del servidor y luego configúrelo en el cliente. Enable Global Accelerator. |
Grupos de máquinas
|
Límites |
Restricciones |
|
Número de máquinas |
Sin límite estricto. Máximo recomendado: 100,000. Superar esta cifra provoca detecciones de latido incorrectas. |
|
Número de configuraciones aplicadas |
Sin límite estricto. Máximo recomendado: 1,000. |
Rendimiento
|
Límites |
Restricciones |
|
Rendimiento de procesamiento de registros |
Límite predeterminado de tráfico de registros sin procesar: 20 MB/s (relación de compresión típica: 5-10x). Superar este límite puede causar pérdida de datos. Ajuste este valor con el parámetro de inicio max_bytes_per_sec. Set Logtail startup parameters. |
|
Rendimiento máximo |
Rendimiento por núcleo:
El uso de varios hilos de procesamiento mediante el parámetro process_thread_count puede aumentar el rendimiento entre 1.5 y 3 veces. |
|
Número máximo de directorios y archivos monitoreados |
Depende del parámetro mem_usage_limit (predeterminado: 384 MB para hosts, 2,048 MB para contenedores). Se aplican cuatro niveles:
Cuando se alcanza cualquiera de los niveles, Logtail deja de monitorear entradas adicionales. Aumente los límites al reducir los directorios monitoreados o elevar el valor de mem_usage_limit. Configure el parámetro mem_usage_limit en Set Logtail startup parameters. En Linux, Logtail usa inotify para reducir la latencia de recolección. Número máximo de directorios monitoreados con inotify (incluidos subdirectorios): 3,000. |
|
Política de manejo de límites de recursos |
Si el uso de recursos de Logtail supera el límite máximo durante 5 minutos, Logtail se reinicia forzosamente. Esto puede causar pérdida o duplicación de datos. |
|
Aislamiento de datos multiinquilino |
Logtail proporciona aislamiento a nivel de configuración. Una excepción en una configuración de recolección de Logtail no afecta a las demás. |
|
Latencia de recolección de registros |
En condiciones normales, la latencia desde la escritura del registro hasta su recolección por Logtail es inferior a 1 segundo. |
|
Política de carga de registros |
Logtail agrega y carga registros por archivo. La carga se activa cuando el recuento de registros supera los 4,000, el tamaño total excede los 512 KB o transcurren 3 segundos, lo que ocurra primero. |
Manejo de errores
|
Límites |
Restricciones |
|
Manejo de errores de red |
Ante errores de red, Logtail reintenta con ajuste automático de intervalos. En casos extremos, esto puede causar recolección duplicada o pérdida de datos:
|
|
Cuota de recursos excedida |
Si la tasa de envío supera la cuota del logstore, Logtail se bloquea y reintenta. Aumente el número de shards del logstore para resolverlo. |
|
Excepción de hora del cliente |
Si la diferencia horaria entre cliente y servidor supera los 15 minutos, los reintentos fallan tras 5 intentos y los datos se descartan. Corrija la hora de la máquina cliente. |
|
El proyecto o logstore no existe |
Los datos se descartan tras 5 reintentos fallidos. Esto puede ocurrir si el logstore se eliminó mediante la API. Elimine la configuración de Logtail correspondiente para resolverlo. |
|
Error de autenticación |
Los datos se descartan tras 5 reintentos fallidos. Causas comunes:
|
|
Otros errores desconocidos |
Tras 5 reintentos fallidos, los datos se descartan. |
|
Tiempo máximo de reintento antes de agotar el tiempo de espera |
Si el envío de datos falla continuamente durante más de 6 horas, los datos se descartan. |
|
Autoverificación de estado |
Logtail se reinicia automáticamente ante salidas anómalas o cuando el uso de recursos supera los límites configurados. |
|
Superación del número máximo de directorios y archivos monitoreados |
Logtail no puede localizar las rutas de recolección a tiempo, lo que puede causar pérdida de datos. |
|
Retraso significativo en la recolección |
El progreso de la recolección de registros va a la zaga de la generación de registros. Si rotan más de 20 archivos de registro sin procesar, se produce pérdida de datos. |