Skills开发工具新手
Sampler - 可视化任意Shell命令的终端工具
Sampler 是一个用于 shell 命令执行、可视化和告警的工具,通过简单的 YAML 文件配置。它可以实时采样动态进程,例如数据库变化、MQ 消息、部署脚本等,并在终端中展示图表。
0 次阅读2026/08/11 发布
社区作者 · zZz
它解决什么问题
Sampler 是一个用 YAML 配置的终端可视化工具,能够执行 shell 命令并以多种组件(折线图、条形图、仪表盘、文本框等)展示输出。它适合快速搭建开发环境监控,无需部署完整的监控系统。
核心特性:
- **Runchart**:时序折线图,可展示多个数据序列(如搜索响应时间)。
- **Sparkline**:迷你趋势图,适合展示 CPU、内存等实时指标。
- **Barchart**:柱状图,方便比较多个数据点(如网络流量)。
- **Gauge**:仪表盘,展示当前值/最大值/最小值(如分钟进度)。
- **Textbox**:文本框,显示任意命令行输出的文本内容。
- **Asciibox**:ASCII 艺术字体显示的文本。
- **触发告警**:基于条件执行终端铃声、声音、视觉通知或任意脚本。
- **交互式 Shell**:支持 init 命令建立一次会话(如 SSH、数据库连接),再以固定频率采样。
- **变量**:可在配置中定义变量复用,也支持环境变量和启动参数。
- **主题**:支持深色/浅色主题。
适用对象:开发者、运维人员,适合本地开发、测试环境的快速指标观测,不适合作为生产级全规模监控替代方案。
许可证:待核验(仓库未明确提供)。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
macOS
- HomeBrew:
brew install sampler - MacPorts:
sudo port install sampler - 或直接下载二进制:
sudo curl -Lo /usr/local/bin/sampler https://github.com/sqshq/sampler/releases/download/v1.1.0/sampler-1.1.0-darwin-amd64然后sudo chmod +x /usr/local/bin/sampler
Linux
sudo wget https://github.com/sqshq/sampler/releases/download/v1.1.0/sampler-1.1.0-linux-amd64 -O /usr/local/bin/sampler sudo chmod +x /usr/local/bin/sampler
注意:需要安装 libasound2-dev 系统库以播放触发音。通常已默认安装,如果缺少可用包管理器安装,例如 apt install libasound2-dev。
Fedora
sudo dnf install golang-github-sqshq-sampler (F31+)
Arch
yay -S sampler
Windows(实验性)
推荐使用高级终端模拟器(如 Cmder)。
- Chocolatey:
choco install sampler - 或下载 .exe 文件。
Docker
# 创建配置文件
vim config.yml
# 构建容器镜像
docker build --tag sampler .
# 运行容器
docker run --interactive --tty --volume $(pwd)/config.yml:/root/config.yml sampler --config /root/config.yml注意
Docker 方式需要自己编写 Dockerfile(仓库未提供),上述命令假设镜像已构建。首次运行
- 定义你的 shell 命令到 YAML 配置文件。
- 运行
sampler -c config.yml。
- 在 UI 上调整组件大小和位置。
常见问题
- 触发声音不播放?检查是否安装 libasound2-dev。
- Windows 下显示异常?建议使用 Cmder 等高级终端模拟器。
- 需要监控远程服务器?可以在配置中使用 SSH 作为 init 命令。
适用场景
监控数据库变化(MySQL
PostgreSQL
MongoDB
Neo4j)
监控 Kafka 消费者组 lag
监控 Docker 容器 CPU
内存
网络
磁盘 IO
通过 SSH 监控远程服务器 top 输出
监控 JMX 中 Java 应用运行时长
触发告警或条件脚本(如延迟超阈值)
Skill 讨论与实践反馈
0还没有讨论
分享一条可复现的补充、问题或使用经验。
登录后参与回复一起补充步骤、结果和注意事项。