インフラ刑事:第3話「相棒」
ITIL、、、DevOps、、、SRE、、この街には様々なルールやガイドラインが人々の暮らしを守っている。万能ではないにせよ、それでも街の安全には一役買っているのだろう。スピーカーから流れるサックスの音色に身を任せ、俺は今日も●onsterキ●ーバリ●レを傾ける。
「今日は事件もないし、平和でいいですね〜」
ガバガバのポート設定のように口を開けてくつろいでいる新人の口に昼食のバゲットを突っ込む。
「ひどいじゃないですか!今日くらいのんびりしましょうよ」
いつどんなタイミングでアラートが飛んでくるか分からないからな。常に障害に対して備えておくものだ。俺は相棒のメンテナンスを続ける。
数々の現場で俺の力になってきた信頼できる相棒、grep。何度、迷宮入りかと思われた障害の原因を見つけただろうか。
「すごいですよね!僕もインフラ刑事みたくカッコよくgrepを使えたらなぁ・・・僕にも教えてくださいよ!」
もう少しコンソールに慣れてくれと思うが、事件もない日くらい構わないか。
いいか、まずgrepは特定の文字が含まれているかを調べる事ができる。
$ grep 検索したいキーワード ファイル名
これが基本の使い方だ。この間のトニーの事件ファイルでやってみろ。
$ grep インフラ刑事 blog-vol1.txt
「インフラ刑事!!大変です!!!」
ファイルの中にある”インフラ刑事”というキーワードがあったようだな。次はそれがどこにあるかを調べてみろ。
「えっと・・・viで開いて・・・/インフラ刑事・・・」
おいおい、そんなのんびりやってたら●onsterキ●ーバリ●レの炭酸が全部抜けちまうぜ。
$ grep -n インフラ刑事 blog-vol1.txt
8:「インフラ刑事!!大変です!!!」
そいつは8行目だ。
「は・・・・はやいっ!!」
どこかのディレクトリの中から探す事だってrオプションでできる
$ grep -nr インフラ刑事 ~
/home/infra-detective/blog-vol1.txt:8:「インフラ刑事!!大変です!!!」
「なるほど!それでインフラ刑事はいつも大量にあるlogファイルの中から見つけられるんですね。どれだけ早くファイルを開いて見てるのかと思いました」
むしろその作業を地道にやっているお前のメンタルに驚く。
「あ、でもキーワードが複数ありそうな時は地道に調べるしかないんですかね?」
お前ならそれでもやれそうだがな・・・俺はそこで-Eという拡張正規表現オプションを使う。
$ grep -nrE ‘インフラ|onster’ blog-vol1.txt
2:今日もこの街のネオンを眺めながら、俺は●onsterキ●ーバリ●レを傾ける。8:「インフラ刑事!!大変です!!!」
29:それでインフラの神様を怒らせちまったって事か、不幸な事故だな。
33:それだけで上手くいくなら俺は今頃、竹芝桟橋で●onsterアブソ●ュート●ロを飲みながら夜空のトランペットを聴いてるさ。
60:構成管理をしっかりする事でインフラが可視化されて安心感・品質が向上するという事だ。
68:この街のネオンを眺めながらそんな事を考え、俺は●onsterキ●ーバリ●レを傾ける。
「すごい!!これならあっという間にエラーとか探せますね!!」
他にも色々あるが、まずはここまでだ。1秒でも早く原因を突き止める、そうする事で流れる涙を減らす事ができる。それが出来るのが俺達だという事を忘れるなよ。さぁ練習してこい。
これでアイツもISDNからADSLくらいには仕事が早くなるだろう。grepを叩く新人の背中を見つめつつ俺は残りの●onsterキ●ーバリ●レを傾ける。