New Relic のプラグインのクエリを見ていて「sys.dm_os_ring_buffers」が便利そうでしたので情報を少しメモしておきたいと思います。
OS 系の DMV については、SQL Server オペレーティング システム関連の動的管理ビュー (Transact-SQL) に書かれていますが、sys.dm_os_ring_buffers については、内部情報の扱いとなり情報の公開が行われていません。
海外のブログではいくつか紹介されていますので、英語の情報を探すとよさそうですね。
Using sys.dm_os_ring_buffers To Diagnose Memory Issues in SQL Server
Inside sys.dm_os_ring_buffers
Using sys.dm_os_ring_buffers to Troubleshoot Connectivity Issues
Monitoring and Troubleshooting using sys.dm_os_ring_buffers
この DMV ではいくつかのリソースモニターの情報も取得されており、以下のようなクエリで取得できます。
SELECT DATEADD (ms, -1 * (si.ms_ticks - [timestamp]), GETDATE()) AS time, ring_buffer_type, CONVERT(xml, record) AS record FROM sys.dm_os_ring_buffers CROSS JOIN sys.dm_os_sys_info si WHERE ring_buffer_type LIKE '%MONITOR%' ORDER BY ring_buffer_type, time DESC
リングバッファですので、サービスの再起動やある程度のサイズになるとデータはなくなりますが、直近の状態としてどうだったのかを確認するには有効に使えそうですね。