core/backend/modules/logs
enzo 5dbcb1df07 feat: initialisation complète du CORE ProxmoxPanel
Backend Go 1.23+ :
- API REST + WebSocket (chi, gorilla/websocket)
- Authentification PAM via SSH + JWT RS256
- Chiffrement AES-256-GCM pour secrets SQLite
- Pool SSH, client Proxmox REST, hub WebSocket pub/sub
- Système de modules compilés à initialisation conditionnelle
- Audit log, migrations SQLite versionnées

Frontend Vue 3 + Vite + TypeScript :
- Thème Neumorphism sombre/clair (CSS custom properties)
- Wizard d'installation, Dashboard drag-drop, Terminal xterm.js
- Toutes les vues CORE + stubs modules optionnels
- i18n EN/FR (vue-i18n v11)

Infrastructure :
- Docker multi-stage (Go → alpine, Node → nginx)
- docker-compose.yml, .gitattributes, LICENSE MIT, README

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 21:08:53 +01:00
..
README.md feat: initialisation complète du CORE ProxmoxPanel 2026-03-20 21:08:53 +01:00

Module — Logs

Type: Optional (disabled by default)

Stream and browse system logs from the Proxmox host or LXC containers in real time via WebSocket (tail -f equivalent).

Planned Features

  • Real-time log streaming via WebSocket
  • Common log sources: syslog, auth.log, kern.log, journald
  • Filter by log level (error, warning, info)
  • Stop/start streaming on demand
  • LXC log access via pct exec

Planned API Endpoints

Method Path Auth Description
GET /api/logs/sources JWT List available log sources

Planned WebSocket Endpoint

GET /ws/logs/{source}?token=<jwt>&host=<optional>

Where source is a log name such as syslog, auth, or journal.

Message types:

Type Payload Description
log_line { "line": "...", "level": "info" } New log line
log_end Stream closed (e.g. SSH disconnected)

Status

This module is currently a stub. The UI view is implemented (shows a "module not enabled" placeholder). Full implementation is planned for a future release.

Requirements

  • SSH access to the target host
  • Read permissions on the log files (root or appropriate group)

License

MIT — see LICENSE