SQL Server Developer Support
藤丸陽子
はじめに
Analysis Services トレースファイルを採取することで、Analysis Services に対して発行されたクエリや処理状況が確認できます。
また、エラーが発生した際の処理状況を確認することで、原因や対処を見つけやすくなります。
そこで、今回は Analysis Services のトレース ファイルを採取する方法をご案内したいと思います。
Analysis Services 2005 以降、Analysis Services 2012 まですべて同じ方法で採取可能ですので是非ご活用下さい。
手順概要
Analysis Services サーバトレースの使用は、大きく分けて以下の 3 つの作業に分けられます。
- 作業 1-1. スクリプト準備
- 作業 1-2. スクリプト実行
- 作業 1-3. スクリプト停止
作業手順
作業 1-1. スクリプト生成
以下の手順で、XMLA スクリプトを準備します。
(1) StartDetailedProfilerTrace.xmlaを作成します。
詳細のイベントを採取するよう設定した、StartDetailedProfilerTrace.xmla は http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-43-18-ASTrace/4186.ASTrace.zipからダウンロードできます。
ダウンロード後、任意のテキストエディタもしくは SQL Server Management から紫の箇所を環境に併せて、適宜変更します。 次の設定は AS_ProfilerTraceとして、ログファイルの最大サイズを 255 MBで、ロールオーバーの上、D:\AS_ProfilerTrace.trcトレースを生成します。また、Analysis Services サービスの再起動時も、自動的にトレースが再実行する例となっています。
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
補足
------
StartDetailedProfilerTrace.xmlaを環境に併せて変更する箇所は次の通りです。
下記をそれぞれご利用に 合わせ変更し、保存します。
LogFileName
~~~~~~~~~~~
Log ファイルを保存するファイルのフルパスを指定下さい。 なお、指定する際、ファイルの拡張子は .trc と指定します。
例) <LogFileName>D:\AS_ProfilerTrace.trc</LogFileName>
*1 指定するイベントとサーバ で実行される処理量、監視期間によって大量のデータがファイルに出力される可能性があります。
LogFileSize
~~~~~~~~~
Log ファイルの最大値を MB 単位にて指定できます。
Log ファイルのサイズが指定したサイズに到達すると Log ファイルはロールオーバします。
例) <LogFileSize>100</LogFileSize>
LogFileRollover
~~~~~~~~~~~~
1 を指定した場合はログファイル をロールオーバする指定になります。
例) <LogFileRollover>1</LogFileRollover>
ロールオーバーとは、ファイルサイズが 255 MB に達すると、ファイルの上書きをせず新しくファイルを生成し、そのファイルにログを書き込む動作を意味します。新しく作成したファイル名は、例えば AS_ProfilerTrace1.trc、AS_ProfilerTrace2.trc、AS_ProfilerTrace3.trc などファイル名の末尾に番号がついた名前となります。
AutoRestart
~~~~~~~~~~~
1 を指定した場合は SSAS が再起動した際にもトレースが再実行されます。
例) <AutoRestart>1</AutoRestart>
トレースファイルは、十分余裕のあ るディスクに対して保存ください。
作業 1-2. スクリプト実行
以下の手順でスクリプトを実行しま す。
(1) SQL Server Management Studio を起動し、Analysis Services に接続します。
(2) [ファイル]-[開く]-[ファイル] を選択します。
(3) 作業 1-1 で作成した StartDetailedProfilerTrace.xmlaを選択します。
(4) XMLA クエリを実行 します。
作業 1-3. スクリプト停止
(1) StopProfilerTrace.xmlaをサイト http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-43-18-ASTrace/4186.ASTrace.zip
よりダウンロードします。
TraceID に指定する値は、トレース StartDetailedProfilerTrace.xmlaに指定した <Trace><ID> の値となります。
|
(2) SQL Server Management Studio を起動し、Analysis Services に接続します。
(3) [ファイル]-[開く]-[ファイル] を選択します。
(4) StopProfilerTrace.xmla を開きます。
(5) XMLA クエリを実行 し、Analysis Services トレースを停止します。
(6) 生成された .trc ファイルを採取します。
.trc ファイルは、 トレースを開始した、StartDetailedProfilerTrace.xmla 内の <LogFileName>に指定したパスに存在します。
採取した .trc ファイルは SQL Server プロファイラツールより確認ができます。
Analysis Services トレースファイルを取得することで、エラーが発生した際の処理状況が確認できますので是非ご活用下さい。