Quantcast
Channel: Microsoft SQL Server Japan Support Team Blog
Viewing all articles
Browse latest Browse all 293

[SSAS] SQL Server Analysis Services トレース採取方法

$
0
0

 

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/">
   <Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
     <ObjectDefinition>
       <Trace>
         <ID>AS_ProfilerTrace</ID>
         <Name>AS_ProfilerTrace</Name>
         <!-- !!! -->
         <!-- !!! -->
         <!-- Change the Location of the .trc file to a drive with plenty of space -->
         <LogFileName>D:\AS_ProfilerTrace.trc</LogFileName>
 
       <!-- !!! -->
         <!-- !!! -->
         <!-- !!! -->
         <LogFileAppend>1</LogFileAppend>
         <LogFileSize>255</LogFileSize>
         <LogFileRollover>1</LogFileRollover>
         <AutoRestart>1</AutoRestart>
         <Events>
           <Event>
             <!-- Command Begin -->
             <EventID>15</EventID>
             <Columns>
               <ColumnID>28</ColumnID>
               <ColumnID>32</ColumnID>
               <ColumnID>36</ColumnID>
               <ColumnID>40</ColumnID>
               <ColumnID>44</ColumnID>
               <ColumnID>1</ColumnID>
               <ColumnID>25</ColumnID>
               <ColumnID>33</ColumnID>
               <ColumnID>37</ColumnID>
               <ColumnID>41</ColumnID>
               <ColumnID>45</ColumnID>
               <ColumnID>2</ColumnID>
               <ColumnID>42</ColumnID>
               <ColumnID>3</ColumnID>
             </Columns>
           </Event>            


~【以下略】~            
         

  

 

補足

------

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> の値となります。

 

  


<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<Delete xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<Object>
<TraceID>AS_ProfilerTrace</TraceID>
</Object>
</Delete>
</Batch>

 

 

(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 トレースファイルを取得することで、エラーが発生した際の処理状況が確認できますので是非ご活用下さい。


Viewing all articles
Browse latest Browse all 293

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>