카테고리 없음

cpu 사용량

보미아빠 2012. 1. 1. 01:07

alter view cpu_percent
as
select
 top 256 record_id,
 dateadd(ms, -1 * ( (select cpu_ticks / convert(float, ms_ticks) from sys.dm_os_sys_info) - [timestamp]), GetDate()) as EventTime,
 SQLProcessUtilization,
 SystemIdle,
 100 - SystemIdle - SQLProcessUtilization as OtherProcessUtilization
 -- system idle 값과 SQLProcessUtilization 값을 이용해서 SQL 외 cpu 사용율을 계산 합니다.
from (
  select
   record.value('(./Record/@id)[1]', 'int') as record_id,
   record.value('(./Record/SchedulerMonitorEvent/SystemHealth/SystemIdle)[1]', 'int') as SystemIdle,
   record.value('(./Record/SchedulerMonitorEvent/SystemHealth/ProcessUtilization)[1]', 'int') as SQLProcessUtilization,
   timestamp
  from (
   select timestamp, convert(xml, record) as record
   from sys.dm_os_ring_buffers
   where ring_buffer_type = N'RING_BUFFER_SCHEDULER_MONITOR'
   and record like '%<SystemHealth>%'
   ) as x
 ) as y
order by record_id asc