レポート サーバー実行ログと ExecutionLog3 ビュー
レポート サーバー実行ログには、サーバー上で実行するレポート、またはスケールアウト配置内の複数のサーバー上で実行するレポートに関する情報が含まれます。レポート実行ログを使用して、レポートを要求する頻度、最も多く使用される形式、および各処理フェーズでかかる処理時間 (単位はミリ秒) を調査できます。ログには、レポートのデータセット クエリの実行に費やされた時間と、データの処理に費やされた時間に関する情報が含まれています。レポート サーバー管理者は、このログの情報を確認して実行時間の長いタスクを特定し、改善できるレポートの領域 (データセットまたは処理) についてレポート作成者にアドバイスすることができます。
SharePoint モード用に構成されているレポート サーバーでは、SharePoint ULS ログを使用できます。詳細については、「方法: SharePoint トレース ログの Reporting Services イベントをオンにする (ULS)」を参照してください。
ログ情報の表示
レポート サーバーは、レポート実行に関するデータのログを内部データベース テーブルに記録します。このテーブルの情報は、SQL ビューから利用できます。
レポート実行ログはレポート サーバー データベースに格納されます。このデータベースの既定の名前は ReportServer です。実行ログの情報は以下の SQL ビューによって提供されます。"2" と "3" のビューは、比較的最近のリリースで追加されたビューで、新しいフィールドや、以前のリリースよりわかりやすい名前のフィールドが含まれています。古いビューも残されているため、古いビューに依存しているカスタム アプリケーションに影響が及ぶことはありません。古いビュー (ExecutionLog など) に依存していない場合は最新のビュー (ExecutionLog3 など) を使用することをお勧めします。
レポート サーバー実行ログの構成設定
レポート実行のログ記録を有効または無効にするには、SQL Server Management Studio の [サーバーのプロパティ] ページを使用します。
既定では、ログ エントリが 60 日間保持されます。この期間を超えるエントリは、毎日午前 2 時に削除されます。長期間使用しているインストールでは、使用可能な情報は常に 60 日分のみになります。
ExecutionLog3
AdditionalInfo フィールド
ExecutionLog2
ExecutionLog
記録される行数またはエントリの種類に制限を設定することはできません。ただし、追跡するログ情報を取得するためのレポートを作成することはできます。
ログのフィールド (ExecutionLog3)
このビューには、AdditionalInfo などの新しいフィールドがいくつか追加されています。AdditionalInfo には、1 つ以上の追加の情報フィールドの XML 構造が含まれています。以下は、ExecutionLog3 ビューの行を取得する Transact SQL ステートメントのサンプルです。このサンプルでは、レポート サーバー データベースの名前が ReportServer であることを前提としています。
Use ReportServer
select * from ExecutionLog3 order by TimeStart DESC
次の表に、レポート実行ログに取得されるデータを示します。
列 |
説明 |
---|---|
InstanceName |
要求を処理したレポート サーバー インスタンスの名前環境に複数のレポート サーバーが存在する場合は、InstanceName の分布を分析することにより、ネットワーク負荷分散機能によって要求がレポート サーバー間で予想どおりに分散されているかどうかを監視および確認できます。 |
ItemPath |
レポートまたはレポート アイテムが保存されている場所のパス。 |
UserName |
ユーザー識別子 |
ExecutionID |
|
RequestType |
有効値は次のとおりです。
ログ データを RequestType=Subscription でフィルター処理し、TimeStart で並べ替えて分析すると、サブスクリプション要求が多い期間を特定して、一部のレポート サブスクリプションの時間を変更することができます。 |
Format |
表示形式 |
パラメーター |
レポート実行に使用するパラメーター値 |
ItemAction |
有効値は次のとおりです。
|
TimeStart |
レポート処理の期間を示す開始時刻と終了時刻 |
TimeEnd |
|
TimeDataRetrieval |
データの取得、レポートの処理、レポートの表示にかかる時間 (単位はミリ秒) |
TimeProcessing |
|
TimeRendering |
|
Source |
レポート実行のソース (1 = 実行中、2 = キャッシュ、3 = スナップショット、4 = 履歴) |
Status |
状態 (rsSuccess またはエラー コードのいずれか。複数のエラーが発生する場合は、最初のエラーのみ記録) |
ByteCount |
表示されるレポートのサイズ (バイト単位) |
RowCount |
クエリから返される行数 |
AdditionalInfo |
実行に関する追加情報を含む XML プロパティ バッグ。内容は行ごとに異なります。 |
トップに戻る
AdditionalInfo
以下に例を示します。
<AdditionalInfo>
<ProcessingEngine>2</ProcessingEngine>
<ScalabilityTime>
<Pagination>0</Pagination>
<Processing>0</Processing>
</ScalabilityTime>
<EstimatedMemoryUsageKB>
<Pagination>4</Pagination>
<Processing>18</Processing>
</EstimatedMemoryUsageKB>
<DataExtension>
<SQL>1</SQL>
</DataExtension>
</AdditionalInfo>
AdditionalInfo テーブルに表示される値の例を次の表に示します。
プロパティ |
説明 |
---|---|
ProcessingEngine |
1 = SQL Server 2005、2 = 新しいオンデマンドの処理エンジン。大半のレポートでこの値がまだ 1 になっている場合は、より効率的な新しいオンデマンドの処理エンジンを使用するようにそれらのレポートを再設計する方法を調査できます。 |
ScalabilityTime |
処理エンジンでスケール関連の操作に費やされた時間 (ミリ秒)。この値が 0 の場合は、スケール操作のための追加時間は発生していません。これは、要求でメモリ不足が発生していないことにもなります。 |
EstimatedMemoryUsageKB |
特定の要求の処理中に各コンポーネントによって消費されたメモリのピーク容量の推定値 (KB)。 |
DataExtension |
レポートで使用されているデータ拡張機能またはデータ ソースの種類。数値はそのデータ ソースの出現回数です。 |
トップに戻る
ログのフィールド (ExecutionLog2)
このビューには、AdditionalInfo などの新しいフィールドがいくつか追加されています。AdditionalInfo には、1 つ以上の追加の情報フィールドの XML 構造が含まれています。以下は、ExecutionLog2 ビューの行を取得する Transact SQL ステートメントのサンプルです。このサンプルでは、レポート サーバー データベースの名前が ReportServer であることを前提としています。
Use ReportServer
select * from ExecutionLog2 order by TimeStart DESC
次の表に、レポート実行ログに取得されるデータを示します。
列 |
説明 |
---|---|
InstanceName |
要求を処理したレポート サーバー インスタンスの名前 |
ReportPath |
レポートのパス構造。たとえば、"test" という名前のレポートがレポート マネージャーのルート フォルダーにある場合、そのレポートの ReportPath は "/test" になります。 "test" という名前のレポートがレポート マネージャーの "samples" フォルダーに保存されている場合、そのレポートの ReportPath は "/Samples/test/" になります。 |
UserName |
ユーザー識別子 |
ExecutionID |
|
RequestType |
要求の種類 (ユーザーまたはシステムのいずれか) |
Format |
表示形式 |
パラメーター |
レポート実行に使用するパラメーター値 |
ReportAction |
有効値は、Render、Sort、BookMarkNavigation、DocumentNavigation、GetDocumentMap、Findstring です。 |
TimeStart |
レポート処理の期間を示す開始時刻と終了時刻 |
TimeEnd |
|
TimeDataRetrieval |
データの取得、レポートの処理、レポートの表示にかかる時間 (単位はミリ秒) |
TimeProcessing |
|
TimeRendering |
|
Source |
レポート実行のソース (1 = 実行中、2 = キャッシュ、3 = スナップショット、4 = 履歴) |
Status |
状態 (rsSuccess またはエラー コードのいずれか。複数のエラーが発生する場合は、最初のエラーのみ記録) |
ByteCount |
表示されるレポートのサイズ (バイト単位) |
RowCount |
クエリから返される行数 |
AdditionalInfo |
実行に関する追加情報を含む XML プロパティ バッグ。 |
トップに戻る
ログのフィールド (ExecutionLog)
以下は、ExecutionLog ビューの行を取得する Transact SQL ステートメントのサンプルです。このサンプルでは、レポート サーバー データベースの名前が ReportServer であることを前提としています。
Use ReportServer
select * from ExecutionLog order by TimeStart DESC
次の表に、レポート実行ログに取得されるデータを示します。
列 |
説明 |
---|---|
InstanceName |
要求を処理したレポート サーバー インスタンスの名前 |
ReportID |
レポート識別子 |
UserName |
ユーザー識別子 |
RequestType |
有効値は次のとおりです。 True = サブスクリプション要求 False = 対話型要求 |
Format |
表示形式 |
パラメーター |
レポート実行に使用するパラメーター値 |
TimeStart |
レポート処理の期間を示す開始時刻と終了時刻 |
TimeEnd |
|
TimeDataRetrieval |
データの取得、レポートの処理、レポートの表示にかかる時間 (単位はミリ秒) |
TimeProcessing |
|
TimeRendering |
|
Source |
レポート実行のソース。有効値は、1 = 実行中、2 = キャッシュ、3 = スナップショット、4 = 履歴、5 = アドホック、6 = セッション、7 = RDCE です。 |
Status |
有効値は、rsSuccess、rsProcessingAborted、またはエラー コードです。複数のエラーが発生した場合は最初のエラーのみが記録されます。 |
ByteCount |
表示されるレポートのサイズ (バイト単位) |
RowCount |
クエリから返される行数 |
トップに戻る
変更履歴
変更履歴:
日付 |
変更 |
2011 年 9 月 |
2 つの新しいビューと、それらのビューの行を取得するための単純な構文に関する情報を追加しました。 |