タスク スケジューラによる資料採取

目次

本記事はマイクロソフト社員によって公開されております。

いつも弊社製品をご利用いただきまして誠にありがとうございます。Windows プラットフォーム サポートの栗木です。
Windows には作業を自動化できる機能として「タスク スケジューラ」が標準で提供されています。本記事では、タスク スケジューラを使用して調査に必要な資料採取を行う方法をご紹介いたします。注意として、資料採取用のタスクを作成するコマンドは、管理者として起動したコマンド プロンプトで実行してください。
なお、コマンドで紹介しておりますが、タスク スケジューラは、以下の方法で実行できる GUI でも操作できるツールになります。
タスク スケジューラ実行方法:
[Windows]+[R]キーで[ファイル名を指定して実行]ダイアログを表示し「taskschd.msc」と入力した後に[Enter]キーを押す。

設定の流れ

  1. 資料採取処理をまとめた bat ファイルを作成
  2. schtasks コマンドで資料採取用のタスクを作成

Bat ファイル作成

今回は、WPRによる資料採取を10分行う処理を bat ファイルにまとめたものを例とし、C:\mslog\wprlogging.bat に保存した状況で話を進めていきます。bat ファイルの処理内容や保存先は、調査で必要な資料や状況に合わせて変更可能です。

@echo off
C:\Windows\System32\wpr.exe -start GeneralProfile -start CPU -start DiskIO -start FileIO -filemode -recordtempto "C:\mslog"
timeout /t 600
C:\Windows\System32\wpr.exe -stop "C:\mslog\output.etl"

Windows Performance Recorder (WPR)
https://learn.microsoft.com/en-us/windows-hardware/test/wpt/windows-performance-recorder
timeout コマンド
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/timeout

資料採取用のタスク作成

資料採取を行いたい頻度に合わせて、資料採取用のタスクを作成します。
なお、TaskName の部分は任意の名前に、C:\mslog\wprlogging.bat の部分は、保存した bat ファイルの場所に変更ができます。

  1. 時間を指定して1回だけ実行
    例:2022年9月1日の午前9時に C:\mslog\wprlogging.bat を System アカウントで実行する。

    schtasks /create /tn "TaskName" /sc ONCE /sd 2022/09/01 /st 09:00 /tr "C:\mslog\wprlogging.bat" /ru system /rl highest
    
  2. 毎日時間を指定して実行
    例:2022年9月1日から毎日、午前9時に C:\mslog\wprlogging.bat を System アカウントで実行する。

    schtasks /create /tn "TaskName" /sc DAILY /sd 2022/09/01 /st 09:00 /tr "C:\mslog\wprlogging.bat" /ru system /rl highest
    
  3. 毎週時間を指定して実行
    例:2022年9月1日以降毎週金曜日、午前9時に C:\mslog\wprlogging.bat を System アカウントで実行する。

    schtasks /create /tn "TaskName" /sc WEEKLY /sd 2022/09/01 /st 09:00 /d FRI /tr "C:\mslog\wprlogging.bat" /ru system /rl highest
    

コマンド 実行結果例

成功: スケジュール タスク "TaskName" は正しく作成されました。

代表的なものを紹介しましたが、さらに柔軟な頻度でのタスク作成も可能です。詳細は、以下の Web サイトに記載がありますので、確認をお願いします。
schtasks create コマンド
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks-create

作成したタスクの確認

schtasks create コマンドを実行した後に、正常に資料採取用のタスクが作成されているかは、schtasks query コマンドを実行して確認ができます。

schtasks /query /tn "TaskName"

コマンド 実行結果(例)

フォルダー\
タスク名                                  次回の実行時刻         状態
======================================== ====================== ===============
TaskName                                 2022/09/01 09:00:00    準備完了

schtasks query コマンド
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks-query

作成したタスクの削除

作成したタスクは、以下のコマンドを実行することで削除が可能です。

schtasks /delete /f /tn "TaskName"

コマンド 実行結果例

成功: スケジュール タスク "TaskName" は正しく削除されました。

schtasks delete コマンド
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks-delete

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。