Windowsでトラブルが発生すると、イベントビューアーなどに大量のログが記録されます。
しかし、
「このエラーは何を意味している?」
「どのログが重要なのか分からない」
「イベントIDで検索しても、自分の環境と同じ事例が見つからない」
ということも少なくありません。
そんなとき便利なのがChatGPTです。
エラーログをChatGPTに渡して、
このWindowsのエラーログを解析してください。
原因として考えられるものと、次に確認すべき項目を教えてください。
と質問すると、ログの内容を整理しながら原因調査を手伝ってもらえます。
ただし、ここで注意したいことがあります。
会社のWindowsログを、そのままChatGPTへ貼り付けてもよいのでしょうか?
Windowsのログには、ホスト名、ユーザー名、IPアドレス、ドメイン名など、外部へ出すべきではない情報が含まれている場合があります。
今回は、ChatGPTをWindowsトラブル調査に利用するときの方法と、ログを貼り付ける前に確認したい情報について解説します。

ChatGPTはWindowsのログ解析にも使える
Windowsのトラブル調査では、イベントビューアーを見ることが多くあります。
例えば、
Windowsログ
├ Application
├ Security
├ Setup
├ System
└ Forwarded Events
などです。
ここにはWindowsやアプリケーションで発生したさまざまな情報が記録されています。
エラーをChatGPTに渡すと、
- エラーの意味
- イベントIDの意味
- 考えられる原因
- 確認すべきサービス
- 確認すべき設定
- 次に実行するコマンド
などを整理する用途に利用できます。
もちろん、ChatGPTの回答だけで原因を断定するのはおすすめしません。
「原因を決めてもらう」のではなく、「次にどこを調査するか考える補助」として利用する
のが便利です。
Windowsイベントログをコピーする方法
イベントビューアーは、
Windowsキー + R
を押して、
eventvwr.msc
を実行すると起動できます。
イベントビューアーを開いて、
Windowsログ
→
システム
を選択している画面。
実際の会社名、コンピューター名、ユーザー名などが表示されていないことを確認してから使用します。
イベントの内容をコピーする
調べたいイベントを開くと、
ログの名前
ソース
イベントID
レベル
ユーザー
コンピューター
説明
などを確認できます。
ここで注意してください。
この画面をそのままスクリーンショットにしてChatGPTへ送る前に、機密情報や個人情報が含まれていないか確認します。
テキストとしてコピーする場合も同じです。
ログをそのまま貼る前に確認する
例えば、次のようなログがあったとします。
Log Name: System
Source: ExampleService
Event ID: 1234
Computer: server01.example.local
User: EXAMPLE\user01
Source IP: 192.168.10.25
Destination: server02.example.local
技術的には非常に分かりやすいログです。
しかし、この中には、
server01.example.local
EXAMPLE\user01
192.168.10.25
server02.example.local
といった情報が含まれています。
会社のシステムであれば、そのまま外部サービスへ入力してよい情報なのか確認が必要です。
私ならログを匿名化してから貼る
ログ解析に不要な情報であれば、ChatGPTへ送る前に置き換えます。
例えば、
Computer: server01.example.local
User: EXAMPLE\user01
Source IP: 192.168.10.25
Destination: server02.example.local
を、
Computer: SERVER-A
User: DOMAIN\USER-A
Source IP: 192.168.x.x
Destination: SERVER-B
などに変更します。
これなら実際の名前を出さずに、
SERVER-A
↓
SERVER-B
という関係を残せます。
全部「xxxxx」にするのはおすすめしない
匿名化するときに、
Computer: xxxxx
User: xxxxx
Source: xxxxx
Destination: xxxxx
としてしまうと、ログの関係が分かりにくくなります。
例えば、
SERVER-A
SERVER-B
SERVER-C
や、
USER-A
USER-B
のように置き換えると、関係性を残せます。
IPアドレスについても必要に応じて、
192.168.10.10 → 192.168.x.10
192.168.10.20 → 192.168.x.20
など、調査に必要な範囲で構造を残す方法があります。
重要なのは、
同じ値は同じ仮名へ置き換えること
です。
ChatGPTへ貼る前に確認したい情報
特に注意したいのは次のような情報です。
□ パスワード
□ APIキー
□ アクセストークン
□ Cookie
□ セッションID
□ 秘密鍵
□ VPNの認証情報
□ メールアドレス
□ ユーザー名
□ 実際のホスト名
□ 社内ドメイン名
□ IPアドレス
□ 顧客名
□ 組織名
□ 個人情報
□ シリアル番号・契約情報
特に、
パスワード・秘密鍵・APIキー・アクセストークン
などの認証情報は、ログ解析に必要だからと安易に貼り付けないようにします。
IPアドレスは全部消した方がいい?
ここは少し難しいところです。
ネットワーク障害の解析ではIPアドレスが重要な場合があります。
例えば、
192.168.10.10
↓
192.168.20.10
という通信なのか、
192.168.10.10
↓
203.0.113.x
という通信なのかによって、調査の方向が変わることがあります。
そのため、単純に全部削除するのではなく、
CLIENT-A
SERVER-A
DNS-A
GW-A
などへ置き換えて関係を説明する方法もあります。
ChatGPTへの質問方法で回答が変わる
ログだけ貼って、
これ何?
と質問するより、状況を説明した方が原因を絞り込みやすくなります。
例えば次のように質問します。
Windows Serverで通信障害を調査しています。
【症状】
クライアントからSERVER-Aへ接続できません。
【正常時】
SERVER-Aへ接続できます。
【発生時刻】
10:30頃から発生しています。
【直前の変更】
ネットワーク設定を変更しました。
以下はWindowsのイベントログです。
ホスト名・ユーザー名・IPアドレスなどは匿名化しています。
このログについて、
1. 重要と思われるエラー
2. 考えられる原因
3. 次に確認する項目
4. 実行するとよいWindowsコマンド
5. このログだけでは判断できないこと
に分けて説明してください。
【ログ】
(ここにログを貼る)
単に「原因を教えて」と聞くより、
「このログだけでは判断できないことも教えて」
と入れるのがポイントです。
AIが推測した内容と、ログから確認できる事実を区別しやすくなります。
大量のログを全部貼る必要はない
イベントビューアーには大量のログがあります。
それを全部コピーする必要はありません。
まず、
障害発生時刻
↓
その前後のWarning / Error
↓
関連しそうなイベント
と絞り込みます。
例えば10:30に障害が発生したなら、10:20~10:40付近のイベントから調べていきます。
必要なログだけを渡した方が、こちら側でも内容を確認しやすくなります。
ChatGPTの回答をそのまま信用しない
これは非常に重要です。
ChatGPTが、
「原因はDNSです」
「このサービスを再起動してください」
「このコマンドを実行してください」
と回答しても、すぐに本番環境で実行するのはおすすめしません。
特に、
サービス停止
ファイル削除
レジストリ変更
ネットワーク設定変更
Active Directory変更
ファイアウォール変更
など、システムへ影響する操作には注意が必要です。
まず、
なぜその操作が必要なのか
を確認します。
さらに、
このコマンドを実行するとシステムにどんな変更が発生しますか?
確認だけを行う読み取り専用のコマンドはありますか?
と追加で質問するのも有効です。
まず「確認コマンド」を聞く
私はトラブル調査でAIを使うなら、
原因として何が考えられる?
だけではなく、
設定変更を行わずに確認できるコマンドを教えてください。
と聞く方法をおすすめします。
例えばWindowsなら、
ipconfig /all
route print
nslookup
Test-NetConnection
など、状態確認だけで切り分けられる場合があります。
確認 → 原因を絞る → 必要なら変更
という順番にした方が安全です。
ChatGPTのデータ設定も確認しておく
ChatGPTには、会話をモデル改善に利用するかを選択するデータコントロールがあります。
個人向けChatGPTでは、
設定
↓
データコントロール
↓
「すべての人のためにモデルを改善する」
をオフにすると、新しい会話はモデル改善のための学習には使用されません。
また、一時チャットを利用する方法もあります。
一時チャットは通常のチャット履歴には表示されず、モデル改善にも使用されません。
ただし、この設定をしていれば会社の機密情報を自由に入力してよい、という意味ではありません。
勤務先や組織の生成AI利用ルールがある場合は、そちらを優先します。
BusinessやEnterpriseの場合は?
組織でChatGPT BusinessやEnterpriseなどを導入している場合は、個人向けChatGPTとはデータの取り扱いが異なります。
OpenAIはBusiness、Enterprise、APIなどのビジネス向けサービスについて、入力・出力をデフォルトではモデルの学習に使用しないとしています。
ただし、
「学習されない」=「どんな情報でも入力してよい」
ではありません。
社内規程、情報セキュリティポリシー、顧客との契約などを確認したうえで利用する必要があります。
私ならWindows障害調査でこう使う
AIにすべて任せるのではなく、
① 自分で障害時刻を確認
↓
② イベントビューアーを確認
↓
③ 関係ありそうなログを抽出
↓
④ 機密情報を匿名化
↓
⑤ ChatGPTへ解析を依頼
↓
⑥ 原因候補を整理
↓
⑦ 読み取り専用コマンドで確認
↓
⑧ Microsoft公式情報などで裏付け
↓
⑨ 必要なら設定変更
という流れで利用します。
ChatGPTは、
「答えを出してもらう道具」というより「調査する場所を絞る道具」
として使うと便利です。
まとめ
ChatGPTはWindowsのエラーログ解析にも利用できます。
大量のイベントログから、
- 何が重要なのか
- エラーが何を意味するのか
- 原因として何が考えられるのか
- 次に何を確認すればよいのか
を整理する用途には非常に便利です。
一方、Windowsログには、
ホスト名
ユーザー名
IPアドレス
ドメイン名
メールアドレス
組織名
認証情報
などが含まれることがあります。
会社のログをそのままコピー&ペーストするのではなく、
「この情報を外部サービスへ送ってよいのか?」
を一度確認することが重要です。
また、匿名化するときも全部を削除するのではなく、
SERVER-A
SERVER-B
USER-A
DNS-A
のように関係性を残して置き換えると、解析に必要な情報を残しやすくなります。
そしてAIが提示した原因やコマンドについても、そのまま本番環境で実行するのではなく、
確認 → 裏付け → 変更
の順番で調査することをおすすめします。


コメント