Agent-Hellboy/ltm
GitHub: Agent-Hellboy/ltm
ltm 是一个基于 eBPF 的 Linux 主机历史记录与调试工具,将系统级事件持久化到 SQLite 后支持时间线、diff 和自然语言等多种查询方式。
Stars: 22 | Forks: 0
# ltm
Linux 的机器历史调试器。通过 eBPF 记录进程、文件、网络、内存和
块 I/O,将元数据存储在 SQLite 中,并回答有关主机上发生事件的
时间线 / diff /
自然语言 / SQL 问题。
## 快速开始
```
go build -o bin/ltm ./cmd/ltm
sudo ./bin/ltm start # record (eBPF; root, Linux/x86_64)
./bin/ltm timeline --since 5m
./bin/ltm watch # live tail; Ctrl-C to stop
./bin/ltm diff --from 10m --to now
./bin/ltm query "who modified /etc/some.conf?"
sudo ./bin/ltm stop
```
录制需要 root 权限(或 `CAP_BPF` + `CAP_PERFMON`)。查询则不需要。
在没有活动主机的情况下:`ltm benchmark --count 1000` 会生成合成事件。
全局标志位于子命令**之前**(`ltm --db /tmp/ltm.db status`)。
默认值:DB `~/.local/share/ltm/ltm.db`,PID `~/.local/run/ltm.pid`。
在任何读取命令中添加 `--json` 以获取机器可读的输出。
## 命令
| 命令 | 作用 |
|---|---|
| `start` / `stop` / `status` | 控制记录器 |
| `timeline` | 通过 `--pid --uid --comm --category --action --path --exe --since --until --limit` 进行过滤(可重复;`--path`/`--exe` 为 SQL `LIKE`) |
| `watch` | 实时追踪(`--interval --since --category --comm --pid`) |
| `diff --from --to` | 两个时间点之间的机器状态更改 |
| `query ""` | 自然语言(通过模板,或 agent → SQL) |
| `query sql ["
标签:API集成, Docker镜像, EVTX分析, LLM集成, SQLite, 可观测性, 日志审计