Fossor - 深度故障排查的利器
Fossor — 在拉丁语中意味着“挖掘者”,是一个针对故障主机和服务自动化调查的插件化工具。它设计的目标是帮助系统管理员在问题发生时快速定位和解决问题,通过并行处理大量检查任务,显著提高故障排查效率。
为何选择Fossor?
当面临故障响应时,许多初步的排查步骤往往在不同的事件中重复出现。Fossor将这些常见的检查任务转换为可复用的插件,使得你可以迅速地获得系统的全方位视图。通过并发执行插件,Fossor能实时返回每个插件的结果,以便你能够立即解读并采取行动。
常见的应用场景
- 监控进程日志中的新错误
- 查看dmesg的新消息
- 网络接口错误的检测
- 系统日志量的异常波动
- 内存碎片分析
- 高磁盘利用率
- 高内存使用率
- 高负载平均值
- 高线程数
- RAID状态检查
快速启动
想要马上体验Fossor的强大功能?首先按照下面的安装要求进行配置,然后只需运行fossor
命令,如果要针对特定进程进行诊断,可以添加-p <pid>
参数:
fossor -p <pid>
如需添加自定义插件,将其放置在/opt/fossor/
目录下,Fossor会自动找到并运行它们。
安装与要求
Fossor依赖于Python 3.6或更高版本以及相关的开发包。对于Red Hat/CentOS和Ubuntu 17.10,请分别按照文档中的指示进行安装:
- Red Hat / CentOS: 请参阅项目文档以获取详细步骤。
- Ubuntu 17.10: 请参阅项目文档以获取详细步骤。
安装完成后,使用以下命令全局或用户方式安装Fossor:
- 全局安装:
sudo pip3.6 install fossor
- 用户安装:
pip3.6 install fossor --user
工作原理
Fossor通过三个阶段的插件来工作:变量插件 → 检查插件 → 报告插件。
- 变量插件: 收集信息供检查插件使用,可选,但对多个检查插件有共享数据需求时非常有用。
- 检查插件: 执行单一的调查任务,并在发现异常时返回字符串,标记为报告的一部分。
- 报告插件: 格式化检查插件的数据,默认输出到标准输出,也可以指定其他报告格式。
开发者的福音
Fossor不仅可以作为命令行工具使用,还可以作为一个Python库导入到你的项目中。你可以:
- 提交通用插件到Fossor项目,分享给整个社区。
- 在本地目录添加自定义插件。
- 将Fossor集成到你的工具中,并添加自己的插件模块。
创建插件很简单,只需要实现相应的运行方法即可。
更多资源
- 疑问解答:
- 如何贡献一个检查特定软件的插件?
- 我的插件会破坏Fossor吗?
- 如何在不显示详细信息的情况下运行Fossor?
- 如何让我的插件在使用--verbose时总是输出结果?
- 如果仍有问题,欢迎加入项目Gitter频道进行讨论。
Fossor的设计理念是解放你的双手,让你从繁琐的重复工作中解脱出来,专注于解决更复杂的问题。立即加入,开启高效故障排查之旅吧!