Documentation structure: - docs/README.md - Documentation index - docs/getting-started.md - Installation and first run - docs/usage.md - Dashboard features and usage - docs/configuration.md - Full configuration reference - docs/multi-device.md - Agent setup and PKI management - docs/security.md - Authentication, RBAC, mTLS - docs/api.md - Complete REST API reference - docs/deployment.md - Production deployment guide - docs/troubleshooting.md - Common issues and solutions - docs/development.md - Contributing and building Total: ~80KB of documentation covering all features 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
263 lines
6.4 KiB
Markdown
263 lines
6.4 KiB
Markdown
# Usage Guide
|
|
|
|
This guide covers all features of the Tyto dashboard.
|
|
|
|
## Dashboard Overview
|
|
|
|
The main dashboard displays real-time system metrics in a card-based layout. Each card can be expanded for more details.
|
|
|
|
### Navigation
|
|
|
|
| Element | Description |
|
|
|---------|-------------|
|
|
| **Header** | Host selector, refresh rate, theme toggle, user menu |
|
|
| **Cards** | Metric categories (CPU, Memory, Disk, etc.) |
|
|
| **Sparklines** | Historical trends for key metrics |
|
|
|
|
### Keyboard Shortcuts
|
|
|
|
| Key | Action |
|
|
|-----|--------|
|
|
| `T` | Toggle dark/light theme |
|
|
| `R` | Cycle refresh rate (1s → 5s → 10s → 30s) |
|
|
| `?` | Show keyboard shortcuts help |
|
|
| `Esc` | Close modals and panels |
|
|
|
|
## Metric Cards
|
|
|
|
### System Information
|
|
|
|
Displays basic system information:
|
|
- **Hostname**: System hostname
|
|
- **Kernel**: Linux kernel version
|
|
- **Uptime**: Time since last boot
|
|
- **Architecture**: CPU architecture (x86_64, arm64, etc.)
|
|
|
|
### CPU
|
|
|
|
Shows processor utilization:
|
|
- **Total Usage**: Overall CPU usage percentage
|
|
- **Per-Core**: Individual core utilization bars
|
|
- **Load Average**: 1, 5, and 15-minute load averages
|
|
- **Frequency**: Current and max CPU frequency
|
|
|
|
**Sparkline**: Shows CPU usage trend over the last hour.
|
|
|
|
### Memory
|
|
|
|
Displays RAM and swap usage:
|
|
- **Used / Total**: Current memory consumption
|
|
- **Buffers**: Kernel buffer cache
|
|
- **Cached**: Page cache
|
|
- **Available**: Memory available for applications
|
|
- **Swap**: Swap usage if enabled
|
|
|
|
**Sparkline**: Shows memory usage trend.
|
|
|
|
### Disk
|
|
|
|
Shows storage information:
|
|
- **Mount Points**: Each mounted filesystem
|
|
- **Usage Bar**: Visual usage indicator
|
|
- **Size**: Used and total space
|
|
- **I/O Rates**: Read/write speeds (MB/s)
|
|
|
|
**Sparkline**: Shows disk I/O trend.
|
|
|
|
### Network
|
|
|
|
Displays network interface statistics:
|
|
- **Interfaces**: Each network interface (eth0, wlan0, etc.)
|
|
- **IP Address**: IPv4 and IPv6 addresses
|
|
- **Bandwidth**: Current upload/download rates
|
|
- **Total Traffic**: Cumulative bytes transferred
|
|
- **Connections**: Active TCP connection count
|
|
|
|
**Sparkline**: Shows bandwidth trend.
|
|
|
|
### Processes
|
|
|
|
Lists top processes by resource usage:
|
|
- **By CPU**: Processes consuming most CPU
|
|
- **By Memory**: Processes using most RAM
|
|
- **Total Count**: Number of running processes
|
|
|
|
Click a process to see details:
|
|
- Full command line
|
|
- User and group
|
|
- State and priority
|
|
- Open files and threads
|
|
|
|
**Process Control:**
|
|
- **Terminate (SIGTERM)**: Graceful shutdown
|
|
- **Kill (SIGKILL)**: Force kill
|
|
- **Pause (SIGSTOP)**: Suspend process
|
|
- **Resume (SIGCONT)**: Continue paused process
|
|
|
|
### Temperature
|
|
|
|
Shows hardware sensor readings:
|
|
- **CPU Temperature**: Core temperatures
|
|
- **GPU Temperature**: Graphics card (if available)
|
|
- **Disk Temperature**: NVMe/SATA sensors
|
|
- **Other Sensors**: Motherboard, ambient, etc.
|
|
|
|
### GPU
|
|
|
|
Displays graphics card metrics (if detected):
|
|
- **Utilization**: GPU compute usage
|
|
- **VRAM**: Video memory usage
|
|
- **Temperature**: GPU temperature
|
|
- **Power**: Current power consumption
|
|
- **Clocks**: Core and memory frequencies
|
|
|
|
Supports: NVIDIA, AMD, and Intel GPUs.
|
|
|
|
### Docker
|
|
|
|
Lists running containers (requires Docker socket mount):
|
|
- **Container Name**: Container identifier
|
|
- **Image**: Base image
|
|
- **Status**: Running, paused, stopped
|
|
- **CPU/Memory**: Resource usage per container
|
|
|
|
### Systemd
|
|
|
|
Shows system service status (requires D-Bus socket mount):
|
|
- **Service Name**: Unit name
|
|
- **State**: Active, inactive, failed
|
|
- **Sub-state**: Running, exited, dead
|
|
|
|
## Alerts & Notifications
|
|
|
|
### Configuring Thresholds
|
|
|
|
1. Click the **Alerts** card header
|
|
2. Click **Configure Thresholds**
|
|
3. Set levels for each metric:
|
|
|
|
| Metric | Warning | Critical |
|
|
|--------|---------|----------|
|
|
| CPU | 80% | 95% |
|
|
| Memory | 85% | 95% |
|
|
| Disk | 80% | 90% |
|
|
|
|
4. Click **Save Configuration**
|
|
|
|
### Alert States
|
|
|
|
| State | Description |
|
|
|-------|-------------|
|
|
| **Normal** | Below warning threshold |
|
|
| **Warning** | Above warning, below critical |
|
|
| **Critical** | Above critical threshold |
|
|
|
|
### Desktop Notifications
|
|
|
|
1. Enable **Desktop Notifications** toggle in Alerts card
|
|
2. Allow browser notification permission when prompted
|
|
3. Notifications appear for new warning/critical alerts
|
|
|
|
**Behavior:**
|
|
- Warning alerts auto-dismiss after 10 seconds
|
|
- Critical alerts require manual acknowledgment
|
|
- Click notification to jump to affected metric
|
|
|
|
### Acknowledging Alerts
|
|
|
|
1. Click the alert in the Alerts card
|
|
2. Click **Acknowledge**
|
|
3. Alert moves to "Acknowledged" section
|
|
|
|
## Log Viewer
|
|
|
|
Access at `/logs` in the dashboard.
|
|
|
|
### Filtering Logs
|
|
|
|
| Filter | Description |
|
|
|--------|-------------|
|
|
| **Search** | Full-text search in messages |
|
|
| **Level** | Filter by severity (debug, info, warning, error, fatal) |
|
|
| **Source** | Filter by source type (journal, file, docker) |
|
|
| **Agent** | Filter by agent ID (multi-device mode) |
|
|
|
|
### Live Mode
|
|
|
|
Click **Go Live** to stream logs in real-time. New entries appear at the top.
|
|
|
|
### Log Sources
|
|
|
|
| Source | Description |
|
|
|--------|-------------|
|
|
| **Systemd Journal** | System and service logs |
|
|
| **File** | Tailed log files |
|
|
| **Docker** | Container stdout/stderr |
|
|
|
|
## Data Export
|
|
|
|
### Exporting Metrics
|
|
|
|
1. Click the **Export** button in the header
|
|
2. Choose format:
|
|
- **CSV**: Spreadsheet-compatible
|
|
- **JSON**: Machine-readable
|
|
3. File downloads with current timestamp
|
|
|
|
### API Export
|
|
|
|
```bash
|
|
# CSV export
|
|
curl http://localhost:8080/api/v1/export/metrics?format=csv -o metrics.csv
|
|
|
|
# JSON export
|
|
curl http://localhost:8080/api/v1/export/metrics?format=json -o metrics.json
|
|
```
|
|
|
|
## Theme & Display
|
|
|
|
### Dark/Light Mode
|
|
|
|
Toggle with:
|
|
- `T` keyboard shortcut
|
|
- Theme toggle button in header
|
|
|
|
Theme preference is saved in browser localStorage.
|
|
|
|
### Responsive Design
|
|
|
|
The dashboard adapts to screen size:
|
|
- **Desktop**: Full card grid
|
|
- **Tablet**: Reduced columns
|
|
- **Mobile**: Single column, simplified charts
|
|
|
|
## Multi-Host Switching
|
|
|
|
In standalone mode with multiple hosts configured:
|
|
|
|
1. Click the **host selector** dropdown in the header
|
|
2. Select a host or click **Add Remote Host**
|
|
3. Enter host name and URL
|
|
4. Dashboard switches to selected host
|
|
|
|
Host configurations are stored in browser localStorage.
|
|
|
|
## Performance Tips
|
|
|
|
### Reduce Bandwidth
|
|
|
|
- Increase refresh rate (R key) to 10s or 30s
|
|
- Disable sparkline history if not needed
|
|
|
|
### Reduce Server Load
|
|
|
|
- Limit visible cards
|
|
- Use longer refresh intervals
|
|
- Disable log streaming when not needed
|
|
|
|
### Browser Performance
|
|
|
|
- Close unused tabs
|
|
- Disable desktop notifications if not needed
|
|
- Use production builds (not development mode)
|