Files
ProxMenux/web/messages/es/docs/monitor/dashboard/system-logs.json
T

121 lines
8.3 KiB
JSON
Raw Normal View History

{
"meta": {
"title": "ProxMenux Monitor — Panel: Logs del sistema | Documentación de ProxMenux",
"description": "La pestaña Logs del sistema reúne tres fuentes en una sola pantalla: journalctl en vivo con filtros y descarga, historial de tareas de Proxmox (UPIDs) y log de notificaciones — todo buscable, filtrable por severidad / rango temporal y descargable como paquetes de texto."
},
"header": {
"title": "Panel: pestaña Logs del sistema",
"description": "Tres subpestañas en una pantalla: journal del sistema (journalctl con filtros), historial de tareas de Proxmox y registro de notificaciones. Las tres permiten buscar, filtrar y descargar los datos como paquetes de texto.",
"section": "ProxMenux Monitor · Panel"
},
"readOnly": {
"title": "Solo lectura por diseño",
"body": "Esta pestaña no modifica los archivos de log. Los filtros se mantienen en la URL o en el estado de la interfaz y las descargas se generan en el servidor. El panel nunca borra entradas; para su mantenimiento usa <code>journalctl --vacuum-time=&lt;N&gt;</code> o <code>logrotate</code> en el host."
},
"topRow": {
"heading": "Fila superior: cuatro contadores",
"items": [
"<strong>Entradas totales</strong>: número de registros dentro del intervalo del filtro activo.",
"<strong>Errores</strong>: número de entradas con severidad ≤ 3 (<code>err</code> / <code>crit</code> / <code>alert</code> / <code>emerg</code>).",
"<strong>Advertencias</strong>: número de entradas con severidad 4 (<code>warning</code>).",
"<strong>Backups</strong>: número de entradas de tareas vzdump / PBS en el mismo intervalo."
]
},
"subtabs": {
"heading": "Tres sub-pestañas",
"logsTitle": "Registros",
"logsIntro": "El journal del sistema, obtenido en el servidor con <code>journalctl</code>. La barra de herramientas ofrece estos filtros:",
"logsFilters": [
"<strong>Severidad</strong>: emerg / alert / crit / err / warning / notice / info / debug o cualquier combinación.",
"<strong>Rango temporal</strong> — últimos 5 min / 15 min / 1 h / 6 h / 24 h / 7 d / personalizado.",
"<strong>Búsqueda de texto libre</strong>: subcadena o expresión regular (<code>journalctl --grep</code>).",
"<strong>Filtro de unidad</strong>: restringe a una unidad systemd concreta (<code>pveproxy.service</code>, <code>nginx.service</code>, …)."
],
"logsRowsAfter": "Cada fila muestra timestamp, insignia de severidad, unidad de origen y el mensaje. Los mensajes largos se colapsan con un conmutador \"mostrar más\". La acción <strong>Download</strong> empaqueta el filtro actual en un único archivo <code>.txt</code> vía <code>GET /api/logs/download</code> — útil cuando quieres compartir un trozo del journal con alguien.",
"logDetailsModalTitle": "Modal Log Details",
"logDetailsBody": "Al pulsar una fila se abre <strong>Detalles del log</strong> con todos los campos estructurados que journald capturó para esa entrada, como al ejecutar <code>journalctl --output=verbose</code> en el host.",
"logDetailsImageAlt": "Modal Log Details — una entrada del journal desplegada con Level, Service, Timestamp, Source, Systemd Unit, Process ID, Hostname y el mensaje completo",
"logDetailsImageCaption": "Detalles del log: todos los campos estructurados de journald para la entrada, con el mensaje completo sin truncar al final. Útil para logs de cron y servicios donde importa la línea de comando ejecutada.",
"fieldsIntro": "Campos mostrados:",
"fields": [
"<strong>Level</strong> — insignia de severidad coloreada (INFO / WARNING / ERROR / CRITICAL).",
"<strong>Service</strong> — nombre corto de la unidad / proceso que emitió la entrada.",
"<strong>Timestamp</strong> — fecha y hora completas de la línea de log.",
"<strong>Source</strong> — origen de la entrada (journal, kernel, audit, …).",
"<strong>Systemd Unit</strong> — la unidad <code>.service</code> / <code>.timer</code> / <code>.socket</code> real si la entrada estaba asociada a una.",
"<strong>Process ID</strong> — PID del proceso emisor.",
"<strong>Hostname</strong> — útil cuando los journals se reenvían entre nodos de cluster.",
"<strong>Mensaje</strong>: mensaje completo sin truncar, en un bloque monoespaciado listo para copiar."
],
"maxLevelStoreTitle": "MaxLevelStore de journald",
"maxLevelStoreBody": "En una instalación nueva de Proxmox, journald usa por defecto <code>MaxLevelStore=warning</code>, que descarta los mensajes info. Monitor lo detecta al arrancar y añade un archivo de configuración complementario (<code>/etc/systemd/journald.conf.d/proxmenux-loglevel.conf</code>) con el umbral <code>info</code> para conservar los mensajes informativos y los de mayor gravedad. Esto no incluye debug.",
"backupsTitle": "Backups",
"backupsBody": "Historial de tareas de Proxmox filtrado a las entradas relacionadas con backup. Una fila por tarea (<code>vzdump</code>, transferencias PBS, Garbage Collect, Verify) con el estado (OK / WARNINGS / ERROR), el guest implicado, el almacenamiento de origen, la duración y el UPID. Pulsa una fila para cargar el log completo de la tarea vía <code>GET /api/task-log/&lt;upid&gt;</code> — los mismos datos que Proxmox expone a través de <em>Datacenter → Tasks</em>, acotado a backups.",
"notificationsTitle": "Notificaciones",
"notificationsBody1": "Todas las notificaciones enviadas por Monitor: Telegram, Discord, correo electrónico, Gotify, ntfy, Slack, Teams y webhook. Cada fila muestra fecha y hora, canal, tipo de evento, severidad, título y cuerpo generados y, si la IA está activa, un selector para comparar su reescritura con el original.",
"notificationsBody2": "Usa esta pestaña para verificar la entrega de un canal y comparar la reescritura de IA con la plantilla base. Los canales se configuran en la página detallada de <link>Notificaciones</link>."
},
"dataCollected": {
"heading": "Cómo se recopilan los datos",
"headerSubtab": "Sub-pestaña",
"headerEndpoint": "Endpoint",
"headerSource": "Fuente",
"rows": [
{
"subtab": "Logs (filtro en vivo)",
"endpoint": "/api/logs",
"source": "<code>journalctl --output json --since &lt;range&gt;</code> con filtros de severidad, unidad y búsqueda aplicados en el servidor."
},
{
"subtab": "Descargar",
"endpoint": "/api/logs/download",
"source": "La misma consulta, devuelta como texto plano para grep / less."
},
{
"subtab": "Backups",
"endpoint": "/api/backups",
"source": "Historial de tareas PVE filtrado por <code>vzdump</code>, transferencias PBS, Garbage Collect, Verify."
},
{
"subtab": "Detalles de una tarea de backup",
"endpoint": "/api/task-log/&lt;upid&gt;",
"source": "Log completo de la tarea en texto plano leído de <code>/var/log/pve/tasks/&lt;index&gt;/&lt;upid&gt;</code>."
},
{
"subtab": "Historial de notificaciones",
"endpoint": "/api/notifications/history",
"source": "Tabla SQLite <code>notification_history</code>, alimentada por el bucle de envío."
}
],
"apiIntro": "Tanto el filtro en vivo como las descargas también son accesibles vía API:",
"codeComment1": "# Última hora de errores y peores, con una keyword",
"codeComment2": "# Descargar el journal completo de las últimas 6 horas como texto plano",
"codeComment3": "# Consultar la salida completa de una tarea concreta por UPID"
},
"whereNext": {
"heading": "Por dónde seguir",
"items": [
{
"label": "Monitor de salud",
"href": "/docs/monitor/health-monitor",
"tail": " — la categoría Logs del sistema, que vigila patrones persistentes, picos y cascadas."
},
{
"label": "Notificaciones",
"href": "/docs/monitor/notifications",
"tail": " — el observador del journal lee la misma fuente y convierte las coincidencias en notificaciones."
},
{
"label": "Referencia de la API",
"href": "/docs/monitor/api",
"tail": " — endpoints logs y task-log y sus parámetros de consulta."
},
{
"label": "Índice del panel",
"href": "/docs/monitor/dashboard",
"tail": " — el resto de pestañas."
}
]
}
}