Sigwire:Linux 信号实时 TUI 总机
来源:github.com — 2026-07-13
📋 概述
sigwire 是 Linux 信号的"tail -f"——它挂钩内核的信号 tracepoint,将系统上所有进程间的信号传递实时解码并流式输出到终端。每一行显示 sender ──SIGNAL──▶ target,按严重程度染色,标注信号来源(kill(2)、内核、POSIX 定时器)以及目标是否捕获、处理耗时、是否中断了阻塞系统调用(↯ EINTR)。无需 strace、ptrace 或进程配合——单次运行即可监控整台机器的所有信号活动,对被监控进程完全透明。
🔑 核心要点
- 基于 eBPF 内核 tracepoint(signal:signal_generate + signal:signal_deliver),零侵入、零配置,启动即有数据
- 同时显示发送端和接收端两个视角:谁发的、怎么发的、目标是否捕获、处理函数地址和 sigaction 标志
- 智能聚合:高频重复信号折叠为 ×N,真正的致命信号标记 ☠,侧栏实时统计信号分布
- 通过 yeet 框架一行命令运行:`yeet run github:yeet-src/sigwire`,守护进程负责特权 BPF 加载
- 支持暂停和选中检查:暂停刷新后选中一行可查看完整的信号处置、handler 地址和阻塞掩码
💡 金句
strace 只能盯着一个进程看,sigwire 让你看到整台机器上所有信号在飞来飞去——就像在总机房里监听每一条线路。
← 返回 HN 首页