[System Environment] | ||||||||||||
タスク・ログ・ファイルの見方
|
||||||||||||
|
解説 |
Windows OSに用意されているタスク・スケジューラ([コントロール]パネル[タスク]で起動できる)は、定期的なプログラムの実行を行うためのサービスである。実行プログラムやスクリプトなどをタスクとして登録しておけば、ユーザーが介入することなく(システムにログオンしている必要はない)、指定された時間にプログラムが実行される。
指定したタスクが正しく実行されたかを確認するにはログ・ファイルを調査すればよい。だがタスクのログはWindows OSのほかのサービスなどログと違って、イベント・ビューアに記録されることはない。代わりに、ログ記録専用に割り当てられたテキスト・ファイルに記録されることになっている。本TIPSでは、このログ・ファイルの内容の確認方法について解説する。
なおタスクのログには、タスク自身が正しく起動されたか/実行を正常に終了したか、などの結果が記述されているだけであり、タスクとして登録されたプログラムが出力した結果などが含まれているわけではない。
ログ・ファイルをオープンする
タスクのログは「SchedLgU.Txt」という名前のUnicode形式のテキスト・ファイルに記録されている(SchedLgUはSchedule Log、UはUnicodeの略だと思われる)。このファイルを開くには、通常は[コントロール]パネルの[タスク]フォルダを表示させてから、[詳細設定]メニューの[ログの表示]を選択すればよい。エクスプローラで[マイ コンピュータ]−[コントロール パネル]−[タスク]を表示させ、[詳細設定]−[ログの表示]を実行してもよい。
タスクのログを表示させる | |||
タスクの実行結果のログを表示させるには、[詳細設定]メニューの[ログの表示]を実行するか、ログ・ファイルを直接メモ帳などでオープンすればよい。 | |||
|
リモートのコンピュータのタスク・ログを確認する場合は、エクスプローラでリモート・コンピュータの[コントロール パネル]−[タスク]を開くだけでは不十分である。この方法では、登録されているタスクの内容を確認することはできるが、[ログの表示]メニューを実行しても、何も表示されない。直接ファイル名を指定して、メモ帳などで開く必要がある。SchedLgU.Txtファイルの格納場所は、Windows 2000やWindows XPでは%SystemRoot%\SchedLgU.Txtだが、Windows Server 2003の場合は%SystemRoot%\Tasks\SchedLgU.Txtとなっている。
ログ・ファイルの内容
[ログの表示]を実行すると、通常はメモ帳でSchedLgU.Txtがオープンされる。このファイルの内容は単純なテキストであり、見ての通り、ジョブ(タスクの実行単位)ごとに、その名称と実行開始時間、終了時間が記録されているだけである。またシステムの起動時と終了時には、タスク・スケジューラ・サービスそのものの開始と終了を表すために、「タスク スケジューラ サービス」というエントリも記録されている。
ログ・ファイルの例 | |||||||||||||||
ログ・ファイルには、ジョブの名前、実行開始時間、終了時間、実行結果(を表す数値コード)が上から順番に記録されている。ログ・ファイルの最大サイズは32Kbytesに制限されているので、最後まで書き込んだらまたファイルの先頭から記録される。最新のエントリの場所には「***** 一番最近のエントリはこの行より上にあります *****」という文字列が書き込まれている。 | |||||||||||||||
|
ログへの記録は、ジョブの開始時と終了時にそれぞれ行われる。通常はすぐに終了するため、1つのジョブに対する開始と終了のログは連続しているが、長い実行時間が必要なログの場合には、離れた場所に記録されていることもある。
なお何らかの理由でログの実行開始がエラーになったりした場合は(例:指定されたファイルが存在しない、起動することができないなど)、その理由が記録される。
基本的にはこのようなエントリがずっと続いているだけであるが、このままではログ・ファイル・サイズが無限に大きくなってしまう可能性がある。そこでタスク・スケジューラでは、ログ・ファイルの最大サイズを32Kbytesに制限している。最後まで書き込むと、またファイルの先頭へ戻り、新しいエントリが記録される。
このような循環構造になっているため、古いエントリは新しいエントリで上書きされて消えていってしまう。そこで、最新のエントリが入っている場所を分かるようにするために、最後に記述された部分には「***** 一番最近のエントリはこの行より上にあります *****」という文字列が書き込まれている。ログ・ファイルを開いたら、下へ何度かスクロールして、この文字列が書き込まれている部分を探していただきたい。その直前の部分が、最後に実行されたタスクの実行結果である。
関連リンク | ||
[HOW TO] Windows XP におけるスケジュールされたタスクのトラブルシューティング(マイクロソフト サポート技術情報) | ||
この記事と関連性の高い別の記事
- Windowsのタスクスケジューラでシステム起動時にタスクを実行する(TIPS)
- タスクの設定を保存/コピーする(Windows XP/Windows Server 2003編)(TIPS)
- Windowsでログオフ中でもタスクを起動させる方法(TIPS)
- タスク・スケジューラとWSHで定例処理を実現する(TIPS)
- Windowsのタスクスケジューラーで数分おきにプログラムを繰り返し実行する(TIPS)
このリストは、デジタルアドバンテージが開発した自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
「Windows TIPS」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|