Files
LogMaster/README.md
2026-05-29 18:43:53 +02:00

81 lines
2.7 KiB
Markdown

# Log Viewer
A powerful log management tool with four operating modes: Viewer, Collector, Monitor, and combined. Features web UIs, S3 integration, UDP ingestion, log rotation, pattern-based alerting, and multi-channel notifications.
## Quick Start
```bash
npm install
npm run build
node dist-server/server.js
```
Open http://localhost:8080 in your browser.
## Modes
| Mode | Command | Port | Description |
|------|---------|------|-------------|
| Both (default) | `node dist-server/server.js` | 8080 | Viewer + Collector |
| Viewer | `cp .env.viewer .env && node dist-server/server.js` | 9090 | Read & display logs |
| Collector | `cp .env.collector .env && node dist-server/server.js` | 8081 | Receive & store logs |
| Monitor | `cp .env.monitor .env && node dist-server/server.js` | 8082 | Scan & alert on patterns |
## Docker
```bash
docker pull git.kgessner.de/keviin/logmaster:latest
docker run -d -p 8080:8080 git.kgessner.de/keviin/logmaster:latest
```
**Wichtig:** Collector-Daten liegen im Container unter `/app/collector-data/`. Ohne Volume-Mount gehen diese bei Neustart verloren:
```bash
docker run -d -p 8080:8080 \
-v ./collector-data:/app/collector-data \
-v ./monitor-data:/app/monitor-data \
git.kgessner.de/keviin/logmaster:latest
```
**Health Check:** Der Container hat einen eingebauten HEALTHCHECK auf `/api/health`. Manuell prüfbar mit:
```bash
curl http://localhost:8080/api/health
```
## Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `LOG_MODE` | `both` | Mode: `viewer`, `collector`, `monitor`, `both`, `all` |
| `PORT` | `8080` | HTTP port |
| `HOST` | `0.0.0.0` | Bind address |
| `LOG_SOURCES` | _(empty)_ | Comma-separated file paths |
| `COLLECTOR_UDP_PORT` | `5140` | UDP syslog port |
| `MONITOR_ENABLED` | `true` | Enable monitor scanning |
| `MONITOR_SCAN_INTERVAL` | `60000` | Scan interval in ms |
| `MONITOR_RULES` | `[]` | JSON array of monitor rules |
| `REMOTE_COLLECTOR_URL` | _(empty)_ | URL to remote collector (viewer mode) |
## Documentation
- **[Full Documentation](DOCS.md)** — Complete reference
- **[Viewer Guide](docs/VIEWER.md)** — How to use the log viewer
- **[Collector Guide](docs/COLLECTOR.md)** — How to set up log collection
- **[Monitor Guide](docs/MONITOR.md)** — How to configure pattern alerts
## Features
- Multi-source: local files, gzip/bz2/xz/zst, S3, UDP, HTTP
- Real-time log streaming with live highlighting
- Regex search with level filtering
- Log rotation (size + time based, with compression)
- Forward to HTTP, file, UDP, or console
- Pattern monitoring with Telegram, Webhook, Teams, Email alerts
- Scheduled scans (continuous, daily, hourly)
- Dark/Light theme, keyboard shortcuts, export
## License
MIT