夏場はエアコンで電気代がかかるので、しばらく止めておこう、と思ってたのに・・・
PC 起動時に自動起動する設定になってたので、再起動後は実行されてました
電気代が怖い・・・・

普段はこまめにマネージャ画面を見ていたのですが、ある程度放置していたら、いつごろどれくらいどのプロジェクトでタスクが完了したのかな、と知りたいときがあります

各プロジェクトサイトで見るのは面倒ですし、ログファイルでもプロジェクトごとバラバラですし、時刻は Unix タイムスタンプ形式で人が読める日付じゃないので変換が必要です
マネージャの「ツール>イベント・ログ...」で見れる全体のログなら全部のプロジェクトが入っていて、日付も人が読めます
しかし、必要ない情報も多くてこの中からタスク完了を探すのは一苦労です

調べてみると、この全体のログの中でタスクが終わって報告するときに出力されるログは「Reporting」という単語を含んでいます
これを含む行をログファイルから取り出せばいい感じになりそうだったのでやってみました

PowerShell で次のコマンドをつかいます

get-content "C:\ProgramData\BOINC\stdoutdae.txt" | select-string "Reporting"

ログファイルの場所は私の場合の「C:\ProgramData\BOINC\stdoutdae.txt」にしています
ユーザ単位でインストールしたとか自分で場所を変えたとかあればそれに合わせて変更してください

PowerShell は Windows キーを押して「power」と打てば候補に出てきます
画面の Windows ボタンを右クリックして「Windows PowerShell」を選んでもいいです

実行すると、結果はこういう感じで「Reporting」が入った行だけ表示されます

26-Aug-2020 11:38:37 [Rosetta@home] Reporting 1 completed tasks
26-Aug-2020 12:38:52 [Milkyway@Home] Reporting 2 completed tasks
26-Aug-2020 12:44:24 [Milkyway@Home] Reporting 1 completed tasks

報告の時間なので完全にタスク完了時刻じゃなくて適度な間隔でそれまで完了してたものをまとめて報告してるようです
とは言え、何時間もずれたりはしてなさそうですし、だいたいのもので良ければこれで問題ないはずです


ところで、上に書いたコマンドを実行した場合、ファイル全体から 「Reporting」 が入った行を表示します
ログファイルなので 1 ヶ月以上前のもあって、必要なさそうな部分も多いはず
全部出力しても最終的に画面に見えてるのは最後の部分なので問題はないとは思いますが・・・最後の数行だけみたいってこともありますよね
そんなときは最後に少しコマンドを追加してこうするとできます

get-content "C:\ProgramData\BOINC\stdoutdae.txt" | select-string "Reporting" | select-object -last 10

「-last 10」 なので最後の 10 行だけを表示です
20 にすれば 20 行表示されます

見てみるまでは何日に何行くらいあるかはわからないので、今日の分だけ見たいと思いながらとりあえず 10 件にしたら全然足りなくて 20 にして、それでも足りなくて 30 にして・・・とか考えると最初から全部表示で必要なところまでスクロールで遡るほうが楽だったりするかもしれませんけどね