Custom report templates#

カスタムレポートテンプレートを使用すると、監視対象サーバーまたはPEM独自の管理データベースからデータを照会する診断レポートをデザイン、実行、および管理できます。セクションに編成されたSQLクエリまたはバッチ/シェルスクリプトを使用してレポートを定義でき、結果はテーブルまたはテキスト値として表示されます。

レポートタイプ#

ターゲット別#

カスタムレポートテンプレートは、照会する内容に基づいて、2つのカテゴリに分類されます。

  • PEMレポート は、PEM独自の管理データベースを照会します。これらを使用して、PEM監視データ、エージェントステータス、アラート履歴、および構成についてレポートします。 PEMレポートでは、pem_admin またはpem_super_admin ロールとターゲットサーバーをPEMエージェントバージョン10.5以降にバインドする必要があります。

  • 非PEMレポート は、監視対象サーバーのデータベースを直接照会します。これらは、ワークロード分析、オブジェクトレベルの検査、またはアプリケーション固有の診断に使用します。非PEMレポートでは、ターゲットサーバーをPEMエージェントバージョン10.4以降にバインドする必要があります。

出身地別#

  • システム定義のテンプレート はPEMに組み込まれ、レポートテンプレートにアクセスできるすべてのユーザーが利用できます。システム定義のテンプレートは変更または削除できません。

  • カスタムテンプレート は、pem_manage_report_templates 以上のロールを持つユーザーが作成および管理します。

前提条件#

カスタムレポートテンプレートを介してスクリプトまたはSQLクエリーを実行するには

  • ターゲットサーバーはPEMエージェントバージョン10.4以降にバインドする必要があります。

  • シェル/バッチスクリプトの場合、エージェントはホストオペレーティングシステムでコマンドを実行するために必要な権限を持っている必要があります。

レポートテンプレートの管理#

管理インターフェイスにアクセスするには、 Management > Reports > Manage Report Templates に移動します。

カスタムレポートテンプレートの作成#

一意のタイトルと機能の説明で定義されるトップレベルのコンテナ。

  • Create New Report を選択します。

  • タイトル レポートの一意の名前を入力します必須。

  • 説明 レポートの目的の説明を提供しますオプショナル。

レポート構造の定義#

カスタムレポートテンプレートは、階層構造を使用してデータを整理します。

  • レポート トップレベルのコンテナ。 1つ以上の セクション が含まれます。

  • セクション レポート内の論理グループ。 1つ以上の アイテム が含まれています。

  • Item 個々の実行単位。

項目定義 セクション内の各項目は、次の属性によって定義されます。

Name

Description

Title

特定の項目の名前。

Description

機能的なコンテキストまたは説明を提供するオプショナルフィールド。

Kind

実行エンジン SQL Query または Batch/Shell Script を指定します。

Format

プレゼンテーションレイヤー Table 表形式出力または Text 単一値を定義します。

Code

エージェントによって実行される特定のSQLステートメントまたはスクリプトロジック。

Format 属性は、項目結果の表示方法を決定します。

Format

Presentation mode

Best use case

Table

An interactive data grid complete with column headers.

Multi-row SQL result sets or structured log outputs.

Text

A single string, scalar value, or block of raw text.

Summary metrics, version strings, or simple status checks.

セクションタイプ#

レポートの各セクションは、単純または反復です。

  • シンプルセクション は、1つのターゲットに対して固定された項目セットを実行します。これらは、スコープが事前にわかっている標準の診断クエリに使用します。

  • 反復セクション には、ターゲットのリストを返す グループクエリー が含まれます。グループクエリによって返される行ごとに、セクションの項目が1回実行されます。反復セクションは、データベース、スキーマ、またはオブジェクトの動的なセットにわたって同じクエリを繰り返す必要がある場合に使用します。反復セクションでは、ターゲットサーバーをPEMエージェントバージョン10.5以降にバインドする必要があります。

たとえば、サーバー上のすべてのデータベースを返すグループクエリを使用した反復セクションは、データベースごとに1回各項目を実行します。データベース間の比較に役立ちます。

レポートの実行#

レポートを実行するには2つの方法があります。

サーバーを右クリックします。

  1. PEMブラウザツリーで、ターゲットサーバーを選択します。 PEMエージェントバージョン10.4以降にバインドする必要があります。

  2. サーバーを右クリックし、 Run Report を選択します。

  3. ドロップダウンから目的のレポートテンプレートを選択します。

  4. 選択したレポートについて、ターゲットデータベースを選択します。

  5. Run を選択します。 PEMはエージェントジョブをトリガーしてレポートを実行します。

スケジュールされたジョブを使用する

  1. PEMブラウザツリーで、エージェントノードを展開し、 Jobs を右クリックして Create Job を選択します。

  2. ジョブダイアログで、 Steps タブに移動し、 + を選択してステップを追加します。

  3. Type を Report に設定し、レポートテンプレート、ターゲットサーバー、およびデータベースを選択します。

  4. スケジュールを構成し、 Save を選択します。

非PEMレポートを生成するには、pem_manage_report_templates ロール以上が必要です。 PEMレポートの生成には、pem_admin またはpem_super_admin が必要です。

注釈

非PEMレポートはPEMデータベースで実行できません。 PEM自分自身の管理データを照会するには、代わりにPEMレポートを作成します pem_admin または`pem_super_admin` ロールが必要です。

実行履歴の表示#

トリガーされたレポートと監査履歴データのステータスをモニタするには、 Management > Reports > Report Execution History に移動します。

実行履歴は、すべてのカスタムレポートテンプレートアクティビティの一元的な監査証跡を提供します。特定のレコードを見つけるには、次のフィルターを適用します。

  • サーバー名 レポートが実行された特定のターゲットサーバーでフィルタリングします。

  • エージェント名 実行の処理を担当するPEMエージェントによるフィルター。

  • ステータス 実行状態によるフィルタリングたとえば、 Success 、 Partially Successful 、 Failed 、 In Progress 、または Unknown など。

  • 時間範囲 特定の時間ウィンドウを定義して、最近または履歴データを分離します。

レポート結果の表示#

レポートの詳細な出力にアクセスするには、 レポートの実行履歴 ダッシュボード内の実行レコードを選択します。

結果の構成 結果は、元のテンプレートの階層に従って構造化されています。データは セクション に分割され、各セクションにはそれぞれの アイテム が含まれます。

データプレゼンテーションレイヤー 結果は、レポートテンプレートで設定された Format 属性に基づいて、インタラクティブな Table グリッドまたは Text スカラー値としてレンダリングされます。

エラーの処理 レポート内のアイテムの実行に失敗した場合、システムはSQLエンジンまたはシェル環境から返された特定のエラーメッセージをキャプチャして項目の結果ブロック内に直接表示します。これにより、 部分成功 レポートでも、個々のポイント障害を特定してトラブルシューティングを行うことができます。

結果のエクスポート 外部レポートまたはさらなるデータ処理のために、次の形式で実行されたレポートをダウンロードできます。

  • HTML: 簡単な共有とブラウザベースのレビューのためのフォーマットされたドキュメント。

  • JSON 自動ワークフローまたはサードパーティツールとの統合に最適化された構造化データファイル。

注釈

PEMレポート結果は、実行したユーザーのプライベートです。他のユーザーはそれらを表示することはできません。 pem_super_admin は、すべてのユーザーのPEMレポート結果を表示できます。

レポートのインポートとエクスポート#

PEMでは、標準化されたJSONファイルを介してレポートテンプレートの移行とバックアップができます。

レポートテンプレートのエクスポート レポート構成をバックアップまたは共有するには

  • Management > Reports > Manage Report Templates に移動します。

  • リストから1つ以上のテンプレートを選択します。

  • Export を選択して、選択した構成をJSONファイルとしてダウンロードします。

レポートテンプレートのインポート テンプレートを新しいまたは既存のPEMインスタンスに一括追加するには

  • Manage Report Templates インターフェイスを開きます。

  • Import ボタンを選択します。

  • レポートテンプレート定義を含む有効なJSONファイルをアップロードします。

注釈

同じタイトルのテンプレートが既に存在する場合、エントリをスキップするか上書きするように求められます。

ステータス定義の理解#

[ レポート実行履歴 ]タブは、各レポートジョブのライフサイクルを追跡します。次の表は、カスタムレポートテンプレートの考えられる状態を定義しています。

Status

Definition

Success

Every item within the report template executed successfully.

Partially Successful

At least one item executed successfully, while others encountered errors.

Failed

Every item in the report failed to execute or return data.

In Progress

The report is currently being processed by the target PEM agent.

Unknown

The agent job was aborted, timed out, or the connection was lost.

SQL行数の制限#

パフォーマンスを最適化し、PEMサーバーでの過剰なメモリ消費を防ぐため、カスタムレポートテンプレートは、 SQLクエリによって返される行数の制限を適用します。

この制限は、 サーバー構成 ダッシュボードを介してグローバルに管理され、管理者は大規模なデータセットに対応するように値を変更できます。

Parameter

Default Value

Description

report_sql_row_limit

500

レポート内の単一のSQLクエリ項目によって返される行の最大数を制限します。

注釈

この制限を増やすと、大量のデータを処理する場合のレポート生成速度と**レポート結果**ビューの全体的な応答性に大きな影響を与える可能性があります。

ロールと権限#

PEMは4つのロールを使用して、レポートテンプレートと結果へのアクセスを制御します。

``pem_view_reports`` — レポート実行履歴への読み取り専用アクセス。

  • システム定義およびカスタムの非PEMレポートを表示します。

レポートの生成、レポートテンプレートの作成、編集、表示、または削除はできません。

``pem_manage_report_templates`` — すべてのpem_view_reports 権限に加えて、以下が含まれます。

  • カスタムの非PEMレポートテンプレートを作成および編集します。

  • 非PEMレポートを生成します。

  • 独自の非PEMレポート結果を削除します。

PEMレポートテンプレートを作成または編集したり、PEMレポートのレポート実行履歴を表示したりすることはできません。

``pem_admin`` — すべてのpem_manage_report_templates 権限に加えて、以下が含まれます。

  • カスタムPEMレポートテンプレートを作成および編集します。

  • PEMレポートを生成します。

  • 独自のPEMレポートの実行履歴を表示します。

他のユーザーのPEMレポート結果は表示できません。

``pem_super_admin`` — すべてのpem_admin 権限に加えて、以下が含まれます。

  • すべてのユーザーのPEMレポート結果を表示します。

  • ユーザーのレポート結果を削除します。

システム定義のテンプレートは、ユーザーまたはロールが変更または削除することはできません。

アクセス許可のクイックリファレンス#

テンプレート

Role

View

Create/Edit

Delete

pem_view_reports

pem_manage_report_templates

non-PEM

non-PEM

non-PEM

pem_admin

all

all

all

pem_super_admin

all

all

all

レポート

Role

View

Generate

Delete

pem_view_reports

non-PEM

pem_manage_report_templates

non-PEM

non-PEM

own non-PEM

pem_admin

non-PEM + own PEM

all

own non-PEM + own PEM

pem_super_admin

all

all

all