ChatGPTを仕事で使っている人も増えてきました。
しかしSEの仕事で使おうとすると、
「具体的に何に使える?」
「プログラムを書かせる以外にも使える?」
「サーバーやネットワークの仕事でも役に立つ?」
と思うことがあります。
私はWindows、Linux、ネットワークなどのトラブル調査をすることが多いのですが、ChatGPTは答えを教えてもらうツールというより、調査を手伝ってもらうツールとして使うと便利です。
例えば、
障害発生
↓
情報収集
↓
ログ確認
↓
原因候補を整理
↓
切り分け
↓
確認コマンド
↓
対処
というSEの調査作業の途中にChatGPTを入れます。
今回は、SEの仕事でChatGPTを活用する方法を10個紹介します。

1.エラーログを解析してもらう
まず使いやすいのがログ解析です。
例えばWindowsのイベントログなら、
Source: Service Control Manager
Event ID: 7031
Level: Error
Linuxなら、
systemd
journalctl
/var/log/messages
/var/log/maillog
などがあります。
ChatGPTへログを渡して、
このログについて、
1. 確実に分かること
2. 原因として考えられること
3. このログだけでは判断できないこと
4. 次に確認する項目
を教えてください。
事実と推測は分けてください。
と質問します。
ここで重要なのは、
「原因を教えて」だけで終わらせないことです。
AIが示した原因候補を起点に、人間が追加調査します。
2.大量のログを時系列に整理してもらう
障害調査では、エラーが大量に出ることがあります。
例えば、
10:25 DNSエラー
10:27 接続エラー
10:29 アプリケーションエラー
10:30 サービス停止
というログがあったとします。
このとき重要なのは、
10:30 サービス停止
だけではありません。
10:30のエラーは「原因」ではなく、それ以前に発生した障害の「結果」かもしれません。
そこでChatGPTへ、
以下のログを時系列に整理してください。
・最初に発生した異常
・原因候補
・結果として発生した可能性があるエラー
・次に調査する項目
に分けてください。
と依頼します。
大量のログから調査の流れを整理するときに便利です。
3.エラーメッセージを分かりやすく説明してもらう
SEを長くやっていても、初めて見るエラーはあります。
例えば、
RPC server is unavailable
や、
Connection timed out
などです。
エラーを検索して複数のサイトを読む方法もありますが、最初にChatGPTへ、
このエラーを、
・どういう意味か
・よくある原因
・最初に確認すること
の3つに分けて説明してください。
と聞けば、調査のスタート地点を作れます。
ただし、AIの説明だけで原因を確定しません。
その後、公式ドキュメントや実際の環境を確認します。
4.PowerShellやLinuxコマンドを考えてもらう
例えば、
「Windowsサービスの状態を一覧で確認したい」
という場合、
Get-Service
があります。
Linuxなら、
systemctl status
などがあります。
しかし複雑な条件になると、コマンドを調べるのに時間がかかります。
そこで、
Windows Serverで調査しています。
現在の状態を確認するPowerShellを作ってください。
設定変更、
サービス停止、
ファイル削除、
レジストリ変更は行わないでください。
各コマンドが何をするのか説明してください。
と依頼します。
ポイントは、
いきなり修復コマンドを作らせないことです。
まず確認用コマンドを作ってもらいます。
【関連記事】
ChatGPTにPowerShellコマンドを作らせるときの注意点
5.長い設定ファイルを読んでもらう
Linuxやネットワーク機器では、設定ファイルが長くなることがあります。
例えば、
Apache
Postfix
BIND
SSH
Firewall
などです。
ChatGPTへ、
この設定を確認してください。
変更は提案せず、
・何を設定しているか
・重要な項目
・設定同士の関係
・確認した方がよい箇所
を説明してください。
と質問できます。
自分が管理していなかったサーバーの設定を引き継いだ場合などにも便利です。
ただし、設定ファイルにはパスワードや秘密鍵などが含まれている可能性があります。
そのまま外部AIサービスへ貼らないよう注意します。
6.設定変更前のチェックリストを作ってもらう
これは個人的に便利だと思う使い方です。
例えば、
FortiGateをアップデートする
とします。
ChatGPTへ、
本番環境のFirewallをアップデートします。
作業前
作業中
作業後
に分けてチェックリストを作ってください。
特に、
バックアップ
通信確認
ロールバック
HA
ログ確認
を含めてください。
と依頼します。
すると、
□ 現在バージョン確認
□ バックアップ
□ Upgrade Path確認
□ HA状態確認
□ メンテナンス時間確認
□ アップデート
□ バージョン確認
□ 通信確認
□ ログ確認
のように整理できます。
「自分が何か忘れていないか確認する」
用途でAIを使うわけです。
7.障害の切り分け方法を考えてもらう
例えば、
「Webサイトへ接続できない」
という問い合わせが来たとします。
原因候補は、
PC
↓
DNS
↓
LAN
↓
Firewall
↓
Proxy
↓
Internet
↓
Webサーバー
とたくさんあります。
ChatGPTへ、
Webサイトへ接続できません。
原因を決めつけず、
クライアント側から順番に切り分ける
確認手順を作ってください。
設定変更を伴う操作は最後にしてください。
と依頼します。
すると、
IP確認
↓
Gateway確認
↓
DNS確認
↓
名前解決
↓
疎通確認
↓
TCPポート確認
↓
Proxy確認
↓
Firewall確認
のように調査順序を整理できます。
経験のあるSEなら自分でできる作業ですが、
抜け漏れ確認
として使えます。
8.メールトラブルを解析してもらう
メール障害もChatGPTと相性がいい分野です。
例えば、
SPF
DKIM
DMARC
Received
Return-Path
Reply-To
Postfix
SMTPエラー
などです。
メールヘッダーを匿名化してChatGPTへ渡し、
SPF
DKIM
DMARC
配送経路
不自然な点
を整理してください。
と依頼できます。
Postfixログなら、
status=sent
status=deferred
status=bounced
dsn=
relay=
などの意味を整理してもらえます。
【関連記事】
ChatGPTにメールヘッダーを解析させる方法
【関連記事】
ChatGPTにPostfixのメールログを解析させる方法
9.問い合わせ内容を整理してもらう
SEの仕事では、
問い合わせ内容そのものが分かりにくい
ことがあります。
例えば、
昨日からネットがおかしいです。
たまにつながります。
他の人も遅いと言っています。
という問い合わせです。
このままでは調査範囲が広すぎます。
ChatGPTへ、
以下の問い合わせについて、
障害調査に必要な追加質問を作ってください。
(問い合わせ内容)
質問は重要な順に並べてください。
と依頼します。
すると、
いつから?
全端末?
特定ユーザー?
有線・無線?
特定サイトだけ?
エラー表示は?
再現性は?
直前に変更は?
など、追加確認事項を整理できます。
10.障害対応後の手順書を作ってもらう
障害を解決したあと、
「手順書を作らないと……」
となることがあります。
これもChatGPTを利用できます。
例えば自分が行った作業を、
1. イベントログ確認
2. サービス停止を確認
3. 設定確認
4. 原因判明
5. 設定修正
6. サービス確認
7. 正常性確認
のようにメモしておきます。
ChatGPTへ、
以下は障害対応時の作業メモです。
これを、
・事象
・原因
・調査内容
・対処
・確認方法
・再発時の確認手順
に分けて手順書にしてください。
と依頼します。
ゼロから文章を書くより楽になります。
私が便利だと思うのは「答え」より「次に何を見るか」
ChatGPTをSE業務で使う場合、
この障害の原因は?
と聞きたくなります。
しかし実際には、
この情報から確実に分かることは?
考えられる原因は?
原因を切り分けるには?
次にどのログを見る?
設定変更せず確認する方法は?
と質問する方が使いやすいと感じます。
つまり、
AIに障害を直してもらうのではなく、AIと一緒に調査する
という使い方です。
ChatGPTに「調査モード」で回答してもらう
私は次のような質問方法がSEには使いやすいと思います。
あなたは障害調査を支援するSEとして回答してください。
以下の事象を調査しています。
【環境】
ここに記載
【症状】
ここに記載
【発生時刻】
ここに記載
【正常時】
ここに記載
【直前の変更】
ここに記載
【確認済み】
ここに記載
【ログ】
ここに匿名化したログを貼る
以下の順番で回答してください。
1. 現時点で確実に分かること
2. 不足している情報
3. 原因候補
4. 原因候補を切り分ける順番
5. 次に確認するログ
6. 設定変更せず実行できる確認コマンド
7. 公式情報で確認するキーワード
事実と推測は分けてください。
原因を断定できない場合は
「判断できない」としてください。
設定変更やサービス再起動は、
確認作業が終わるまで提案しないでください。
このテンプレートを保存しておけば、WindowsでもLinuxでもネットワークでも応用できます。
AIへ貼ってはいけない情報に注意
SEがChatGPTを利用するとき、特に注意したいのが情報漏えいです。
例えば、
パスワード
秘密鍵
APIキー
アクセストークン
Cookie
セッション情報
VPN認証情報
顧客情報
個人情報
社内IPアドレス
ホスト名
内部ドメイン
メールアドレス
構成情報
などです。
業務データを入力できるかどうかは、会社や組織のルールを確認する必要があります。
ログを利用する場合も、
server01.company.example
を、
SERVER-A
へ変更するなど、必要に応じて匿名化します。
重要なのは、
匿名化しても調査に必要な関係性は残すこと
です。
AIが作ったコマンドをそのまま実行しない
これも重要です。
ChatGPTが、
rm ...
や、
Remove-Item ...
などを提示する可能性があります。
ほかにも、
サービス停止
サービス再起動
Firewall変更
レジストリ変更
設定ファイル変更
ユーザー削除
ファイル削除
など、システムへ影響する操作があります。
本番環境では特に、
AIに聞く
↓
コマンドの意味を理解
↓
公式情報を確認
↓
現在状態を確認
↓
バックアップ
↓
影響確認
↓
必要なら実施
という順番にします。
ChatGPTは「もう一人のSE」ではない
ChatGPTは大量の情報を整理したり、原因候補を洗い出したりする用途に利用できます。
しかし、
実際のネットワーク構成
過去の変更履歴
運用ルール
機器固有の設定
ユーザーから聞いた情報
現場特有の事情
までは、こちらから情報を与えなければ分かりません。
そのため、
ChatGPTに全部任せる
のではなく、
人間のSEが持っている現場情報+AIの情報整理能力
を組み合わせるのが使いやすいと思います。
まとめ
SEの仕事ではChatGPTをさまざまな場面で利用できます。
今回紹介したのは、
- エラーログ解析
- ログの時系列整理
- エラーメッセージの解説
- PowerShell・Linuxコマンド作成
- 設定ファイルの確認
- 作業前チェックリスト作成
- 障害の切り分け
- メールトラブル解析
- 問い合わせ内容の整理
- 障害対応後の手順書作成
です。
個人的には、ChatGPTの価値は、
「答えを出してくれること」だけではない
と思っています。
障害対応では、
次に何を調べればいいのか分からない時間
が意外とあります。
そんなとき、
現在分かっていること
↓
不足している情報
↓
原因候補
↓
切り分け方法
↓
確認コマンド
をAIに整理してもらう。
これだけでも調査を進めやすくなります。
最終的に判断して操作するのは人間のSEです。
ChatGPTを「自動で障害を直すAI」ではなく、「調査を一緒に整理してくれるアシスタント」として使う。
これが、SEの仕事でChatGPTを活用する方法の一つだと思います。



コメント