Codescribe
5c0585b2e8
Add log tail command for live log streaming
...
This commit adds a new `ctrld log tail` subcommand that streams
runtime debug logs to the terminal in real-time, similar to `tail -f`.
Changes:
- log_writer.go: Add Subscribe/tailLastLines for fan-out to tail clients
- control_server.go: Add /log/tail endpoint with streaming response
- Internal logging: subscribes to logWriter for live data
- File-based logging: polls log file for new data (200ms interval)
- Sends last N lines as initial context on connect
- commands.go: Add `log tail` cobra subcommand with --lines/-n flag
- control_client.go: Add postStream() with no timeout for long-lived connections
Usage:
sudo ctrld log tail # shows last 10 lines then follows
sudo ctrld log tail -n 50 # shows last 50 lines then follows
Ctrl+C to stop
2026-03-25 13:58:44 +07:00
..
2024-02-07 14:40:18 +07:00
2025-01-24 14:54:20 +07:00
2025-12-18 17:10:39 +07:00
2025-12-18 17:10:39 +07:00
2025-02-18 20:25:13 +07:00
2024-08-07 15:51:11 +07:00
2026-03-03 14:26:39 +07:00
2026-03-25 13:58:44 +07:00
2023-08-15 18:22:38 +07:00
2026-03-25 13:58:44 +07:00
2023-08-15 18:22:38 +07:00
2026-03-25 13:58:44 +07:00
2026-03-03 15:36:46 +07:00
2026-03-03 15:36:46 +07:00
2026-03-03 14:26:39 +07:00
2026-03-03 15:15:16 +07:00
2026-03-03 14:26:39 +07:00
2026-03-03 14:26:39 +07:00
2023-08-15 18:22:38 +07:00
2024-10-24 13:05:48 +07:00
2024-10-24 13:05:48 +07:00
2025-09-25 16:44:39 +07:00
2026-03-25 13:58:44 +07:00
2025-02-18 20:31:08 +07:00
2026-03-25 13:58:44 +07:00
2023-12-13 14:53:29 +07:00
2024-05-24 18:21:07 +07:00
2023-08-15 18:22:38 +07:00
2026-03-03 14:26:39 +07:00
2024-08-07 15:51:11 +07:00
2025-01-20 15:03:27 +07:00
2025-02-10 18:45:17 +07:00
2025-02-10 18:45:17 +07:00
2024-12-19 21:34:26 +07:00
2025-01-31 20:04:03 +07:00
2023-09-22 18:42:21 +07:00
2023-08-15 18:22:38 +07:00
2023-11-16 20:55:39 +07:00
2025-02-18 20:25:13 +07:00
2025-05-15 17:00:59 +07:00
2025-05-15 17:00:59 +07:00
2023-08-15 18:22:38 +07:00
2025-11-12 15:14:40 +07:00
2023-08-15 18:22:38 +07:00
2024-12-19 21:34:37 +07:00
2026-03-03 14:29:09 +07:00
2023-08-15 18:22:38 +07:00
2023-08-15 18:22:38 +07:00
2024-05-09 18:39:30 +07:00
2025-06-04 18:36:51 +07:00
2025-02-26 00:44:13 +07:00
2025-07-15 20:59:57 +07:00
2025-02-26 00:44:13 +07:00
2026-03-03 14:26:39 +07:00
2024-08-07 15:51:11 +07:00
2023-11-06 20:01:03 +07:00
2023-11-06 20:01:03 +07:00
2024-08-07 15:54:20 +07:00
2025-06-04 18:36:51 +07:00
2024-02-22 18:15:36 +07:00
2025-02-10 18:55:36 +07:00
2025-05-15 17:00:59 +07:00
2025-05-15 17:00:59 +07:00
2024-08-07 15:51:11 +07:00
2024-08-07 15:51:11 +07:00
2024-08-16 13:50:11 +07:00
2025-03-26 23:18:36 +07:00
2025-03-26 23:18:36 +07:00
2025-03-26 23:18:36 +07:00
2023-08-15 18:22:38 +07:00
2026-03-03 14:26:39 +07:00
2026-03-03 14:26:39 +07:00
2026-03-03 14:26:39 +07:00
2025-02-24 18:36:08 +07:00
2025-03-26 23:18:04 +07:00
2024-12-19 21:34:21 +07:00
2026-03-25 13:58:24 +07:00
2025-03-26 23:18:04 +07:00
2025-02-11 19:27:41 +07:00
2026-03-03 14:29:31 +07:00
2024-02-07 14:40:18 +07:00