
自动化和规模化
|
301
在大约经过了
5
次成功或日志记录下来的失败后,你可以减少人工检查的次数。然而,
在每月或者每季度使用
grep
(
http://www.thegeekstuff.com/2009/03/15-practical-unix-grep-
command-examples/
)查看日志,看一下发生了什么,仍然是一个很好的主意。如果你正在
使用一个日志聚合器,你完全可以自动化这一步骤,并且让这一任务发送错误和警报报告。
自动化不是小进程,但是早早投入时间和精力是值得的。一个运行良好的自动化任务集合
需要一些时间来完成,但是结果通常比那些需要从始至终关注、修改和监控的一次性脚本
要好。密切关注并花一些时间正确地自动化你的脚本。之后才真正投入到手头接下来的工
作当中,而不是一直将你的一部分工作与监控和管理难以驾驭的任务相关联。
14.3
什么会出错
在你的自动化程序中,有很多事情可能会出问题。其中一些非常容易更正和解释,然而其
他问题更加模糊,可能根本不会有一个真正的修正。自动化中的重要一课是搞清楚哪些类
型的错误和问题值得花时间和精力修复,哪些问题最好使用另外的方式解决。
以在第
12
章讨论过的错误类型为例:网络爬取中的网络错误。如果碰到了重大网络错误,
你只有几个好的选择。你可以改变运行任务的机器,看是否会有性能提升(这可能会带来
经济和时间上的花销,取决于你的设置)。你可以找到网络提供商,寻求支持。你可以在
不同的时间运行任务,看输出是否会有不同。你可以预测问题的发生,依据预测构建脚本
(即在需求之外运行脚本,预测失败百分比) ...