Custom report templates#

PEM 10.4の カスタムレポートテンプレート 機能は、ユーザーがPEMエージェント にアクティブにバインドされたサーバー全体で調整された診断テンプレートを設計、管理、および実行できる堅牢なフレームワークを導入します。この機能では、 SQLクエリーとホストレベルのバッチまたはシェルスクリプトを整理された論理セクションに統合することにより、ユーザーは汎用性の高い テーブル 表形式グリッドまたは テキスト**スカラー値でレンダリングされた結果を使用して、非常に具体的な洞察を抽出できます。フォーマット。

前提条件#

カスタムレポートテンプレートを介してスクリプトまたは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ステートメントまたはスクリプトロジック。

レポートの実行#

  • PEMブラウザーで ターゲットサーバー を選択します10.4エージェントにバインドされていることを確認します。

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

  • ドロップダウンメニューから目的の レポートテンプレート とターゲット データベース を選択します。

  • Run を選択します。これにより、レポートを実行するエージェントレベルのジョブがトリガーされます。

注釈

カスタムレポートは、**PEMデータベース**自分自身では実行できません。

実行履歴の表示#

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

実行履歴は、すべてのカスタムレポートテンプレートアクティビティの一元的な監査証跡を提供します。大容量環境内の特定のレコードを効果的に管理および検索するには、次のフィルタを適用できます。

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

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

  • ステータス 実行状態たとえば 成功 、 部分成功 、 Failed 、 進行中 、または 不明 などでフィルタリングします。

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

レポート結果の表示#

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

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

データプレゼンテーションレイヤー テンプレート内の各項目に割り当てられた フォーマット 属性に応じて、結果は2つの方法のいずれかでレンダリングされます。

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.

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

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

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

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

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

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では、レポートを完全にカスタマイズできますが、データベースの詳細な分析用に設計された事前構成されたシステムレポートテンプレートも含まれています。これらのレポートはプラットフォームに組み込まれており、手動テンプレート構成を必要とせずにすぐに値を提供します。

EDB PostgresワークロードレポートPWR#

EDB PostgresワークロードレポートPWRは、特定のスナップショット期間におけるサーバーのパフォーマンスとリソース使用率の包括的な概要を提供します。これは、ボトルネック、高負荷のSQLステートメント、および待機イベントを特定するために重要なツールです。

注釈

このレポートテンプレートを実行するには、 edb_wait_states 拡張機能がターゲットデータベースにインストールされ有効になっていることを確認します。

サーバー情報#

サーバーバージョンに関する情報を表示します。

  • Server version _ Postgresサーバーのバージョン番号。

  • Architecture _サーバーが構築されるハードウェアアーキテクチャ。

  • システム識別子 _データベースクラスターの一意の識別子。

  • Redwoodモード _ クラスターがRedwood Oracle互換性モードで作成されたかどうかを示します。

  • 現在のユーザー _ レポートを生成したユーザー。

  • 実際の開始/終了スナップタイムスタンプ _ データ収集の開始と終了をマーキングする正確なタイムスタンプ。

  • スナップショットの継続時間 _ スナップショット中に経過した合計時間。

レポートのタイムスタンプに関する情報を表示します。

  • Session counts _ スナップショットの開始と終了の両方で接続されたセッションの数。

  • データベース時間 _ すべてのセッションがデータベースでの作業または待機に費やした非アイドル時間の合計秒単位。

  • Uptime _ 最後にサーバーを再起動してから費やされた合計時間。

  • Role _サーバーがプライマリインスタンスかスタンバイインスタンスかを示します。

ロードプロファイル#

トランザクションごとの平均負荷プロファイルを示します。

  • Blocks fetched _ トランザクションごとにアクセスされたブロックの平均数。

  • WAL records/bytes _ トランザクションごとに生成された先行書き込みログレコードとバイトの平均数。

  • Transactions _ スナップショット中に処理されたトランザクションの合計数。

  • Abort rate _ アボートが発生したトランザクションの割合。

トップの待機イベント#

トップのイベントで費やされた合計待機時間秒単位で表示されます。

  • 待機イベント _特定の待機イベントの名前。 ( CPU は、アクティブな作業に費やされた時間を示します)。

  • Wait class _ 待機イベントのカテゴリまたはタイプ。

  • 待機時間 _このイベントに費やされた秒単位の合計時間。

  • Pct Database time _ このイベントタイプの待機に費やされた合計Dbtime の割合。

上位のSQLステートメント#

dbtime でソートされた上位10のSQLステートメントを表示します。

  • データベース時間 _ SQLステートメントの実行中に消費された累積データベース時間秒単位。

  • 待機時間 _ SQLステートメントがシステムリソースまたはバックグラウンドイベントの待機に費やした合計時間。

  • CPU time _ SQLステートメントによって使用されたCPU処理時間の合計量。

  • トップ待機イベント _ ステートメントが最長の遅延を経験した特定の待機イベント識別子。

  • Query _実行されたクエリの実際のSQLテキスト。

トランザクション統計#

スナップショット期間中のトランザクション統計を表示します。

  • Xact commit _ 正常に完了および保存されたトランザクションの合計数。

  • Xact rollback _ 取り消されたまたは中止されたトランザクションの合計数。

WAL統計#

スナップショット期間中のWALレコードの変更に関する統計を表示します。

  • Wal records _ スナップショット中に生成された個々のWALレコードの合計数。

  • Wal fpi _作成されたフルページ画像FPIの数。これらは、チェックポイントに続いてページが最初に変更された後に発生し、WALボリュームが大幅に増加する可能性があります。

  • Wal bytes _ 生成されたすべてのWALデータの合計サイズ、バイト単位で測定されます。

共有バッファーの統計#

スナップショット期間中の共有バッファの統計を表示します。

  • Blocks read _ 読み取られたディスクブロックの合計数。

  • Blocks hit _ ヒットしたブロックの合計数。

タプルの統計#

スナップショット期間中のタプルに関する統計を表示します。

  • 返されたタプル _ シークエンシャル スキャンによって返された行数。

  • Tuples fetched _ 特にインデックススキャンを介して取得された行の数。

  • Tuples individually _ データベースに追加された新しい行の合計数。

  • タプルが更新されました _ 変更された既存の行の合計数。

  • 削除されたタプル _ データベースから削除された行の合計数。

一時ファイルの統計#

一時ファイルの作成に関する統計を表示します。

  • Temp files _ 作成された一時ファイルの数。

  • Temp bytes _ 一時ファイルに書き込まれたデータの合計ボリューム。

ユーザーセッション情報#

スナップショット期間中に接続/実行されているセッション情報

  • セッションID _ edb_wait_states によって特定のPostgresセッションに割り当てられた一意のID。

  • データベース名 _ セッションが現在接続しているデータベースの名前。

  • Username _ セッションにログインしたデータベースユーザーのID。

  • アプリケーション名 _ このセッションに接続しているアプリケーションまたはクライアントツールの名前たとえば、psql 、pgAdmin 、またはカスタムアプリサービス。

  • Client hostname _ 接続されたクライアントのネットワークホスト名、接続の起点を提供します使用可能な場合。

  • セッション開始タイムスタンプ _ セッションが最初に確立された正確な日時。

システム情報#

サーバーマシンのCPUとメモリ情報を表示します。

  • ホスト名 _ Postgresが実行されているマシンのネットワーク名。

  • CPU情報 _プロセッサーの数、ベンダー、クロック速度を含む詳細。

  • メモリ情報 _ホストの合計メモリ情報。

Postgresデータベース設定#

Postgresデータベースの設定を示します。

  • Category _パラメーターの論理機能グループ。

  • Parameter _ カテゴリ内の設定の名前と現在の値。強調表示されたエントリは、カスタム値を含むパラメーターを示します。

  • Value _指定されたパラメーターの現在の操作設定。

  • Is custom value _ パラメーターがデフォルト値から変更されたかどうかを示すフラグ。