Windowsが突然再起動した原因を確かめようとしても、ログの見方が分からず途方に暮れていませんか?
このページでは、長年の現場経験に基づいてイベントビューアーでの確認方法からPowerShellによる自動記録までを順序立てて示し、初めての方でも迷わず再発防止策にたどり着けるよう丁寧に案内します。
手順を一緒に進めながら、ご自身のパソコンで再起動の謎を解き、安心して作業を続ける力を身に付けてみませんか。
イベントビューアーでWindows再起動ログをチェックするやり方

再起動ログを確認するには、主にふたつの方法があります。
- GUIでログを絞り込む:「イベントビューアー」を開いて「Windowsログ」→「システム」を選び、「現在のログのフィルター」で再起動に関わるイベントIDを指定します。
- PowerShellで一覧を取得:
Get-EventLog
コマンドを使い、イベントID6005(起動)・6006(正常シャットダウン)・6008(異常終了)をまとめて抽出します。
手軽にログを眺めたいときはGUI操作でさくっと確認し、大量のサーバーや複数台の調査にはPowerShellで一気にデータを集めると効率が上がります。
システムログは古い順に上書きされることがあるので、調査前に「最大ログサイズ」が十分かどうか確認しておいてください。
スタートボタンからイベントビューアーを開く

スタートボタンからイベントビューアーを開く方法は、わざわざ管理ツールを探す手間がいらないのがうれしいポイントです。デスクトップの左下にあるスタートボタンをクリックして、表示されたメニューから「Windows管理ツール」を選ぶだけで、すぐにイベントビューアーを呼び出せます。
この方法なら、普段あまり使わないツールでも迷わずアクセスできるうえ、初めてのかたでもストレスなく操作できます。頻繁に確認が必要になったら、スタートメニュー上でイベントビューアーを右クリックしてピン留めしておくと、さらにサクッと開けるようになります。
①スタートボタンを右クリックしてメニューを表示
画面下部中央にある丸いスタートボタンを見つけて、マウスの右ボタンでクリックします。タッチ対応ディスプレイならアイコンを長押ししてください。
注意したいのは、左クリックすると普通のスタートメニューが開いてしまう点です。必ず右ボタンを押しましょう。
②表示された一覧からイベントビューアーをクリック
一覧に並んだツールの中からイベントビューアーを見つけてください。開いた本のようなアイコンが目印になります。
アイコンを左クリックすると、イベントビューアーがすぐに起動します。
③左側のWindowsログを展開
イベントビューアーの左側ペインでWindowsログを見つけてください。
項目名の左にある三角形のアイコンをクリックすると枝分かれのリストが広がり、システムやアプリケーションなどのログが表示されます。
三角形をダブルクリックすると一覧が閉じるので、展開はシングルクリックにしましょう。
④システムを選んで中央の一覧を見る
左ペインの「Windowsログ」を開き「システム」をクリックします。すると中央ペインにシステムイベントの一覧が表示されます。ここには再起動やエラー、警告などが時刻順に並んでいるので、日付やイベントレベルを確認しながら原因を探します。
一覧が多いときは、列ヘッダーの「レベル」をクリックしてエラーだけに絞り込むと見つけやすくなります。
⑤ID6006やID6008を見つけてダブルクリック
中央の一覧からイベントID欄を探して、6006または6008が表示されている行を見つけてください。
見つけた行をダブルクリックすると、詳細ウィンドウが開きます。そこに再起動やシャットダウンの理由、発生した時刻などが記されているのでじっくり確認してみましょう。
検索ボックスに直接入力して開く

検索ボックスに「イベントビューアー」と打ち込むだけで、サクッと開ける方法です。Windows11ならタスクバーの虫眼鏡アイコンをクリック、Windows10ならスタートメニュー横の検索欄を選んでください。
このやり方ならメニューを何階層もたどる必要がなく、素早く再起動ログにたどり着けます。頻繁に使うなら検索結果を右クリックしてタスクバーにピン留めしておくと、もっと楽になります。
①タスクバーの検索ボックスをクリック
画面下部にある虫眼鏡アイコンの検索ボックスをそっと押してください。文字を入力できる状態になります。
②イベントビューアーと打ちEnterキー
「ファイル名を指定して実行」画面が出たら、eventvwr
と入力してEnterキーを押します。すぐにイベントビューアーが立ち上がります。
もしユーザーアカウント制御の確認画面が出たら「はい」を選んで進めてください。
③左側のWindowsログを開く
イベントビューアーを開いたら、左ペインに並ぶWindowsログを探しましょう。
「アプリケーション」「セキュリティ」「セットアップ」「システム」「転送されたイベント」のフォルダが並んでいるはずです。
再起動に関係が深いのはシステムログです。次のステップでエラーや警告を探します。
Windowsログを開かないと、どのログに異常があるか見つけにくくなります。
④システムを選び再起動ログを探す
イベントビューアー左側のメニューでWindowsログを開いたあと、リストからシステムをクリックします。
中央の一覧にシステム関連のイベントが表示されるので、再起動やシャットダウンに関わるイベントID6006(正常終了)やイベントID6008(異常終了)、イベントID1074(ユーザー操作)を探しましょう。
イベントが多いときは右上の検索窓にイベントIDを入れてフィルタリングすると、目的のログをすぐ見つけられます。
ファイル名を指定して実行から開く

パソコン上のほとんどの管理ツールは、実は名前を直接入力して開けます。
Win+Rキーで出てくる「ファイル名を指定して実行」に、目的のコマンドを入れるだけです。
たった数文字の入力で済むので、スタートメニューをいちいち開く手間がなくなります。
- 手軽な起動:Win+Rキーからすぐ呼び出せる
- 再利用も簡単:以前入力したコマンドは上下キーで選べる
- 管理者権限:Ctrl+Shift+Enterで権限を上げて開ける
①Windowsキー+Rを押して実行ウィンドウを出す
キーボードの左下にあるWindowsキーと、右上寄りのRキーを同時に押してみましょう。画面の左下あたりに小さな入力ボックスがパッと現れたら成功です。
ノートPCではFnキーとWindowsキー+Rキーの組み合わせが必要な場合があります。
②eventvwrと入力してOKをクリック
表示された「ファイル名を指定して実行」画面の入力欄にeventvwrと正確に入力してください。大文字小文字は問わないので、スペースを増やさないように注意しましょう。
文字を入れ終えたらOKをクリックします。ユーザーアカウント制御(UAC)の確認が出た場合は続行を選ぶとイベントビューアーが開きます。
入力欄に前後のスペースが入ると起動しないので、文字の前後に余計な空白がないか必ず確認してください。
③システムログを選びID6006やID6008を確認
左側のツリーでWindowsログファイル: システムを選択してください。
一覧に表示されたイベントからイベントID6006(正常シャットダウン)とイベントID6008(異常シャットダウン)を探します。
気になる日時のイベントをダブルクリックすると詳細情報がポップアップで表示されます。
PowerShellでログを呼び出す

PowerShellを活用すると、イベントビューアーを開かなくてもGet-WinEvent
コマンドでサクッと再起動ログを呼び出せます。この方法ならログを読み込むまでの手間が減って、タイムスタンプやイベントIDを絞り込むのもスムーズです。
コマンド一行で実行できるから、フィルター条件をスクリプト化しておけば同じ操作を何度でも同じ手順で繰り返せます。複数台のPCをまとめてチェックしたいときや、自動化パイプラインに組み込みたいときにも重宝する方法です。
①スタートボタンを右クリックしてWindowsターミナルを選択
デスクトップ左下にあるスタートボタン(Windowsロゴ)を見つけたら、そっと右クリックします。表示されたメニューからWindowsターミナルをクリックして起動しましょう。
②Get-EventLogコマンドを入力してEnterキー
PowerShellの画面に次のコマンドを入力します。
Get-EventLog -LogName System -EntryType Error -Newest 50
Enterキーを押すとシステムログから最新の50件のエラーが一覧表示されます。イベントIDや日時、メッセージを頼りに原因をあたりましょう。
③必要なIDだけをWhere-Objectで絞り込む
管理者モードでPowerShellを開き、イベントログを取得したあとに不要なものを除きます。
次のコマンドで特定のIDだけ残せるようにします。
Get-WinEvent -LogName System | Where-Object { $_.Id -in 6008,1074,6009 } | Format-Table TimeCreated,Id,Message
これで指定したイベントIDだけが表示されるので、再起動の原因をピンポイントで探しやすくなります。
④表示された日時とメッセージをチェック
イベント一覧から気になるログをダブルクリックして、詳細情報ウィンドウを開きます。
ウィンドウ上部に示される日時で再起動が起きた瞬間をしっかり把握します。
その下にある説明欄には、イベントIDや「予期しないシャットダウン」「サービスの停止完了」などの文言が表示されます。
Event ID 6008は予期しないシャットダウン、1074はユーザー操作による再起動の目印になるので、ログから原因を推測しましょう。
再起動ログを活かしてトラブルを未然に防ぐ応用ワザ

イベントビューアーで得た再起動ログは、そのまま眺めるだけではもったいないです。ほんの少し工夫を加えるだけで、問題が起こる前に手を打てるようになります。
応用ワザ | 活用シーン |
---|---|
定期レポートの自動配信 | 毎朝の再起動状況をチームで共有して、異常な増加を早めに察知できます。 |
カスタムビューの条件設定 | 特定のイベントIDだけを抽出して確認し、重要度の低いログを省くことで効率アップ。 |
スクリプト連携で通知 | 再起動発生を自動検知し、チャットツールやメールで知らせるようにしておくと見逃しなし。 |
こんなふうに再起動ログをただ眺めるだけでなく、レポート化や通知連携に活用すると、トラブルを未然に防ぐ強い味方になります。
タスクスケジューラで毎朝ログを自動保存

タスクスケジューラを使うと、毎朝決まった時間にWindowsの再起動ログをファイルに書き出せます。手動でイベントビューアーを開かなくても、自動で最新のログが残るので安心です。
- 自動バックアップ:起動後にログを自動で保存してくれる
- 手間いらず:一度設定すれば毎朝自動処理される
- トラブル分析:過去ログを簡単に参照できて原因探しがラク
①スタートメニューからタスクスケジューラを開く
画面左下のWindowsマークをクリックしてスタートメニューを開きます。
キーボードで「タスクスケジューラ」と入力して検索し、結果に表示されたアプリを見つけます。
検索結果の「タスクスケジューラ」をクリックしてアプリを起動します。初めての起動は少し待つ場合がありますが、ゆっくり待ちましょう。
②基本タスクの作成をクリック
タスクスケジューラを開いたら、画面右側の操作ペインにある基本タスクの作成をクリックしてください。ウィザードが起動して次の入力画面に進めます。
③トリガーをログオン時に設定
タスクのプロパティ画面で「トリガー」タブを選択します。
画面下部の「新規」ボタンをクリックして、トリガー作成画面を呼び出します。
「タスクの開始」項目で「ログオン時」を選び、特定のユーザーか「任意のユーザー」を設定した後に「OK」を押します。
④操作でPowerShellスクリプトを呼び出す
スタートメニューからタスク スケジューラを起動し、対象のタスクをダブルクリックしてプロパティ画面を開きます。
「操作」タブをクリックしてから「新規」ボタンを押し、操作の追加画面を表示します。
「プログラム/スクリプト」欄にpowershell.exe
と入力します。フルパスを指定すると確実です。
「引数の追加」欄に-ExecutionPolicy Bypass -File "C:\Scripts\Get-RebootLog.ps1"
と入力します。スクリプトのパスは環境に合わせて変更してください。
「OK」で設定を保存し、タスクを右クリックして「実行」を選びます。PowerShellが起動してログを取得できれば成功です。
スクリプト実行時は最上位特権で実行にチェックを入れて管理者権限で動かしましょう。
⑤完了ボタンでタスクを登録
最後に「完了」をクリックすると、設定した内容がまとめて登録されるよ。管理者権限の確認が出たら、案内に沿って進めてね。
登録が終わったらタスクスケジューラライブラリを開いて、今回作ったタスクが一覧にあるかチェックしてみよう。
管理者権限がないと登録できないよ。事前に管理者アカウントでログインしておいてね。
PowerShellでまとめてCSVに書き出す

PowerShellを使うと、イベントビューアーを1つ1つ開かなくてもコマンド1本で複数のログをまとめてCSVに出力できます。GUI操作が苦手でも条件を変えただけで同じ処理を何度でも繰り返せるので、定期的にログをチェックしたい場面でとても心強い方法です。
- 自動化しやすい:スクリプト化してタスクスケジューラに登録すれば手動操作が不要になります。
- フィルタ柔軟:イベントIDや日時、ログ名を細かく指定して不要な情報を省けます。
- 複数台対応:リモートPCのログも同じコマンドでまとめて取り出せるので、ネットワーク管理にも便利です。
①PowerShellを管理者で起動
スタートアイコンを右クリックしてWindows PowerShell(管理者)を選びます。UACが出たらはいをクリックしてください。
- 「PowerShell」と検索して「管理者として実行」でも同じ操作ができます。
Windows11では「Windows Terminal(管理者)」からPowerShellが起動することがあります。
②Get-EventLogで再起動ログを取得
PowerShellを管理者として開いて、システムログから再起動関連のイベントだけをさくっと取り出してみましょう。この方法なら、どのタイミングでWindowsが立ち上がったりシャットダウンしたかが一目でわかります。
Get-EventLog -LogName System | Where-Object {$_.EventID -in 6005,6006} | Select-Object TimeGenerated,EventID,Message | Sort-Object TimeGenerated -Descending | Format-Table -AutoSize
上のコマンドを実行すると、EventID6005(イベントログサービスの開始)と6006(サービスの停止)が新しい順に並びます。再起動のタイミングや理由がMessage欄に書かれているので、問題の切り分けに役立ちます。
③Export-Csvで好きな場所へ保存
PowerShellのExport-Csvコマンドを使うと、ログやデータを好きなフォルダにCSVとして書き出せます。
以下の例では、システムログを「C:\Logs\system_log.csv」に保存しています。保存先は好きなフォルダパスに書き換えてください。
Get-EventLog -LogName System | Export-Csv -Path C:\Logs\system_log.csv -NoTypeInformation
メール通知で外出先でも安心

外出先でもWindowsログをこまめにチェックするのは大変ですよね。そこでイベントID5005(シャットダウン完了)や6005(ログ起動)をトリガーに、PowerShellでメールを飛ばす仕組みを用意すると便利です。
タスクスケジューラに登録すれば、OSが再起動したタイミングで自動的にメールが届くようになります。サーバー管理や夜間のトラブル監視が楽になるだけでなく、突然のブルースクリーン発生時にもすぐ気づけるので心強いですよ。
①PowerShellスクリプトにSend-MailMessageを追加
PowerShellスクリプト冒頭にSMTPサーバーや送信元・送信先の変数を定義します。
$smtpServer = 'smtp.example.com'
$from = 'sender@example.com'
$to = 'recipient@example.com'
$subject = '処理完了のお知らせ'
$body = 'バッチが正常に終了しました。'
スクリプトの処理が終わる直前にメール送信処理を追加します。
Send-MailMessage -SmtpServer $smtpServer -From $from -To $to -Subject $subject -Body $body -UseSsl
スクリプトを実行して、最後にメールが届くか確かめます。問題なければログに送信成功を記録しましょう。
if ($?) {
Write-Output 'メール送信成功'
} else {
Write-Output 'メール送信失敗'
}
②SMTP情報を設定してテスト送信
PowerShellを管理者として起動し、メール送信用の変数を設定します。まずSMTPサーバーのホスト名、ポート番号、送信元/送信先メールアドレスを入力します。
$smtpServer="smtp.example.com"
$smtpPort=587
$from="alert@example.com"
$to="me@example.com"
認証情報はGet-Credentialコマンドでダイアログから安全に入力します。
準備した変数を使いSend-MailMessageコマンドでメールを送ります。成功すれば設定が正しく反映されています。
$cred=Get-Credential
Send-MailMessage -From $from -To $to -SmtpServer $smtpServer -Port $smtpPort -UseSsl -Credential $cred -Subject "テストメール" -Body "SMTP設定の確認用メールです"
各社プロバイダーによってはポートやSSL設定が異なる場合があります。公式ドキュメントで対応ポートを必ず確認しましょう。
③タスクスケジューラに組み込み自動化
再起動ログをCSVに出力する簡単なスクリプトを用意しましょう。メモ帳を開き、以下の一行を入力後、RebootLog.ps1
としてC:\Scriptsフォルダーに保存してください。
Get-WinEvent -FilterHashtable @{LogName='System';ID=1074} | Export-Csv -Path C:\Scripts\RebootLog.csv -NoTypeInformation
タスクスケジューラを立ち上げ、右側の「基本タスクの作成」をクリックします。名前をわかりやすく「再起動ログ出力」にして「次へ」を押します。
- 「トリガー」で「毎日」を選び「次へ」
- 「操作」で「プログラムの開始」を選び「次へ」
- プログラム/スクリプトに
powershell.exe
を指定、引数に-ExecutionPolicy Bypass -File "C:\Scripts\RebootLog.ps1"
を入力して「次へ」 - 内容を確認し「完了」を押して登録
これで毎日指定した時間にログがCSVで保存されます。
スクリプトやフォルダーのパスは合っているか、手動で一度実行して動作を確認しておくと安心です。
よくある質問

イベントビューアーで再起動の記録が見つからないのはなぜ?
- イベントビューアーで再起動の記録が見つからないのはなぜ?
-
再起動のログが表示されないときは、ビューアーのフィルターがかかっている可能性があります。ログビューアー右側の“操作”から“現在のログのフィルター”を選んで、イベントレベルに“情報”“警告”“エラー”をすべてチェックしてください。それでも表示されないときは、管理者権限でビューアーを起動し直すと隠れていたログが出てくることがあります。
エラーコードの意味がわからないときは?
- エラーコードの意味がわからないときは?
-
イベントビューアーのログに表示されたエラーコードは、Microsoftの公式ドキュメントサイトで検索すると詳細が見つかります。エラー番号をそのままコピーして検索すると、原因や対処方法が書かれたページがすぐにヒットします。英語ページが多いですが、コード番号だけ一致していれば解決策は共通です。
短時間で何度も再起動する場合はどうする?
- 短時間で何度も再起動する場合はどうする?
-
数分おきに再起動を繰り返すときは、直近のログに注目してください。ドライバーやサービスの不具合でループしていることが多いです。イベントビューアーで“カーネル‐パワー”や“サービスコントロールマネージャー”のエラー情報を調べて、該当サービスをいったん無効化して様子を見てみましょう。安定したら問題のあるドライバーやサービスを更新すると再発しにくくなります。
イベントビューアーが開かない?
イベントビューアーを起動しようとしても画面が真っ白になったり、エラーが表示されたりして開けないことがあります。慣れないうちは「何度試しても反応がない…」と心配になりますよね。
この状況はWindowsのイベントログサービスが停止していたり、管理者権限が不足していたり、MMC(管理コンソール)の設定ファイルが壊れていたりする場合が多いです。そんなときはコマンドプロンプトやPowerShellから直接イベントビューアーを呼び出したり、サービス再起動や権限昇格を試してみるとスムーズに開けるようになります。
ログが空っぽだった?
ログが何も表示されないときは、フィルターがかかっていたり、違うログを見ていることが多いです。はじめは「システム」だけに絞られていて、再起動の記録が出ないことがあります。フィルターをリセットして「すべてのログ」を表示すると、必要な項目がぱっと見つかりやすくなります。
それから、イベントログの記録そのものが止まっている場合もあります。サービス一覧でWindows Event Logが「実行中」になっているかチェックすると、空っぽな原因がサクッとわかります。これで再起動の足跡を逃さずキャッチできます。
ID6006とID6008のちがいは?
Windowsがどうやってシャットダウンやクラッシュを記録しているか知ると、トラブルの原因をすっとつかめます。イベントID6006と6008は、まさにその鍵になるログです。
項目 | ID6006 | ID6008 |
---|---|---|
意味 | イベントログサービスが正常に停止したログ(きれいな終了) | 予期せずシャットダウンしたログ(異常終了) |
記録タイミング | シャットダウン中にリアルタイムで記録 | 次回起動時に、前回の異常終了として記録 |
調査に使う場面 | 想定どおりシャットダウンされたか確認したいとき | 急に電源が落ちたり再起動した原因を探りたいとき |
実際に手を動かしていると、ID6006だけが見つかるときは“普通に終了してるな”と安心できます。逆にID6008が並んでいると「あれ?何かぶつかったかな?」と深堀りのサインになります。
エンジニアVIEWPOINT:ID6008の直前に「カーネルパニック」や「ブルースクリーン」のログがないか探すと、異常終了の原因につながるヒントが見つかりやすいです。
英語のメッセージが読めない?
イベントビューアーで表示される英語のメッセージは専門用語が多くて戸惑いますよね。でも慌てなくて大丈夫です。無料のMicrosoft Translatorアドインを組み込めば、表示中のログをその場で日本語に置き換えながら確認できます。
この方法ならいちいちコピー&ペーストで翻訳サイトを行き来しなくても、イベントビューアー内でスムーズに内容をつかめるのがうれしいポイントです。現場でも活躍するテクニックなので、ぜひ試してみてください。
自動再起動を止めたい?
突然パソコンが再起動してビックリした経験はありませんか?とくにプログラムを動かしている最中に強制的にリセットされると、せっかく書いたコードや集めたログがパーになってしまうこともあります。
そんなときはWindowsの「自動的に再起動しない」設定に切り替えておくと、エラー画面をしっかり確認しながら原因を探せるようになります。システムクラッシュのたびに急いで再起動する必要がなくなるので、落ち着いてログを追いかけたいときにピッタリです。
まとめ

Event Viewerで再起動履歴をチェックして、フィルタ機能でCriticalとErrorだけを絞り込む手順をおさらいしました。
そこで特定したエラーIDやソースを手がかりに、該当ドライバのアップデートや不要サービスの停止などを実行すれば、再起動トラブルがグッと遠ざかります。
これで原因がすっきりわかって、もう慌てずに済みますね。安心してパソコンを使いこなしてみましょう。