
【第14話/第5章-共生と闘争-】-40代、20年のキャリアを捨て、AIと挑むネットワークの深淵-Reboot:The Layered Engineer
第14話/第5章:共生と闘争(エラーログは「読む」な)
第13話で、私たちは実機を使わずに静的解析と自作ツール『sirdiff』を駆使し、論理的な構成テストを圧倒的なスピードで完了させた。 しかし、ネットワークの魔物は「論理」の外側にも潜んでいる。
翌日。本番移行を見据えたステージング環境(一部の実機を用いた最終テスト)で、それは起きた。 「……おかしい。OSPFのネイバー(隣接関係)が、数分おきに切断と再接続を繰り返してます。いわゆるフラッピングです」
若手リーダーの声に緊張が走る。 ターミナル画面には、ルーターから吐き出されるSyslog(システムログ)が、滝のような勢いで流れ続けていた。
「とりあえずログを止めました。テキストに落としましたが……ざっと5万行ありますね。今から目視で『DOWN』の文字列を検索して、前後の挙動を追います」
彼がマウスのホイールを勢いよく回し、気が遠くなるようなログの海へダイブしようとした瞬間。 僕はその肩をポンと叩いた。
「待て。ログを人間の目で『読む』のはやめろ。そんなことをしても、疲労でミスリードを誘発するだけだ」
「探す」のではなく「抽出」する
ネットワーク機器のログは、人間が読むために最適化されていない。 どうでもいいインターフェースのステータス変化や、定期的なKeepAliveのメッセージが大量に混ざり込み、本当に必要な「エラーの予兆」をノイズで埋め尽くしてしまう。
かつてサーバーエンジニアだった頃、ApacheやTomcatの膨大なアクセスログを、テキストエディタの「検索」で追うような真似は絶対に避けてきた。Linuxにはgrepやawkという強力な武器があったからだ。
「エラーログは読むものじゃない。正規表現(Regex)で『パース(解析・抽出)』するものだ。そして今、僕たちには最強の正規表現ジェネレーターがある」
僕はスマートフォンのAI(ChatGPT)を開き、プロンプトを打ち込んだ。
『CiscoルーターのSyslog(約5万行)から、OSPFの状態遷移に関するログだけを抽出したい。具体的には「FULLからDOWNへ落ちた瞬間」と「その直前10秒間のエラー出力」、そして「再びFULLに戻るまでの所要時間」を計算してパースするPythonスクリプトを書いて。ログのタイムスタンプ形式は "May 28 12:00:00" だ。』
正規表現は、強力だが人間が書くには難解すぎる。少しでも記号を間違えれば、何もマッチしない。 しかし、AIにとって正規表現は「母国語」だ。数秒で、完璧なパースロジックを備えたPythonスクリプトが生成された。
5万行のノイズが、5行の「真実」に変わる
「よし、このスクリプトにさっきの5万行のログファイルを食わせてみてくれ」
若手リーダーが半信半疑のまま、Pythonコマンドを実行する。 一瞬の沈黙。 そして、ターミナルにはたった「5行」のテキストだけが出力された。
Plaintext
[OSPF Flap Event Detected]
Time: May 28 12:41:15 - State changed from FULL to DOWN
Root Cause Hint: MTU mismatch detected on GigabitEthernet0/1
Recovery Time: 45 seconds (Re-established at 12:42:00)
* Note: This cycle has repeated 12 times in the last hour.
「……MTU(Maximum Transmission Unit)の不一致……?」
若手リーダーが呆然と呟いた。 OSPFは、隣接するルーター同士でパケットの最大サイズ(MTU)が一致していないと、初期段階(EXSTART)で止まったり、不安定になってネイバーが切れたりする特有の仕様がある。
ノイズにまみれた5万行のログの中から、AIとPythonが「MTU mismatch」という致命的な一言だけを、砂金のように掬い上げたのだ。
「片側のインターフェースの設定漏れだな。すぐ直そう」
私が言うと、若手リーダーは慌てて設定を修正しに走った。 もし彼がテキストエディタで「DOWN」という文字だけを検索して前後を読もうとしていたら、MTUエラーのログが数行前にひっそりと出ていることに気づけず、迷宮入りしていただろう。
眼(センサー)の拡張
「……また、数秒で終わっちゃいましたね。昔の僕なら、徹夜でログを睨みつけてましたよ」
修正を終え、安定したOSPFのステータスを見ながら、若手リーダーが苦笑した。
「人間の目は、構造化されていない大量の文字を処理するようにはできていない。僕たちは『推論』に脳のリソースを割くべきだ。『抽出』は機械の仕事だよ」
AIは、構成図を描く「手」になり、検証環境を構築する「足」になり、そして今、膨大なログから真実だけを見抜く「眼」になった。
20年の地層(サーバー運用で培ったログ解析の思想)を、AIという最強のレンズを通すことで、ネットワークの深い闇(ブラックボックス)が次々と可視化されていく。
「よし、論理テストも通った。エラーの潰し込みも終わった。次は、この一連の作業を『誰でも再現できる状態』に定着させるぞ」
私はターミナルを閉じ、次のステップへと意識を向けた。 エンジニアの仕事は、トラブルを解決して終わりではない。その解決の軌跡を、組織の「資産」に変換しなければならない。