私は最近、システムヘルス拡張イベントイベントファイルに格納されているデータまたはメトリックの理解に取り組んでいます。
ここで提供されているように、システムヘルスを使用してパフォーマンスメトリックのデータコレクションを実装しようとしています
という名前のシステムヘルスイベントから収集されるCPU使用率、その他のプロセス使用率などのメトリックを提供するレポートがあります。
scheduler_monitor_system_health_ring_buffer_recorded
SQL CPU使用率としてレポートにリストされているフィールド "process_utilization"がほとんどの場合100を超える時間である理由をいくつかのビジーサーバーで理解できません。サーバーアクティビティモニターから確認した場合でも、常に100を超えるCPUが表示されます。
私はGithubでこの問題を提起しましたが、修正または応答がないようです。
したがって、私の質問は
記録されたシステムヘルスリングバッファーを使用して、サーバーのSQL CPU使用率の正確な数値を取得するにはどうすればよいですか?
レポートには、レポートごとに計算された2つ未満のフィールドのカウンターも表示されます
OtherProcessUtilとしての100-System_idle-process_utilization
SystemUtilとしての100-system_idle
これらのOtherProcessUtilおよびSystemUtilは何のために必要/役立ちますか?
- また、毎回メモリ使用率が常に100と表示されています。これも正しくないようです。誰か気づいたことがありますか?
Idera&sentry [私がテストしたもの]のような他のツールでは、同じサーバーのCPU使用率が100%を超えていません。同じ負荷に対して並べて比較しました。