Windows Server 2012 R2「Data collector set was not found」でサービス停止?原因と復旧手順(System State/BMRの整理)

Windows Server 2012 R2で突然「Data collector set was not found」が出て、監視や診断が動かず、気づけば複数サービスまで停止――。本記事ではデータ コレクター セットの仕組みと確認方法、イベントログを使った原因特定、SFC/DISMによる修復、さらにSystem Stateとベアメタル回復(BMR)の整理まで、現場で迷わない手順をまとめます。

目次

現象を整理:このエラーは何を意味するのか

「Data collector set was not found」は、Windowsのパフォーマンス モニター(perfmon)にあるデータ コレクター セット(Data Collector Set / DCS)を「開始しようとしたが、その定義が見つからない」場合に出やすいメッセージです。たとえば次のようなタイミングで遭遇します。

  • perfmon の「システム」配下(System Diagnostics / System Performance など)を実行した
  • 過去に作成した「ユーザー定義」DCSを、タスクやスクリプトから起動しようとした
  • 監視ツールやベンダーツールが作ったDCSを参照していたが、後から削除・破損してしまった

重要なのは、このエラー表示そのものが「各種サービス停止」の直接原因とは限らない点です。現場では「DCSが見つからない」ことと「サービスが落ちた」ことが同時に起き、原因が1つに見えてしまいがちです。しかし、サービス停止を引き起こす根本原因(ディスク逼迫、OS破損、権限、依存関係、WMI不調など)が別に存在し、DCSエラーは“結果として目に付いただけ”というケースも多いです。

まず最優先:止まったサービスを特定し、イベントログで因果関係を掴む

「何が止まったのか」「いつから止まったのか」「何をきっかけに止まったのか」を最短で掴むには、イベントログが近道です。特にWindows Server 2012 R2のような長期運用環境では、複数要因が重なっていることが珍しくありません。

最初に確認する観点具体的な確認ポイントよく見つかる原因例
サービス停止の実体停止したサービス名、開始の種類(自動/手動/無効)、依存関係依存サービス停止、アカウント変更、起動失敗の連鎖
OSの健全性システムファイル破損、更新プログラム適用状況、再起動未完了コンポーネントストア破損、更新失敗
リソース/ディスクCドライブ空き、PerfLogs肥大化、メモリ不足、ページファイル枯渇ディスク満杯でサービス停止、ログ書き込み失敗
監視/スクリプトタスクスケジューラ、起動スクリプト、監視エージェントがDCSを参照していないか削除されたDCSを呼び出してエラー連発

停止サービスの洗い出し(GUIでもCLIでもOK)

GUIなら services.msc で「状態」「スタートアップの種類」を並べ替えれば概況が掴めます。CLIでまとめて見るなら、PowerShellの方が一覧性が高いです。

PowerShell(管理者):
Get-Service | Sort-Object Status,Name
Get-Service | Where-Object {$_.Status -ne 'Running'} | Sort-Object Status,Name

イベントログの“当たり”を短時間で探す

まずは「Windowsログ」→「システム」「アプリケーション」を見ます。次に、DCS周りなら「アプリケーションとサービス ログ」配下も効きます。

ログ見るポイント例
Windowsログ > システムService Control Manager系(サービス起動失敗/停止)、ディスク/NTFS系サービスが開始できない、依存関係で停止
Windowsログ > アプリケーションアプリ固有エラー、.NET Runtime、アプリケーションログ出力失敗監視エージェントや業務アプリの例外
Microsoft-Windows-Performance-Logs-Alerts/OperationalPLA(Performance Logs and Alerts)関連の失敗DCS開始/停止失敗、出力先アクセス拒否
Microsoft-Windows-TaskScheduler/Operationalスケジュール実行の成功/失敗、実行ユーザー、戻り値削除済みDCSを呼び出すタスクが残っている
Microsoft-Windows-WMI-Activity/OperationalWMI問い合わせ失敗、遅延、エラーコードWMI不調で監視や一部機能が壊れる

サービス停止の原因を追うときは、「停止した時刻」±数分に絞って見るのがコツです。DCSエラーが出た時刻と、サービスが落ちた時刻が一致しているか/前後関係はどうかを確認し、相関ではなく因果を探します。

データ コレクター セットが“見当たらない”ときの確認ポイント

「パフォーマンス モニターを開いても、ユーザー定義などに目的のデータ コレクター セットがない」という場合、次のどれかに当たりやすいです。

  • 参照しているDCS名が違う(大文字小文字、全角半角、前後スペース、監視ツール固有名)
  • DCS定義が削除された/破損した
  • PLAサービスが停止している/権限やWMI不調で一覧が取れていない
  • “DCS”ではなく、ETWトレース セッション(ログマン)を参照している

GUIとコマンドで二重に確認する(logmanが強い)

GUI(perfmon)の表示が怪しいときは、logmanで定義を直接確認すると切り分けが速いです。

やりたいことコマンド例ポイント
DCS一覧を出すlogman query登録済みのコレクター セット名を確認
ETW(トレース セッション)も含めて確認logman query -ets“セット”ではなくセッション参照の可能性を潰す
特定名が存在するか確認logman query "(DCS名)"存在しないなら「not found」になりやすい
開始/停止(存在している前提)logman start "(DCS名)" logman stop "(DCS名)"権限不足や出力先アクセス拒否もここで判明

“DCSを呼び出している犯人”を探す

運用現場では、DCS自体が原因というより、削除されたDCSを呼び出し続けるタスクやスクリプトが残っていて、エラーが連発していることがあります。代表的には次の3箇所です。

  • タスク スケジューラ(監視・定期診断・ログ収集系のタスク)
  • 監視エージェントの設定(性能ログ採取機能、サポート用トレース)
  • 運用スクリプト(起動時/日次で logman を叩くバッチ)

タスクの全量をざっくり眺めるなら、次のようなコマンドが手早いです。

schtasks /Query /FO LIST /V | findstr /i "logman perfmon PLA collector"

出てきたタスク名を手がかりに、実行コマンドや引数にDCS名が含まれていないか確認します。

サービス停止まで発展する“ありがちな根本原因”

「DCSが見つからない」表示と同時期にサービスが止まる場合、現実的には以下の根本原因が潜んでいることが多いです。特に“結果的に各種サービスが停止した”という状況では、OSや基盤系サービスの不調を疑う価値があります。

根本原因の候補症状の出方確認方法初動の対処
ディスク容量逼迫(C:満杯、PerfLogs肥大)サービスがログを書けず停止、更新が失敗、動作が不安定空き容量、PerfLogs/Temp、イベントログのディスク/NTFS不要ログ退避、空き確保、ログ出力先変更
システムファイル/コンポーネント破損起動失敗が増える、サービスが連鎖停止、管理ツールの表示異常SFC/DISM、CBS.log/DISM.logSFC→DISM、再起動、更新の整合性確認
PLA / WMI など基盤サービスの不調perfmonが不安定、監視が動かない、DCS一覧が欠けるpla/winmgmtサービス状態、関連ログサービス再起動、パフォカウンター再構築
権限/サービスアカウント問題特定サービスだけ起動失敗、アクセス拒否が出るイベントログのエラー、ログオン失敗、GPO変更履歴アカウント/パスワード/権限の再確認
監視ツールやジョブが暴走(高負荷)CPU/メモリ逼迫→タイムアウト→サービス落ちタスク/プロセス、リソースモニター、スケジュール監視設定見直し、採取頻度/項目削減

軽めの復旧から試す:SFC / DISM でOSの整合性を戻す

「DCSが消えた」ように見えても、実際はOSの破損や更新不整合が裏で起きていることがあります。まずは破壊的でない順に、システムファイル修復から着手するのが安全です。

SFC(システムファイル チェッカー)

sfc /scannow

結果が「修復できないファイルがある」場合、ログは C:\Windows\Logs\CBS\CBS.log に残ります。すぐに深追いしなくても、次のDISMで改善することがあります。

DISM(コンポーネント ストア修復)

dism /online /cleanup-image /restorehealth

環境によってはソースが見つからず失敗します(更新サーバーの構成やネットワーク制限など)。その場合は、インストールメディア(ISO)をマウントして /Source を指定すると通ることがあります。

例:D: がインストールメディアの場合
dism /online /cleanup-image /restorehealth /source:wim:D:\sources\install.wim:1 /limitaccess

install.wim のインデックス番号は環境で異なるため、次のコマンドで確認します。

dism /Get-WimInfo /WimFile:D:\sources\install.wim

再起動と再確認

SFC/DISM実行後は、可能なら再起動して、停止していたサービスが自動起動するか、イベントログに新しいエラーが出ないかを確認します。ここで改善したなら、DCSエラーも“二次的な症状”だった可能性が高いです。

パフォーマンス モニター周りの修復:パフォーマンスカウンターを再構築する

perfmon関連が壊れている場合、パフォーマンスカウンターの破損が影響していることがあります。サービス停止とは直接関係しないこともありますが、DCS周りの異常が続く場合は候補に入ります。

目的コマンド例注意点
パフォーマンスカウンターの再登録lodctr /R管理者で実行。状況によって再起動が有効
WMIとパフォーマンスカウンターの同期winmgmt /resyncperfWMI不調が疑われるときの補助。実行後にログ確認

これでも改善しない場合は、WMIリポジトリ自体の破損、または監視ツール側の設定破損も視野に入ります(WMIリポジトリ再構築は影響範囲が広いので、実施前にバックアップと影響評価を推奨します)。

データ コレクター セットが本当に消えた場合の対処

「特定のDCS名を起動しようとして not found」「logman query でも見つからない」なら、DCS定義が消えている可能性が高いです。対処は大きく2パターンです。

同等のDCSを作り直す(暫定復旧に強い)

監視やトラブルシュートで必要な最低限のカウンターだけでも採取できるよう、ユーザー定義で簡易DCSを作り直す方法です。例えばCPU/メモリ/ディスク/ネットワークを一定間隔で採るだけなら、短時間で再構成できます。

例(カウンターのセットを作成し、CSVで出力):

logman create counter "QuickPerf" -f csv -si 00:00:15 -o "C:\PerfLogs\QuickPerf"
logman add counter "QuickPerf" "\Processor(_Total)\% Processor Time"
logman add counter "QuickPerf" "\Memory\Available MBytes"
logman add counter "QuickPerf" "\LogicalDisk(_Total)\% Free Space"
logman start "QuickPerf"

サーバー負荷を上げないために、採取間隔(-si)と採取項目は控えめから始め、必要に応じて増やすのが現場的には安全です。

別環境から“同じDCS定義”を移植する(本復旧に強い)

同型のサーバーや検証環境に同じDCSが残っている場合、DCS定義をエクスポートして移植すると、監視・運用手順を崩さずに戻せます。移植が難しい場合は、監視ツール側でDCSを再作成できないか(修復インストール/再設定)が近道になることもあります。

System State とフルイメージ復元の整理:結論だけ先に

今回のやり取りの結論を、実務で使える形に言い換えると次の通りです。

  • System State(システム状態)は、一般にベアメタル回復(BMR)の復元対象に含まれる
  • つまり、OSを含むフルイメージ/ベアメタル復元を行う方式のバックアップなら、結果としてSystem Stateも戻ることが多い
  • ただし、バックアップ製品や取得方式(ファイル単位、ボリューム単位、スナップショット方式など)で挙動が異なるため、「BMR対応のイメージか」を確認するのが安全

System Stateに含まれるもの(代表例)

System State は、ざっくり言うと「OSの動作に必要な中枢情報」です。代表例は次の通りです(サーバーの役割で増減します)。

  • レジストリ
  • ブートファイル
  • システムファイル(保護されたファイル群)
  • COM+ クラス登録
  • (ドメインコントローラーの場合)Active Directory データベースやSYSVOL など

復元方式の違いを表で理解する

復元方式戻る範囲向いている場面注意点
ファイル/フォルダ復元指定したファイルのみ誤削除、設定ファイルだけ戻したいOS破損や基盤不調は直らないことが多い
ボリューム復元特定ドライブ全体Dドライブ破損、ログ領域を丸ごと戻すCドライブ(OS)を戻さない限りSystem Stateは戻らない
System State 復元OS中枢情報レジストリ破損、役割関連の中枢が壊れた疑い単体復元の可否は製品/方式次第。DCは手順に注意
ベアメタル回復(BMR)/フルイメージ復元OSを含むサーバー丸ごと短時間で元に戻したい、原因不明で広範囲に壊れている復元先互換性、ドライバ、ネットワーク設定の差分に注意

「フルイメージはあるがSystem Stateをどう扱う?」の実務回答

現場で迷いがちなポイントを、実務優先で整理します。

  • 短時間で確実に元へ戻したい:BMR/フルイメージ復元が最短(復元後に原因追跡は別途)
  • 原因を追いながら戻したい:SFC/DISM→ログ確認→必要箇所だけ復旧(ただし時間はかかる)
  • バックアップ製品がSystem State単体復元に弱い:BMR前提で運用計画を立て、復元手順のリハーサルをしておく

復旧後にやっておくと再発が減る:運用の“地雷”を潰す

復旧できても、同じ条件が残っていると再発します。特に「DCSの削除/破損」「ログ領域の肥大化」「監視タスクの参照ズレ」は再発率が高いので、復旧後に一度だけでも棚卸しすると効果的です。

チェック項目確認内容改善アイデア
PerfLogsの容量C:\PerfLogs 配下のサイズ、保存期間、出力先出力先を別ドライブへ、ローテーション/削除ルール
DCS定義の保全重要DCS名、採取項目、開始条件定義をエクスポートして変更管理、復元手順書化
タスクスケジューラlogman/perfmonを呼ぶタスク、実行アカウント、失敗履歴不要タスク停止、失敗時通知、実行頻度の最適化
更新と再起動適用失敗、保留中の再起動、WSUS設定更新運用の整備、メンテ枠で計画再起動
サポート終了への備え現行のセキュリティリスクと運用コスト上位OSへの移行計画、VM化/リプレースの検討

よくある質問(現場で詰まりがちなポイント)

「ユーザー定義」にも何もない。DCSはどこに消えた?

本当に削除されている場合もありますし、PLAサービスやWMIの不調でGUI表示が欠けている場合もあります。まずは logman query で一覧を取り、存在そのものを確認してください。GUIに見えないのにlogmanに出るなら、表示側の問題(管理ツール/WMI)を疑う方が早いです。

「Data collector set was not found」が出るのに、サービス停止のログが見つからない

サービス停止のログが「システム」に出ない場合、アプリが自分で停止している、あるいは監視ツールが停止/再起動をかけていることがあります。アプリケーションログ、監視ツールのログ、タスクスケジューラの実行履歴まで範囲を広げてください。

SFC/DISMを回しても改善しない。次は何を疑う?

次の優先候補は「ディスク逼迫」「権限/アカウント」「WMI/PLA」「監視タスクの暴走」です。特にCドライブ空きとPerfLogs肥大は、トラブル時に最も効率よく刺さる確認ポイントです。

フルイメージがあるなら、System Stateの個別バックアップは不要?

“災害復旧(DR)”を主目的にするなら、BMR可能なフルイメージが中心で運用しやすいです。一方で、ドメインコントローラーなど役割によってはSystem State単体復元を使う場面が出ることがあります。自社のバックアップ製品で「何ができるか」「復元に必要な手順・前提」を一度検証しておくのが安全です。

まとめ:エラー文に引っ張られず、ログと整合性修復で“本丸”を潰す

「Data collector set was not found」は、DCS定義の欠落・破損で出る典型的なメッセージですが、サービス停止まで発展しているなら、まずはイベントログで停止サービスと原因を特定し、SFC/DISMでOS整合性を戻すのが現実的です。そのうえで、DCSが消えているなら作り直しや移植、そしてバックアップはBMRとSystem Stateの関係を理解して“戻せる状態”を担保しておく——この順番で進めると、復旧までの時間と再発率を同時に下げられます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次