2010年1月4日月曜日

groovyとSQL Serverで待機に関する情報を表示する

groovyとSQL Serverで待機に関する情報を表示するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:sqlserver://localhost;databaseName=test1",
"sa",
"sa",
"com.microsoft.sqlserver.jdbc.SQLServerDriver")

query = """
select * from sys.dm_os_wait_stats
order by wait_time_ms desc
"""
// 待機に関する情報を取得する
sql.eachRow(query){
// 待機の種類の名前
println("wait_type:${it.wait_type}")
// 待機の数
println("waiting_tasks_count:${it.waiting_tasks_count}")
// 総待機時間
println("wait_time_ms:${it.wait_time_ms}")
// 最大待機時間
println("max_wait_time_ms:${it.max_wait_time_ms}")
// シグナルを受け取ってから実行するまでの時間
println("signal_wait_time_ms:${it.signal_wait_time_ms}")
println "----"
}


動作環境
Groovy 1.6.3, JDK6 Update14, SQL Server JDBC Driver 2.0,
SQL Server 2008 Express

関連情報
sys.dm_os_wait_stats (Transact-SQL)

0 件のコメント:

コメントを投稿