

# Aurora PostgreSQL 関数のリファレンス
<a name="Appendix.AuroraPostgreSQL.Functions"></a>

Aurora PostgreSQL 互換エディション DB エンジンを実行する Aurora DB クラスターで使用できる Aurora PostgreSQL 関数のリストを次に示します。これらの Aurora PostgreSQL 関数は、スタンダードの PostgreSQL 関数に追加されています。スタンダード PostgreSQL 関数の詳細については、「」を参照してください。[PostgreSQL — 関数と演算子](https://www.postgresql.org/docs/current/functions.html)。

## 概要
<a name="Appendix.AuroraPostgreSQL.Functions.Overview"></a>

Aurora PostgreSQL を実行する Amazon RDS DB インスタンスでは、次の関数を使用できます。
+ [aurora\$1db\$1instance\$1identifier](aurora_db_instance_identifier.md)
+ [aurora\$1ccm\$1status](aurora_ccm_status.md)
+ [aurora\$1global\$1db\$1instance\$1status](aurora_global_db_instance_status.md)
+ [aurora\$1global\$1db\$1status](aurora_global_db_status.md)
+ [aurora\$1list\$1builtins](aurora_list_builtins.md)
+ [aurora\$1replica\$1status](aurora_replica_status.md)
+ [aurora\$1stat\$1activity](aurora_stat_activity.md)
+ [aurora\$1stat\$1backend\$1waits](aurora_stat_backend_waits.md)
+ [aurora\$1stat\$1bgwriter](aurora_stat_bgwriter.md)
+ [aurora\$1stat\$1database](aurora_stat_database.md)
+ [aurora\$1stat\$1dml\$1activity](aurora_stat_dml_activity.md)
+ [aurora\$1stat\$1get\$1db\$1commit\$1latency](aurora_stat_get_db_commit_latency.md)
+ [aurora\$1stat\$1logical\$1wal\$1cache](aurora_stat_logical_wal_cache.md)
+ [aurora\$1stat\$1memctx\$1usage](aurora_stat_memctx_usage.md)
+ [aurora\$1stat\$1optimized\$1reads\$1cache](aurora_stat_optimized_reads_cache.md)
+ [aurora\$1stat\$1plans](aurora_stat_plans.md)
+ [aurora\$1stat\$1reset\$1wal\$1cache](aurora_stat_reset_wal_cache.md)
+ [aurora\$1stat\$1statements](aurora_stat_statements.md)
+ [aurora\$1stat\$1system\$1waits](aurora_stat_system_waits.md)
+ [aurora\$1stat\$1wait\$1event](aurora_stat_wait_event.md)
+ [aurora\$1stat\$1wait\$1type](aurora_stat_wait_type.md)
+  [aurora\$1version](aurora_version.md) 
+ [aurora\$1volume\$1logical\$1start\$1lsn](aurora_volume_logical_start_lsn.md)
+ [aurora\$1wait\$1report](aurora_wait_report.md) 

# aurora\$1db\$1instance\$1identifier
<a name="aurora_db_instance_identifier"></a>

接続している DB インスタンスの名前をレポートします。

## 構文
<a name="aurora_db_instance_identifier-syntax"></a>



```
aurora_db_instance_identifier()
```

## 引数
<a name="aurora_db_instance_identifier-arguments"></a>

なし

## 戻り型
<a name="aurora_db_instance_identifier-return-type"></a>

VARCHAR 文字列

## 使用に関する注意事項
<a name="aurora_db_instance_identifier-usage-notes"></a>

この関数によって、データベースクライアントまたはアプリケーション接続用の Aurora PostgreSQL 互換エディションクラスターの DB インスタンスの名前を表示します。

この関数は、Aurora PostgreSQL バージョン 13.7、12.11、11.16、10.21、およびそれ以降のすべてのバージョンのリリースで使用できます。

## 例
<a name="aurora_db_instance_identifier-examples"></a>

次の例は、`aurora_db_instance_identifier` 関数の呼び出し結果を示しています。

```
=> SELECT aurora_db_instance_identifier();
aurora_db_instance_identifier 
-------------------------------
 test-my-instance-name
```

この関数の結果を `aurora_replica_status` 関数と結合することで、接続先の DB インスタンスの詳細を取得できます。[aurora\$1replica\$1status](aurora_replica_status.md) 単独では、どの DB インスタンスを使用しているかを表示できません。以下の例のように指定します。

```
=> SELECT *
    FROM aurora_replica_status() rt, 
         aurora_db_instance_identifier() di
    WHERE rt.server_id = di;
-[ RECORD 1 ]----------------------+-----------------------
server_id                          | test-my-instance-name
session_id                         | MASTER_SESSION_ID
durable_lsn                        | 88492069
highest_lsn_rcvd                   | 
current_read_lsn                   | 
cur_replay_latency_in_usec         | 
active_txns                        | 
is_current                         | t
last_transport_error               | 0
last_error_timestamp               | 
last_update_timestamp              | 2022-06-03 11:18:25+00
feedback_xmin                      | 
feedback_epoch                     | 
replica_lag_in_msec                | 
log_stream_speed_in_kib_per_second | 0
log_buffer_sequence_number         | 0
oldest_read_view_trx_id            | 
oldest_read_view_lsn               | 
pending_read_ios                   | 819
```

# aurora\$1ccm\$1status
<a name="aurora_ccm_status"></a>

クラスターキャッシュマネージャーのステータスを表示します。

## 構文
<a name="aurora_ccm_status-syntax"></a>

 

```
aurora_ccm_status()
```

## 引数
<a name="aurora_ccm_status-arguments"></a>

なし。

## 戻り型
<a name="aurora_ccm_status-return-type"></a>

次の列を含む SETOF レコード。
+ `buffers_sent_last_minute` – 過去 1 分間に、指定された読み込みに送信されたバッファの数。
+ `buffers_found_last_minute` – 過去 1 分間に識別されたアクセス頻度の高いバッファの数。
+ `buffers_sent_last_scan` - バッファキャッシュの最後の完全スキャン中に、指定された読み取りに送信されたバッファの数。
+ `buffers_found_last_scan` - バッファキャッシュの最後の完全スキャン中に送信されたアクセス頻度の高いバッファの数。指定された読み取りに既にキャッシュされているバッファは送信されません。
+ `buffers_sent_current_scan` – 現在のスキャン中に送信されたバッファの数。
+ `buffers_found_current_scan` – 現在のスキャンで識別されたアクセス頻度の高いバッファの数。
+ `current_scan_progress` – 現在のスキャン中に、これまでに訪れたバッファの数。

## 使用に関する注意事項
<a name="aurora_ccm_status-usage-notes"></a>

この関数を使用して、クラスターキャッシュ管理 (CCM) 機能を確認、およびモニタリングできます。この関数は、Aurora PostgreSQL DB クラスターで CCM が有効な場合にのみ機能します。この関数を使用するには、Aurora PostgreSQL DB クラスターの Write DB インスタンスに接続します。

Aurora PostgreSQL DB クラスターの CCM をオンにするには、`apg_ccm_enabled` をクラスターのカスタム DB クラスターパラメータグループで 1 に設定します。この方法の詳細は、「[クラスターキャッシュ管理の設定](AuroraPostgreSQL.cluster-cache-mgmt.md#AuroraPostgreSQL.cluster-cache-mgmt.Configure)」を参照してください。

Aurora PostgreSQL DB クラスターでクラスターキャッシュ管理が有効になるのは、クラスターに Aurora Reader インスタンスが以下のように構成されている場合です。
+ Aurora Reader インスタンスは、クラスターの Writer インスタンスと同じ DB インスタンスクラスタイプとサイズを使用します。
+ Aurora Reader インスタンスは、クラスターの Tier-0 として構成されています。クラスターに複数の Reader がある場合、これは唯一の Tier-0 リーダーです。

複数のリーダーを Tier-0 に設定すると、CCM が無効になります。CCM が無効の場合、この関数を呼び出すと、次のエラーメッセージが返されます。

```
ERROR: Cluster Cache Manager is disabled
```

PostgreSQL pg\$1buffercache 拡張を使用して、バッファキャッシュを分析することもできます。詳細については、PostgreSQL ドキュメントの「[pg\$1buffercache](https://www.postgresql.org/docs/current/pgbuffercache.html)」を参照してください。

詳細については、「[Aurora PostgreSQL クラスターキャッシュ管理の概要](https://aws.amazon.com/blogs/database/introduction-to-aurora-postgresql-cluster-cache-management/)」を参照してください。

## 例
<a name="aurora_ccm_status-examples"></a>

次の例は、`aurora_ccm_status` 関数呼び出しの結果を示しています。この最初の例は、CCM の統計情報を示しています。

```
=> SELECT * FROM aurora_ccm_status();
 buffers_sent_last_minute | buffers_found_last_minute | buffers_sent_last_scan | buffers_found_last_scan | buffers_sent_current_scan | buffers_found_current_scan | current_scan_progress
--------------------------+---------------------------+------------------------+-------------------------+---------------------------+----------------------------+-----------------------
                  2242000 |                   2242003 |               17920442 |                17923410 |                  14098000 |                   14100964 |              15877443
```

詳細を確認するには、以下のように拡張表示を使用できます。

```
\x
Expanded display is on.
SELECT *  FROM aurora_ccm_status();
[ RECORD 1 ]-----------------------+---------
buffers_sent_last_minute           | 2242000
buffers_found_last_minute          | 2242003
buffers_sent_last_scan             | 17920442
buffers_found_last_scan            | 17923410
buffers_sent_current_scan          | 14098000
buffers_found_current_scan         | 14100964
current_scan_progress              | 15877443
```

この例では、ウォームレートとウォームの割合を確認する方法を示します。

```
=> SELECT buffers_sent_last_minute * 8/60 AS warm_rate_kbps,
100 * (1.0-buffers_sent_last_scan/buffers_found_last_scan) AS warm_percent 
FROM aurora_ccm_status ();
 warm_rate_kbps | warm_percent
----------------+--------------
 16523 |        100.0
```

# aurora\$1global\$1db\$1instance\$1status
<a name="aurora_global_db_instance_status"></a>

Aurora グローバル DB クラスター内のレプリカを含む、すべての Aurora インスタンスのステータスを表示します。

## 構文
<a name="aurora_global_db_instance_status-syntax"></a>

 

```
aurora_global_db_instance_status()
```

## 引数
<a name="aurora_global_db_instance_status-arguments"></a>

なし

## 戻り型
<a name="aurora_global_db_instance_status-return-type"></a>

次の列を含む SETOF レコード。
+ `server_id` – DB インスタンスの ID。
+ `session_id` – セッションの一意の識別子。`MASTER_SESSION_ID` の値は、Writer (プライマリ) DB インスタンスを識別します。
+ `aws_region` – このグローバル DB インスタンスが実行される AWS リージョン。リージョンのリストについては、「[リージョンの可用性](Concepts.RegionsAndAvailabilityZones.md#Aurora.Overview.Availability)」を参照してください。
+ `durable_lsn` – ストレージで耐久性のあるログシーケンス番号 (LSN)。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。
+ `highest_lsn_rcvd` — Writer DB インスタンスから DB インスタンスが受信した最も高い LSN。
+ `feedback_epoch` - DB インスタンスがホットスタンバイ情報を生成するときに使用するエポック。*ホットスタンバイ*とは、プライマリ DB が復旧モードまたはスタンバイモードのときに、接続とクエリをサポートする DB インスタンスのことです。ホットスタンバイ情報には、ホットスタンバイとして使用されている DB インスタンスに関するエポック (時点) やその他の詳細が含まれます。詳細については、PostgreSQL ドキュメントの「[ホットスタンバイ](https://www.postgresql.org/docs/current/hot-standby.html)」を参照してください。
+ `feedback_xmin` – DB インスタンスで使用される最小の (最も古い) アクティブトランザクション ID。
+ `oldest_read_view_lsn` - ストレージから読み取るために DB インスタンスが使用した最も古い LSN。
+ `visibility_lag_in_msec` – この DB インスタンスが Writer DB インスタンスからどれだけ遅れているか (ミリ秒単位)。

## 使用に関する注意事項
<a name="aurora_global_db_instance_status-usage-notes"></a>

この関数は、Aurora DB クラスターのレプリケーションの統計を表示します。この関数は、クラスター内の各 Aurora PostgreSQL DB インスタンスについて、グローバルデータベース設定に任意のクロスリージョンレプリカを含むデータの行を表示します。

この関数は、Aurora PostgreSQL DB クラスターまたは Aurora PostgreSQL グローバルデータベースのどのインスタンスからでも実行できます。この関数は、すべてのレプリカインスタンスの遅延に関する詳細を返します。

この関数 (`aurora_global_db_instance_status`) または `aurora_global_db_status` を使用した遅延のモニタリングの詳細については、「[Aurora PostgreSQL ベースのグローバルデータベースのモニタリング](aurora-global-database-monitoring.md#aurora-global-database-monitoring.postgres)」を参照してください。

Aurora グローバルデータベースの詳細については、「[Amazon Aurora Global Database の概要](aurora-global-database.md#aurora-global-database-overview)」を参照してください。

Aurora グローバルデータベースの開始方法については、「[Amazon Aurora Global Database の開始方法](aurora-global-database-getting-started.md)」または「[Amazon Aurora よくある質問](https://aws.amazon.com/rds/aurora/faqs/)」を参照してください。

## 例
<a name="aurora_global_db_instance_status-examples"></a>

この例は、クロスリージョンインスタンスの統計を示しています。

```
=> SELECT *
  FROM aurora_global_db_instance_status();
                server_id                 |              session_id              |  aws_region  | durable_lsn | highest_lsn_rcvd | feedback_epoch | feedback_xmin | oldest_read_view_lsn | visibility_lag_in_msec
------------------------------------------+--------------------------------------+--------------+-------------+------------------+----------------+---------------+----------------------+------------------------
 db-119-001-instance-01                   | MASTER_SESSION_ID                    | eu-west-1    |  2534560273 |           [NULL] |         [NULL] |        [NULL] |               [NULL] |                 [NULL]
 db-119-001-instance-02                   | 4ecff34d-d57c-409c-ba28-278b31d6fc40 | eu-west-1    |  2534560266 |       2534560273 |              0 |      19669196 |           2534560266 |                      6
 db-119-001-instance-03                   | 3e8a20fc-be86-43d5-95e5-bdf19d27ad6b | eu-west-1    |  2534560266 |       2534560273 |              0 |      19669196 |           2534560266 |                      6
 db-119-001-instance-04                   | fc1b0023-e8b4-4361-bede-2a7e926cead6 | eu-west-1    |  2534560266 |       2534560273 |              0 |      19669196 |           2534560254 |                     23
 db-119-001-instance-05                   | 30319b74-3f08-4e13-9728-e02aa1aa8649 | eu-west-1    |  2534560266 |       2534560273 |              0 |      19669196 |           2534560254 |                     23
 db-119-001-global-instance-1             | a331ffbb-d982-49ba-8973-527c96329c60 | eu-central-1 |  2534560254 |       2534560266 |              0 |      19669196 |           2534560247 |                    996
 db-119-001-global-instance-1             | e0955367-7082-43c4-b4db-70674064a9da | eu-west-2    |  2534560254 |       2534560266 |              0 |      19669196 |           2534560247 |                     14
 db-119-001-global-instance-1-eu-west-2a  | 1248dc12-d3a4-46f5-a9e2-85850491a897 | eu-west-2    |  2534560254 |       2534560266 |              0 |      19669196 |           2534560247 |                      0
```

この例は、グローバルレプリカの遅延をミリ秒単位で確認する方法を示します。

```
=> SELECT CASE
          WHEN 'MASTER_SESSION_ID' = session_id THEN 'Primary'
         ELSE 'Secondary'
      END AS global_role,
      aws_region,
      server_id,
      visibility_lag_in_msec
  FROM aurora_global_db_instance_status()
  ORDER BY 1, 2, 3;
   global_role |  aws_region  |                server_id                | visibility_lag_in_msec
-------------+--------------+-----------------------------------------+------------------------
 Primary     | eu-west-1    | db-119-001-instance-01                  |                 [NULL]
 Secondary   | eu-central-1 | db-119-001-global-instance-1            |                     13
 Secondary   | eu-west-1    | db-119-001-instance-02                  |                     10
 Secondary   | eu-west-1    | db-119-001-instance-03                  |                      9
 Secondary   | eu-west-1    | db-119-001-instance-04                  |                      2
 Secondary   | eu-west-1    | db-119-001-instance-05                  |                     18
 Secondary   | eu-west-2    | db-119-001-global-instance-1            |                     14
 Secondary   | eu-west-2    | db-119-001-global-instance-1-eu-west-2a |                     13
```

この例では、データベースのグローバル設定から、AWS リージョン ごとの最小、最大、平均の遅延時間を確認する方法を示しています。

```
=> SELECT 'Secondary' global_role,
       aws_region,
       min(visibility_lag_in_msec) min_lag_in_msec,
       max(visibility_lag_in_msec) max_lag_in_msec,
       round(avg(visibility_lag_in_msec),0) avg_lag_in_msec
  FROM aurora_global_db_instance_status()
 WHERE aws_region NOT IN (SELECT   aws_region
                              FROM aurora_global_db_instance_status()
                             WHERE session_id='MASTER_SESSION_ID')
                          GROUP BY aws_region
UNION ALL
SELECT  'Primary' global_role,
        aws_region,
        NULL,
        NULL,
        NULL
    FROM aurora_global_db_instance_status()
   WHERE session_id='MASTER_SESSION_ID'
ORDER BY 1, 5;
 global_role |  aws_region  | min_lag_in_msec | max_lag_in_msec | avg_lag_in_msec
------------+--------------+-----------------+-----------------+-----------------
 Primary    | eu-west-1    |          [NULL] |          [NULL] |          [NULL]
 Secondary  | eu-central-1 |             133 |             133 |             133
 Secondary  | eu-west-2    |               0 |             495 |             248
```

# aurora\$1global\$1db\$1status
<a name="aurora_global_db_status"></a>

Aurora グローバルデータベースの遅延のさまざまな側面に関する情報を表示します。具体的には、基盤となる Aurora ストレージの遅延 (いわゆる耐久性の遅延) と目標復旧時点 (RPO) 間の遅延などです。

## 構文
<a name="aurora_global_db_status-syntax"></a>

 

```
aurora_global_db_status()
```

## 引数
<a name="aurora_global_db_status-arguments"></a>

なし。

## 戻り型
<a name="aurora_global_db_status-return-type"></a>

次の列を含む SETOF レコード。
+ `aws_region` – この DB クラスターがある AWS リージョン。エンジン別の AWS リージョン の一覧については、「[リージョンとアベイラビリティーゾーン](Concepts.RegionsAndAvailabilityZones.md)」を参照してください。
+ `highest_lsn_written` – この DB クラスターに現在存在するログシーケンス番号 (LSN) の最大値。ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN が後のトランザクションを表すように順序付けられます。
+ `durability_lag_in_msec` – セカンダリ DB クラスターの `highest_lsn_written` とプライマリ DB クラスターの `highest_lsn_written` とのタイムスタンプ値の差。-1 の値は、Aurora グローバルデータベースのプライマリ DB クラスターを識別します。
+ `rpo_lag_in_msec` – 目標復旧時点 (RPO)の遅延。RPO 遅延とは、最近のユーザートランザクション COMMIT が、Aurora グローバルデータベースのプライマリ DB クラスターに保存された後、セカンダリ DB クラスターに保存されるまでにかかる時間です。-1 の値は、プライマリ DB クラスターを表します (したがって、遅延は関係ありません)。

  簡単に言えば、このメトリクスは、Aurora グローバルデータベース内の各 Aurora PostgreSQL DB クラスターの目標復旧時点、つまり、障害が発生した場合に失われる可能性のあるデータの量を計算します。遅延と同様に、RPO は時間単位で測定されます。
+ `last_lag_calculation_time` – `durability_lag_in_msec` と `rpo_lag_in_msec` に対して値が最後に計算された時刻を指定するタイムスタンプ。`1970-01-01 00:00:00+00` のような時間値は、これがプライマリ DB クラスターであることを意味します。
+ `feedback_epoch` – セカンダリ DB クラスターがホットスタンバイ情報を生成するときに使用するエポック。*ホットスタンバイ*とは、プライマリ DB が復旧モードまたはスタンバイモードのときに、接続とクエリをサポートする DB インスタンスのことです。ホットスタンバイ情報には、ホットスタンバイとして使用されている DB インスタンスに関するエポック (時点) やその他の詳細が含まれます。詳細については、PostgreSQL ドキュメントの「[ホットスタンバイ](https://www.postgresql.org/docs/current/hot-standby.html)」を参照してください。
+ `feedback_xmin` – セカンダリ DB クラスターで使用される最小 (最も古い) のアクティブトランザクション ID。

## 使用に関する注意事項
<a name="aurora_global_db_status-usage-notes"></a>

現在利用可能なすべての Aurora PostgreSQL バージョンは、この関数をサポートしています。この関数は、Aurora グローバルデータベースのレプリケーションの統計を表示します。Aurora PostgreSQL グローバルデータベース内の各 DB クラスターに対して 1 つの行が表示されます。この関数は、Aurora PostgreSQL グローバルデータベースのどのインスタンスからでも実行できます。

目に見えるデータ遅延である Aurora グローバルデータベースレプリケーションの遅延を評価するには、「[aurora\$1global\$1db\$1instance\$1status](aurora_global_db_instance_status.md)」を参照してください。

`aurora_global_db_status` や `aurora_global_db_instance_status` を使用して Aurora グローバルデータベースラグをモニタリングする方法の詳細については、「[Aurora PostgreSQL ベースのグローバルデータベースのモニタリング](aurora-global-database-monitoring.md#aurora-global-database-monitoring.postgres)」を参照してください。Aurora グローバルデータベースの詳細については、「[Amazon Aurora Global Database の概要](aurora-global-database.md#aurora-global-database-overview)」を参照してください。

## 例
<a name="aurora_global_db_status-examples"></a>

この例は、クロスリージョンストレージの統計情報を表示する方法を示します。

```
=> SELECT CASE 
          WHEN '-1' = durability_lag_in_msec THEN 'Primary'
          ELSE 'Secondary'
       END AS global_role,
       *
  FROM aurora_global_db_status();
 global_role | aws_region | highest_lsn_written | durability_lag_in_msec | rpo_lag_in_msec | last_lag_calculation_time  | feedback_epoch | feedback_xmin
-------------+------------+---------------------+------------------------+-----------------+----------------------------+----------------+---------------
 Primary     | eu-west-1  |           131031557 |                     -1 |              -1 | 1970-01-01 00:00:00+00     |              0 |             0
 Secondary   | eu-west-2  |           131031554 |                    410 |               0 | 2021-06-01 18:59:36.124+00 |              0 |         12640
 Secondary   | eu-west-3  |           131031554 |                    410 |               0 | 2021-06-01 18:59:36.124+00 |              0 |         12640
```

# aurora\$1list\$1builtins
<a name="aurora_list_builtins"></a>

使用可能なすべての Aurora PostgreSQL 組み込み関数と、簡単な説明および関数の詳細を一覧表示します。

## 構文
<a name="aurora_list_builtins-syntax"></a>

 

```
aurora_list_builtins()
```

## 引数
<a name="aurora_list_builtins-arguments"></a>

なし

## 戻り型
<a name="aurora_list_builtins-return-type"></a>

SETOF レコード

## 例
<a name="aurora_list_builtins-examples"></a>

次の例は、`aurora_list_builtins` 関数呼び出しの結果を示しています。

```
=> SELECT * 
FROM aurora_list_builtins();
     
               Name                | Result data type |                   Argument data types                    | Type | Volatility |  Parallel  | Security |                             Description
-----------------------------------+------------------+----------------------------------------------------------+------+------------+------------+----------+---------------------------------------------------------------------
 aurora_version                    | text             |                                                          | func | stable     | safe       | invoker  | Amazon Aurora PostgreSQL-Compatible Edition version string
 aurora_stat_wait_type             | SETOF record     | OUT type_id smallint, OUT type_name text                 | func | volatile   | restricted | invoker  | Lists all supported wait types
 aurora_stat_wait_event            | SETOF record     | OUT type_id smallint, OUT event_id integer, OUT event_na.| func | volatile   | restricted | invoker  | Lists all supported wait events
                                   |                  |.me text                                                  |      |            |            |          |
 aurora_list_builtins              | SETOF record     | OUT "Name" text, OUT "Result data type" text, OUT "Argum.| func | stable     | safe       | invoker  | Lists all Aurora built-in functions
                                   |                  |.ent data types" text, OUT "Type" text, OUT "Volatility" .|      |            |            |          |
                                   |                  |.text, OUT "Parallel" text, OUT "Security" text, OUT "Des.|      |            |            |          |
                                   |                  |.cription" text                                           |      |            |            |          |
 .
 .
 .
 aurora_stat_file                  | SETOF record     | OUT filename text, OUT allocated_bytes bigint, OUT used_.| func | stable     | safe       | invoker  | Lists all files present in Aurora storage
                                   |                  |.bytes bigint                                             |      |            |            |          |
 aurora_stat_get_db_commit_latency | bigint           | oid                                                      | func | stable     | restricted | invoker  | Per DB commit latency in microsecs
```

# aurora\$1replica\$1status
<a name="aurora_replica_status"></a>

すべての Aurora PostgreSQL リーダーノードのステータスを表示します。

## 構文
<a name="aurora_replica_status-syntax"></a>

 

```
aurora_replica_status()
```

## 引数
<a name="aurora_replica_status-arguments"></a>

なし

## 戻り型
<a name="aurora_replica_status-return-type"></a>

次の列を含む SETOF レコード。
+ `server_id` - DB インスタンス ID (識別子)。
+ `session_id` — 現在のセッションの一意の識別子。プライマリインスタンスおよびリーダーインスタンスについて次のように返されます。
  + プライマリインスタンスについては、`session_id` は常に ``MASTER_SESSION_ID’` です。
  + リーダーインスタンスについては、`session_id` は常にリーダーインスタンスの `UUID` (ユニバーサル一意識別子) です。
+ `durable_lsn` — ストレージに保存されているログシーケンス番号 (LSN)。
  + プライマリボリュームの場合、現在有効なプライマリボリューム耐久性 LSN (VDL)。
  + セカンダリボリュームの場合、セカンダリが正常に適用されたプライマリのVDL。
**注記**  
ログシーケンス番号 (LSN) は、データベーストランザクションログ内のレコードを識別する一意の連続番号です。LSN は、より大きな LSN がシーケンスの後の方で発生したトランザクションを表すように順序付けられます。
+ `highest_lsn_rcvd` — ライター DB インスタンスから DB インスタンスが受信した最も高い (最新の) LSN。
+ `current_read_lsn` — すべてのリーダーに適用された最新のスナップショットの LSN。
+ `cur_replay_latency_in_usec` — セカンダリでのログの再生に要すると推測されるマイクロ秒数。
+ `active_txns` - 現在アクティブなトランザクションの数。
+ `is_current` - 使用されません。
+ `last_transport_error` — 前回のレプリケーションエラーコード。
+ `last_error_timestamp` — 最後のレプリケーションエラーのタイムスタンプ。
+ `last_update_timestamp` — レプリカステータスの最終更新のタイムスタンプ。Aurora PostgreSQL 13.9 以降では、接続先の DB インスタンスの `last_update_timestamp` 値は `NULL` に設定されます。
+ `feedback_xmin` — レプリカのホットスタンバイ feedback\$1xmin。DB インスタンスで使用される最小の (最も古い) アクティブトランザクション ID。
+ `feedback_epoch` - DB インスタンスがホットスタンバイ情報を生成するときに使用するエポック。
+ `replica_lag_in_msec` — リーダーインスタンスがライターインスタンスより遅れている時間 (ミリ秒単位)。
+ `log_stream_speed_in_kib_per_second` — キロバイト/秒単位のログストリームスループット。
+ `log_buffer_sequence_number` — ログバッファのシーケンス番号。
+ `oldest_read_view_trx_id` - 使用されません。
+ `oldest_read_view_lsn` - ストレージから読み取るために DB インスタンスが使用した最も古い LSN。
+ `pending_read_ios` — レプリカで保留中の未処理のページ読み取り。
+ `read_ios` — レプリカでのページ読み取りの総数。
+ `iops` - 使用されません。
+ `cpu` – クラスター内の各ノードの Aurora ストレージデーモンの CPU 使用率。インスタンスによる CPU 使用率の詳細については、「[Amazon Aurora のインスタンスレベルのメトリクス](Aurora.AuroraMonitoring.Metrics.md#Aurora.AuroraMySQL.Monitoring.Metrics.instances)」を参照してください。

## 使用に関する注意事項
<a name="aurora_replica_status-usage-notes"></a>

現在利用可能なすべての Aurora PostgreSQL バージョンは、この関数をサポートしています。`aurora_replica_status` 関数は、Aurora PostgreSQL DB クラスターのレプリカステータスマネージャーから値を返します。この関数を使用して、Aurora DB クラスター内のすべての DB インスタンスのメトリックを含め、Aurora PostgreSQL DB クラスターのレプリケーションのステータスに関する情報を取得できます。例えば、次のオペレーションを実行できます。
+ **Aurora PostgreSQL DB クラスター内のインスタンスのタイプ (ライター、リーダー) に関する情報を取得する** - この情報を取得するには、次の列の値を確認します。
  + `server_id` - インスタンスの作成時に指定したインスタンスの名前が含まれます。プライマリ (ライター) インスタンスの場合など、名前は、通常、Aurora PostgreSQL DB クラスター用に作成した名前に *-instance-1* を付加することによって自動的に作成されます。
  + `session_id` — `session_id` フィールドは、インスタンスがリーダーかライターかを示します。ライターインスタンスの場合、`session_id` は常に `"MASTER_SESSION_ID"` に設定されます。リーダーインスタンスの場合、`session_id` は特定のリーダーの `UUID` に設定されます。
+ **レプリカのラグなど、一般的なレプリケーションの問題を診断する** — レプリカのラグは、リーダーインスタンスのページキャッシュがライターインスタンスのページキャッシュより遅れている時間 (ミリ秒) です。このラグは、[Amazon Aurora でのレプリケーション](Aurora.Replication.md) で説明されているように、Aurora クラスターが非同期レプリケーションを使用しているために発生します。これは、この関数によって返される結果の `replica_lag_in_msec` 列に表示されます。ラグは、スタンバイサーバーでのリカバリとの競合によってクエリがキャンセルされた場合にも発生することがあります。`pg_stat_database_conflicts()` をチェックして、このような競合がレプリカラグを引き起こしている (または引き起こしていない) ことを確認できます。詳細については、『*PostgreSQL ドキュメント*』の「[統計コレクター](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-CONFLICTS-VIEW)」を参照してください。高可用性とレプリケーションの詳細については、「[Amazon Aurora よくある質問](https://aws.amazon.com/rds/aurora/faqs/#High_Availability_and_Replication)」を参照してください。

  Amazon CloudWatch は 時間の経過とともに `replica_lag_in_msec` の結果を `AuroraReplicaLag` メトリクスとして保存します。Aurora 向け CloudWatch メトリクスの使用については、「[Amazon CloudWatch を使用した Amazon Aurora メトリクスのモニタリング](monitoring-cloudwatch.md)」を参照してください。

Aurora リードレプリカおよび再起動のトラブルシューティングの詳細については、[AWS サポート センター](https://console.aws.amazon.com/support/home#/) の「[Amazon Aurora リードレプリカが遅れて再起動したのはなぜですか。](https://aws.amazon.com/premiumsupport/knowledge-center/aurora-read-replica-restart/)」を参照してください。

## 例
<a name="aurora_replica_status-examples"></a>

次の例は、Aurora PostgreSQL DB クラスター内のすべてのインスタンスのレプリケーションステータスを取得する方法を示しています。

```
=> SELECT * 
FROM aurora_replica_status();
```

次の例は、`docs-lab-apg-main` Aurora PostgreSQL DB クラスター内のライターインスタンスを示しています。

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role
FROM aurora_replica_status() 
WHERE session_id = 'MASTER_SESSION_ID';
        server_id       | instance_role
------------------------+---------------
 db-119-001-instance-01 | writer
```

次の例では、クラスター内のすべてのリーダーインスタンスをリストします。

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role
FROM aurora_replica_status() 
WHERE session_id <> 'MASTER_SESSION_ID';
        server_id       | instance_role
------------------------+---------------
db-119-001-instance-02  | reader
db-119-001-instance-03  | reader
db-119-001-instance-04  | reader
db-119-001-instance-05  | reader
(4 rows)
```

次の例では、すべてのインスタンス、各インスタンスがライターより遅れている時間、および最後の更新からの経過時間をリストします。

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role,
    replica_lag_in_msec AS replica_lag_ms,
    round(extract (epoch FROM (SELECT age(clock_timestamp(), last_update_timestamp))) * 1000) AS last_update_age_ms
FROM aurora_replica_status()
ORDER BY replica_lag_in_msec NULLS FIRST;
       server_id        | instance_role | replica_lag_ms | last_update_age_ms
------------------------+---------------+----------------+--------------------
 db-124-001-instance-03 | writer        |         [NULL] |               1756
 db-124-001-instance-01 | reader        |             13 |               1756
 db-124-001-instance-02 | reader        |             13 |               1756
(3 rows)
```

# aurora\$1stat\$1activity
<a name="aurora_stat_activity"></a>

サーバープロセスごとに 1 行を返し、そのプロセスの現在のアクティビティに関連する情報を表示します。

## 構文
<a name="aurora_stat_activity-syntax"></a>

 

```
aurora_stat_activity();
```

## 引数
<a name="aurora_stat_activity-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_activity-return-type"></a>

サーバープロセスごとに 1 行を返します。`pg_stat_activity` 列に加えて、次のフィールドが追加されます。
+ planid - 計画識別子

## 使用に関する注意事項
<a name="aurora_stat_activity-usage-notes"></a>

現在のクエリ実行計画を示す追加の `plan_id` 列を含む同じ列を返す `pg_stat_activity` の補足ビュー。

ビューが plan\$1id を返すには、`aurora_compute_plan_id` を有効にする必要があります。

この関数は、Aurora PostgreSQL バージョン 14.10、15.5、およびそれ以降のすべてのバージョンで使用できます。

## 例
<a name="aurora_stat_activity-examples"></a>

以下のクエリ例では、上位負荷を query\$1id と plan\$1id 別に集計しています。

```
db1=# select count(*), query_id, plan_id
db1-# from aurora_stat_activity() where state = 'active'
db1-# and pid <> pg_backend_pid()
db1-# group by query_id, plan_id
db1-# order by 1 desc;   

count |  query_id             |  plan_id 
-------+----------------------+-------------
 11    | -5471422286312252535 | -2054628807
 3     | -6907107586630739258 | -815866029
 1     | 5213711845501580017  |  300482084
(3 rows)
```

query\$1id に使用される計画が変更されると、新しい plan\$1id が aurora\$1stat\$1activity によって報告されます。

```
count  |  query_id            |  plan_id 
-------+----------------------+-------------
 10    | -5471422286312252535 | 1602979607
 1     | -6907107586630739258 | -1809935983
 1     | -2446282393000597155 | -207532066
(3 rows)
```

# aurora\$1stat\$1backend\$1waits
<a name="aurora_stat_backend_waits"></a>

特定のバックエンドプロセスの待機アクティビティの統計を表示します。

## 構文
<a name="aurora_stat_backend_waits-syntax"></a>

 

```
aurora_stat_backend_waits(pid)
```

## 引数
<a name="aurora_stat_backend_waits-arguments"></a>

`pid` – バックエンドプロセスの ID。プロセス ID は、`pg_stat_activity` ビューを使用して取得できます。

## 戻り型
<a name="aurora_stat_backend_waits-return-type"></a>

次の列を含む SETOF レコード。
+ `type_id` – 待機イベントのタイプを示す数値。いくつか例を挙げると、軽量ロック (`LWLock`) の場合は `1`、ロックの場合は `3`、またはクライアントセッションの場合は `6` などです。これらの値は、[例](#aurora_stat_backend_waits-examples) に示すように、この関数の結果を `aurora_stat_wait_type` 関数の列と結合することで意味を持ちます。
+ `event_id` – 待機イベントの識別番号。この値を `aurora_stat_wait_event` の列と結合して、意味のあるイベント名を取得します。
+ `waits` – 指定したプロセス ID に累積された待機数のカウント。
+ `wait_time` – ミリ秒単位の待機時間。

## 使用に関する注意事項
<a name="aurora_stat_backend_waits-usage-notes"></a>

この関数を使用して、接続を開いた後に発生した特定のバックエンド (セッション) 待機イベントを分析できます。待機イベントの名前とタイプに関するより意味のある情報を得るには、例に示すように JOIN を使用して、この関数 `aurora_stat_wait_type` と `aurora_stat_wait_event` を組み合わせることができます。

## 例
<a name="aurora_stat_backend_waits-examples"></a>

この例では、バックエンドプロセス ID 3027 のすべての待機、タイプ、イベント名を示しています。

```
=> SELECT type_name, event_name, waits, wait_time
        FROM aurora_stat_backend_waits(3027)
NATURAL JOIN aurora_stat_wait_type()
NATURAL JOIN aurora_stat_wait_event();
type_name |       event_name       | waits | wait_time
-----------+------------------------+-------+------------
 LWLock    | ProcArrayLock          |     3 |         27
 LWLock    | wal_insert             |   423 |      16336
 LWLock    | buffer_content         | 11840 |    1033634
 LWLock    | lock_manager           | 23821 |    5664506
 Lock      | tuple                  | 10258 |  152280165
 Lock      | transactionid          | 78340 | 1239808783
 Client    | ClientRead             | 34072 |   17616684
 IO        | ControlFileSyncUpdate  |     2 |          0
 IO        | ControlFileWriteUpdate |     4 |         32
 IO        | RelationMapRead        |     2 |        795
 IO        | WALWrite               | 36666 |      98623
 IO        | XactSync               |  4867 |    7331963
```

この例では、すべてのアクティブなセッションの現在および累積の待機タイプと待機イベントを示しています (`pg_stat_activity state <> 'idle'`)。ただし、関数を呼び出している現在のセッションは表示されません (`pid <> pg_backend_pid()`)。

```
=> SELECT a.pid,
             a.usename,
             a.app_name,
             a.current_wait_type,
             a.current_wait_event,
             a.current_state,
             wt.type_name AS wait_type,
             we.event_name AS wait_event,
             a.waits,
             a.wait_time
        FROM (SELECT pid,
                     usename,
                     left(application_name,16) AS app_name,
                     coalesce(wait_event_type,'CPU') AS current_wait_type,
                     coalesce(wait_event,'CPU') AS current_wait_event,
                     state AS current_state,
                     (aurora_stat_backend_waits(pid)).*
                FROM pg_stat_activity
               WHERE pid <> pg_backend_pid()
                 AND state <> 'idle') a
NATURAL JOIN aurora_stat_wait_type() wt
NATURAL JOIN aurora_stat_wait_event() we;
  pid  | usename  | app_name | current_wait_type | current_wait_event | current_state | wait_type |       wait_event       | waits | wait_time
-------+----------+----------+-------------------+--------------------+---------------+-----------+------------------------+-------+-----------
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | wal_insert             |  1937 |     29975
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | buffer_content         | 22903 |    760498
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | lock_manager           | 10012 |    223207
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | Lock      | tuple                  | 20315 |  63081529
 .
 .
 .
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | IO        | WALWrite               | 93293 |    237440
 30099 | postgres | pgbench  | Lock              | transactionid      | active        | IO        | XactSync               | 13010 |  19525143
 30100 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | ProcArrayLock          |     6 |        53
 30100 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | wal_insert             |  1913 |     25450
 30100 | postgres | pgbench  | Lock              | transactionid      | active        | LWLock    | buffer_content         | 22874 |    778005
 .
 .
 .
 30109 | postgres | pgbench  | IO                | XactSync           | active        | LWLock    | ProcArrayLock          |     3 |        71
 30109 | postgres | pgbench  | IO                | XactSync           | active        | LWLock    | wal_insert             |  1940 |     27741
 30109 | postgres | pgbench  | IO                | XactSync           | active        | LWLock    | buffer_content         | 22962 |    776352
 30109 | postgres | pgbench  | IO                | XactSync           | active        | LWLock    | lock_manager           |  9879 |    218826
 30109 | postgres | pgbench  | IO                | XactSync           | active        | Lock      | tuple                  | 20401 |  63581306
 30109 | postgres | pgbench  | IO                | XactSync           | active        | Lock      | transactionid          | 50769 | 211645008
 30109 | postgres | pgbench  | IO                | XactSync           | active        | Client    | ClientRead             | 89901 |  44192439
```

この例では、すべてのアクティブなセッションについて、現在および上位 3 つの累積の待機タイプと待機イベントを示しています (`pg_stat_activity state <> 'idle'`)。現在のセッションは除きます (`pid <>pg_backend_pid()`)。

```
=> SELECT top3.*
       FROM (SELECT a.pid,
                    a.usename,
                    a.app_name,
                    a.current_wait_type,
                    a.current_wait_event,
                    a.current_state,
                    wt.type_name AS wait_type,
                    we.event_name AS wait_event,
                    a.waits,
                    a.wait_time,
                    RANK() OVER (PARTITION BY pid ORDER BY a.wait_time DESC)
               FROM (SELECT pid,
                            usename,
                            left(application_name,16) AS app_name,
                            coalesce(wait_event_type,'CPU') AS current_wait_type,
                            coalesce(wait_event,'CPU') AS current_wait_event,
                            state AS current_state,
                            (aurora_stat_backend_waits(pid)).*
                       FROM pg_stat_activity
                      WHERE pid <> pg_backend_pid()
                        AND state <> 'idle') a
       NATURAL JOIN aurora_stat_wait_type() wt
       NATURAL JOIN aurora_stat_wait_event() we) top3
 WHERE RANK <=3;
  pid  | usename  | app_name | current_wait_type | current_wait_event | current_state | wait_type |   wait_event    |  waits  | wait_time  | rank
-------+----------+----------+-------------------+--------------------+---------------+-----------+-----------------+---------+------------+------
 20567 | postgres | psql     | CPU               | CPU                | active        | LWLock    | wal_insert      |   25000 |   67512003 |    1
 20567 | postgres | psql     | CPU               | CPU                | active        | IO        | WALWrite        | 3071758 |    1016961 |    2
 20567 | postgres | psql     | CPU               | CPU                | active        | IO        | BufFileWrite    |   20750 |     184559 |    3
 27743 | postgres | pgbench  | Lock              | transactionid      | active        | Lock      | transactionid   |  237350 | 1265580011 |    1
 27743 | postgres | pgbench  | Lock              | transactionid      | active        | Lock      | tuple           |   93641 |  341472318 |    2
 27743 | postgres | pgbench  | Lock              | transactionid      | active        | Client    | ClientRead      |  417556 |  204796837 |    3
 .
 .
 .
 27745 | postgres | pgbench  | IO                | XactSync           | active        | Lock      | transactionid   |  238068 | 1265816822 |    1
 27745 | postgres | pgbench  | IO                | XactSync           | active        | Lock      | tuple           |   93210 |  338312247 |    2
 27745 | postgres | pgbench  | IO                | XactSync           | active        | Client    | ClientRead      |  419157 |  207836533 |    3
 27746 | postgres | pgbench  | Lock              | transactionid      | active        | Lock      | transactionid   |  237621 | 1264528811 |    1
 27746 | postgres | pgbench  | Lock              | transactionid      | active        | Lock      | tuple           |   93563 |  339799310 |    2
 27746 | postgres | pgbench  | Lock              | transactionid      | active        | Client    | ClientRead      |  417304 |  208372727 |    3
```

# aurora\$1stat\$1bgwriter
<a name="aurora_stat_bgwriter"></a>

`aurora_stat_bgwriter`は、Optimized Reads キャッシュ書き込みに関する情報を表示する統計ビューです。

## 構文
<a name="aurora_stat_bgwriter-syntax"></a>

 

```
aurora_stat_bgwriter()
```

## 引数
<a name="aurora_stat_bgwriter-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_bgwriter-return-type"></a>

すべての `pg_stat_bgwriter` 列と以下の追加列を含む SETOF レコード。`pg_stat_bgwriter` 列の詳細については、「[https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-BGWRITER-VIEW](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-BGWRITER-VIEW)」を参照してください。

この関数の統計情報は `pg_stat_reset_shared("bgwriter")` を使用してリセットできます。
+ `orcache_blks_written` – 書き込まれた Optimized Reads キャッシュデータブロックの総数。
+ `orcache_blk_write_time` – `track_io_timing` を有効にすると、Optimized Reads キャッシュデータブロックの書き込みにかかった合計時間をミリ秒単位で追跡します。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。

## 使用に関する注意事項
<a name="aurora_stat_bgwriter-usage-notes"></a>

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ 15.4 以降の 15 バージョン
+ 14.9 以降の 14 バージョン

## 例
<a name="aurora_stat_bgwriter-examples"></a>

```
=> select * from aurora_stat_bgwriter();    
-[ RECORD 1 ]-----------------+-----------
orcache_blks_written          | 246522
orcache_blk_write_time        | 339276.404
```

# aurora\$1stat\$1database
<a name="aurora_stat_database"></a>

pg\$1stat\$1database のすべての列を保持し、最後に新しい列を追加します。

## 構文
<a name="aurora_stat_database-syntax"></a>

 

```
aurora_stat_database()
```

## 引数
<a name="aurora_stat_database-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_database-return-type"></a>

すべての `pg_stat_database` 列と以下の追加列を含む SETOF レコード。`pg_stat_database` 列の詳細については、「[https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW)」を参照してください。
+ `storage_blks_read` - このデータベースの Aurora ストレージから読み取られた共有ブロックの総数。
+ `orcache_blks_hit` - このデータベース内の Optimized Reads キャッシュヒットの総数。
+ `local_blks_read` - このデータベースで読み取られたローカルブロックの総数。
+ `storage_blk_read_time` - `track_io_timing` を有効にすると、Aurora ストレージからのデータファイルブロックの読み取りにかかった合計時間をミリ秒単位で追跡します。それ以外の場合、値はゼロです。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。
+ `local_blk_read_time` - `track_io_timing` を有効にすると、ローカルデータファイルブロックの読み取りにかかった合計時間をミリ秒単位で追跡します。それ以外の場合、値は 0 です。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。
+ `orcache_blk_read_time` - `track_io_timing` を有効にすると、Optimized Reads キャッシュからデータファイルブロックを読み取るのにかかった合計時間をミリ秒単位で追跡します。それ以外の場合は 0 です。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。

**注記**  
`blks_read` の値は、`storage_blks_read`、`orcache_blks_hit`、`local_blks_read` の合計です。  
`blk_read_time` の値は、`storage_blk_read_time`、`orcache_blk_read_time`、`local_blk_read_time` の合計です。

## 使用に関する注意事項
<a name="aurora_stat_database-usage-notes"></a>

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ 15.4 以降の 15 バージョン
+ 14.9 以降の 14 バージョン

## 例
<a name="aurora_stat_database-examples"></a>

次の例は、すべての `pg_stat_database` 列を保持し、末尾に 6 つの新しい列を追加する方法を示しています。

```
=> select * from aurora_stat_database() where datid=14717;    
-[ RECORD 1 ]------------+------------------------------
datid                    | 14717
datname                  | postgres
numbackends              | 1
xact_commit              | 223
xact_rollback            | 4
blks_read                | 1059
blks_hit                 | 11456
tup_returned             | 27746
tup_fetched              | 5220
tup_inserted             | 165
tup_updated              | 42
tup_deleted              | 91
conflicts                | 0
temp_files               | 0
temp_bytes               | 0
deadlocks                | 0
checksum_failures        |
checksum_last_failure    |
blk_read_time            | 3358.689
blk_write_time           | 0
session_time             | 1076007.997
active_time              | 3684.371
idle_in_transaction_time | 0
sessions                 | 10
sessions_abandoned       | 0
sessions_fatal           | 0
sessions_killed          | 0
stats_reset              | 2023-01-12 20:15:17.370601+00
orcache_blks_hit         | 425
orcache_blk_read_time    | 89.934
storage_blks_read        | 623
storage_blk_read_time    | 3254.914
local_blks_read          | 0
local_blk_read_time      | 0
```

# aurora\$1stat\$1dml\$1activity
<a name="aurora_stat_dml_activity"></a>

Aurora PostgreSQL クラスター内のデータベースに対する各タイプのデータ操作言語 (DML) オペレーションの累積アクティビティをレポートします。

## 構文
<a name="aurora_stat_dml_activity-syntax"></a>

 

```
aurora_stat_dml_activity(database_oid)
```

## 引数
<a name="aurora_stat_dml_activity-arguments"></a>

 *database\$1oid*   
Aurora PostgreSQL クラスター内のデータベースのオブジェクト ID (OID)。

## 戻り型
<a name="aurora_stat_dml_activity-return-type"></a>

SETOF レコード

## 使用に関する注意事項
<a name="aurora_stat_dml_activity-usage-notes"></a>

`aurora_stat_dml_activity` 関数は、PostgreSQL エンジン 11.6 以降と互換性がある Aurora PostgreSQL リリース 3.1 でのみ利用可能です。

この関数を、多数のデータベースを持つ Aurora PostgreSQL クラスターで使用して、どちらのデータベースの DML アクティビティが遅いか、または両方とも遅いかを特定します。

`aurora_stat_dml_activity` 関数は、SELECT、INSERT、UPDATE、DELETE オペレーションの実行回数と累積レイテンシーをマイクロ秒単位で返します。レポートには、成功した DML オペレーションのみが含まれます。

この統計をリセットするには、PostgreSQL 統計アクセス関数 `pg_stat_reset` を使用します。この統計が最後にリセットされた時刻をチェックするには、`pg_stat_get_db_stat_reset_time` 関数を使用します。PostgreSQL 統計アクセス関数の詳細については、PostgreSQL ドキュメントの[統計コレクター](https://www.postgresql.org/docs/9.1/monitoring-stats.html)を参照してください。

## 例
<a name="aurora_stat_dml_activity-examples"></a>

次の例は、接続データベース用に DML アクティビティ統計をレポートする方法を示しています。

```
––Define the oid variable from connected database by using \gset
=> SELECT oid, 
          datname 
     FROM pg_database 
    WHERE datname=(select current_database()) \gset
=> SELECT * 
     FROM aurora_stat_dml_activity(:oid);
select_count | select_latency_microsecs | insert_count | insert_latency_microsecs | update_count | update_latency_microsecs | delete_count | delete_latency_microsecs
--------------+--------------------------+--------------+--------------------------+--------------+--------------------------+--------------+--------------------------
       178957 |                 66684115 |       171065 |                 28876649 |       519538 |            1454579206167 |            1 |                    53027


–– Showing the same results with expanded display on
=> SELECT * 
     FROM aurora_stat_dml_activity(:oid);
-[ RECORD 1 ]------------+--------------
select_count             | 178957
select_latency_microsecs | 66684115
insert_count             | 171065
insert_latency_microsecs | 28876649
update_count             | 519538
update_latency_microsecs | 1454579206167
delete_count             | 1
delete_latency_microsecs | 53027
```

次の例は、Aurora PostgreSQL クラスター内のすべてのデータベースの DML アクティビティ統計を示しています。このクラスターには、`postgres` および `mydb` という 2 つのデータベースがあります。コンマ区切りのリストは、`select_count`、`select_latency_microsecs`、`insert_count`、`insert_latency_microsecs`、`update_count`、`update_latency_microsecs`、`delete_count`、`delete_latency_microsecs` フィールドと一致しています。

Aurora PostgreSQL は、`rdsadmin` という名前のシステムデータベースを作成し、バックアップ、修復、ヘルスチェック、レプリケーションなどの管理オペレーションをサポートするために使用します。これらの DML オペレーションは、Aurora PostgreSQL クラスターには影響しません。

```
=> SELECT oid, 
    datname, 
    aurora_stat_dml_activity(oid) 
    FROM pg_database;
oid  |    datname     |                    aurora_stat_dml_activity
-------+----------------+-----------------------------------------------------------------
 14006 | template0      | (,,,,,,,)
 16384 | rdsadmin       | (2346623,1211703821,4297518,817184554,0,0,0,0)
     1 | template1      | (,,,,,,,)
 14007 | postgres       | (178961,66716329,171065,28876649,519538,1454579206167,1,53027)
 16401 | mydb           | (200246,64302436,200036,107101855,600000,83659417514,0,0)
```

次の例は、読みやすさを高めるために列で編成された、すべてのデータベースの DML アクティビティ統計を示しています。

```
SELECT db.datname,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 1), '()') AS select_count,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 2), '()') AS select_latency_microsecs,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 3), '()') AS insert_count,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 4), '()') AS insert_latency_microsecs,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 5), '()') AS update_count,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 6), '()') AS update_latency_microsecs,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 7), '()') AS delete_count,
       BTRIM(SPLIT_PART(db.asdmla::TEXT, ',', 8), '()') AS delete_latency_microsecs 
FROM  (SELECT datname,
              aurora_stat_dml_activity(oid) AS asdmla 
         FROM pg_database
      ) AS db;
      
    datname     | select_count | select_latency_microsecs | insert_count | insert_latency_microsecs | update_count | update_latency_microsecs | delete_count | delete_latency_microsecs
----------------+--------------+--------------------------+--------------+--------------------------+--------------+--------------------------+--------------+--------------------------
 template0      |              |                          |              |                          |              |                          |              |
 rdsadmin       | 4206523      | 2478812333               | 7009414      | 1338482258               | 0            | 0                        | 0            | 0
 template1      |              |                          |              |                          |              |                          |              |
 fault_test     | 66           | 452099                   | 0            | 0                        | 0            | 0                        | 0            | 0
 db_access_test | 1            | 5982                     | 0            | 0                        | 0            | 0                        | 0            | 0
 postgres       | 42035        | 95179203                 | 5752         | 2678832898               | 21157        | 441883182488             | 2            | 1520
 mydb           | 71           | 453514                   | 0            | 0                        | 1            | 190                      | 1            | 152
```

次の例は、OID `16401` を持つデータベースの各 DML オペレーションの平均累積レイテンシー (累積レイテンシーをカウントで割った値) を示しています。

```
=> SELECT select_count, 
          select_latency_microsecs, 
          select_latency_microsecs/NULLIF(select_count,0) select_latency_per_exec,
          insert_count, 
          insert_latency_microsecs, 
          insert_latency_microsecs/NULLIF(insert_count,0) insert_latency_per_exec,
          update_count, 
          update_latency_microsecs, 
          update_latency_microsecs/NULLIF(update_count,0) update_latency_per_exec,
          delete_count, 
          delete_latency_microsecs, 
          delete_latency_microsecs/NULLIF(delete_count,0) delete_latency_per_exec
     FROM aurora_stat_dml_activity(16401);
-[ RECORD 1 ]------------+-------------
select_count             | 451312
select_latency_microsecs | 80205857
select_latency_per_exec  | 177
insert_count             | 451001
insert_latency_microsecs | 123667646
insert_latency_per_exec  | 274
update_count             | 1353067
update_latency_microsecs | 200900695615
update_latency_per_exec  | 148478
delete_count             | 12
delete_latency_microsecs | 448
delete_latency_per_exec  | 37
```

# aurora\$1stat\$1get\$1db\$1commit\$1latency
<a name="aurora_stat_get_db_commit_latency"></a>

Aurora PostgreSQL データベースの累積コミットレイテンシーをマイクロ秒単位で取得します。*コミットレイテンシー*は、クライアントがコミットリクエストを送信してからコミット確認を受信するまでの時間として測定されます。

## 構文
<a name="aurora_stat_get_db_commit_latency-syntax"></a>

 

```
aurora_stat_get_db_commit_latency(database_oid)
```

## 引数
<a name="aurora_stat_get_db_commit_latency-arguments"></a>

 *database\$1oid*   
Aurora PostgreSQL データベースのオブジェクト ID (OID)。

## 戻り型
<a name="aurora_stat_get_db_commit_latency-return-type"></a>

SETOF レコード

## 使用に関する注意事項
<a name="aurora_stat_get_db_commit_latency-usage-notes"></a>

Amazon CloudWatch はこの関数を使用して、平均コミットレイテンシーを計算します。Amazon CloudWatch メトリクスの詳細、およびハイコミットレイテンシーのトラブルシューティング方法については、[Amazon RDS コンソールでのメトリクスの表示](USER_Monitoring.md) および [Making better decisions about Amazon RDS with Amazon CloudWatch metrics](https://aws.amazon.com/blogs/database/making-better-decisions-about-amazon-rds-with-amazon-cloudwatch-metrics/) を参照してください。

この統計をリセットするには、PostgreSQL 統計アクセス関数 `pg_stat_reset` を使用します。この統計が最後にリセットされた時刻をチェックするには、`pg_stat_get_db_stat_reset_time` 関数を使用します。PostgreSQL 統計アクセス関数の詳細については、PostgreSQL ドキュメントの[統計コレクター](https://www.postgresql.org/docs/9.1/monitoring-stats.html)を参照してください。

## 例
<a name="aurora_stat_get_db_commit_latency-examples"></a>

次の例では、`pg_database` クラスターのデータベースごとに累積コミットレイテンシーを取得します。

```
=> SELECT oid, 
    datname, 
    aurora_stat_get_db_commit_latency(oid) 
    FROM pg_database;
     
  oid  |    datname     | aurora_stat_get_db_commit_latency
-------+----------------+-----------------------------------
 14006 | template0      |                                 0
 16384 | rdsadmin       |                         654387789
     1 | template1      |                                 0
 16401 | mydb           |                            229556
 69768 | postgres       |                             22011
```

次の例では、現在接続されているデータベースの累積コミットレイテンシーを取得します。この例では、`aurora_stat_get_db_commit_latency` 関数を呼び出す前に、`\gset` を使用して `oid` 引数の可変を定義し、接続しているデータベースからその値を設定します。

```
––Get the oid value from the connected database before calling aurora_stat_get_db_commit_latency
=> SELECT oid
     FROM pg_database
    WHERE datname=(SELECT current_database()) \gset
=> SELECT * 
     FROM aurora_stat_get_db_commit_latency(:oid);
   
 aurora_stat_get_db_commit_latency
-----------------------------------
                        1424279160
```

次の例では、`pg_database` クラスターの `mydb` データベース用の累積コミットレイテンシーを取得します。次に、この統計をリセットするには `pg_stat_reset` 関数を呼び出し、結果を表示します。最後に `pg_stat_get_db_stat_reset_time` 関数を使用して、この統計が最後にリセットされた時刻をチェックします。

```
=> SELECT oid,
    datname,
    aurora_stat_get_db_commit_latency(oid)
    FROM pg_database
    WHERE datname = 'mydb';
     
  oid  |  datname  | aurora_stat_get_db_commit_latency
-------+-----------+-----------------------------------
 16427 | mydb      |                           3320370


=> SELECT pg_stat_reset();
 pg_stat_reset
---------------

    
=> SELECT oid,
          datname,
          aurora_stat_get_db_commit_latency(oid)
     FROM pg_database
    WHERE datname = 'mydb';    
  oid  |  datname  | aurora_stat_get_db_commit_latency
-------+-----------+-----------------------------------
 16427 | mydb      |                                 6
    
    
=> SELECT * 
     FROM pg_stat_get_db_stat_reset_time(16427);
     
 pg_stat_get_db_stat_reset_time
--------------------------------
 2021-04-29 21:36:15.707399+00
```

# aurora\$1stat\$1logical\$1wal\$1cache
<a name="aurora_stat_logical_wal_cache"></a>

スロットごとのログ先行書き込み (WAL) のキャッシュ使用状況を表示します。

## 構文
<a name="aurora_stat_logical_wal_cache-syntax"></a>



```
SELECT * FROM aurora_stat_logical_wal_cache()
```

## 引数
<a name="aurora_stat_logical_wal_cache-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_logical_wal_cache-return-type"></a>

次の列を含む SETOF レコード。
+ `name` – レプリケーションスロットの名前。
+ `active_pid`— Walsender プロセスの ID。
+ `cache_hit`— 前回のリセット以降の WAL キャッシュヒットの総数。
+ `cache_miss`— 前回のリセット以降の WAL キャッシュミスの総数。
+ `blks_read`— WAL キャッシュの読み取りリクエストの総数。
+ `hit_rate`— WAL キャッシュヒットレート (cache\$1hit / blks\$1read)。
+ `last_reset_timestamp`— カウンターが最後にリセットされた時刻。

## 使用に関する注意事項
<a name="aurora_stat_logical_wal_cache-usage-notes"></a>

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ 15.2 以降のすべてのバージョン
+ 14.7 以降のバージョン
+ 13.8 以降のバージョン
+ 12.12 以降のバージョン
+ 11.17 以降のバージョン

## 例
<a name="aurora_stat_logical_wal_cache-examples"></a>

次の例は、一方のみがアクティブな 2 つのレプリケーションスロットを示しています。`aurora_stat_logical_wal_cache` 関数。

```
=> SELECT * 
     FROM aurora_stat_logical_wal_cache();
    name    | active_pid | cache_hit | cache_miss | blks_read | hit_rate |     last_reset_timestamp
------------+------------+-----------+------------+-----------+----------+-------------------------------
 test_slot1 |      79183 |        24 |          0 |        24 | 100.00%  | 2022-08-05 17:39:56.830635+00
 test_slot2 |            |         1 |          0 |         1 | 100.00%  | 2022-08-05 17:34:04.036795+00
(2 rows)
```

# aurora\$1stat\$1memctx\$1usage
<a name="aurora_stat_memctx_usage"></a>

各 PostgreSQL プロセスのメモリコンテキスト使用状況を報告します。

## 構文
<a name="aurora_stat_memctx_usage-syntax"></a>

```
aurora_stat_memctx_usage()
```

## 引数
<a name="aurora_stat_memctx_usage-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_memctx_usage-return-type"></a>

次の列を含む SETOF レコード。
+ `pid` - プロセスの ID。
+ `name` – メモリコンテキストの名前。
+ `allocated` — 基になるメモリサブシステムからメモリコンテキストによって取得されたバイト数。
+ `used` — メモリコンテキストのクライアントにコミットされたバイト数。
+ `instances` — このタイプの現在存在するコンテキストの数。

## 使用に関する注意事項
<a name="aurora_stat_memctx_usage-usage-notes"></a>

この関数は、各 PostgreSQL プロセスのメモリコンテキスト使用状況を表示します。一部のプロセスには `anonymous` というラベルが付いています。プロセスには制限付きのキーワードが含まれているため、公開されません。

この関数は、次の Aurora PostgreSQL バージョン以降で使用できます。
+ 15.3 以降の 15 バージョン
+ 14.8 以降の 14 バージョン
+ 13.11 以降の 13 バージョン
+ 12.15 以降の 12 バージョン
+ 11.20 以降の 11 バージョン

## 例
<a name="aurora_stat_memctx_usage-examples"></a>

次の例は、`aurora_stat_memctx_usage` 関数呼び出しの結果を示しています。

```
=> SELECT * 
     FROM aurora_stat_memctx_usage();
  
    pid| name                            | allocated |   used  | instances 
-------+---------------------------------+-----------+---------+-----------
123864 | Miscellaneous                   |     19520 |   15064 |         3 
123864 | Aurora File Context             |      8192 |     616 |         1 
123864 | Aurora WAL Context              |      8192 |     296 |         1 
123864 | CacheMemoryContext              |    524288 |  422600 |         1 
123864 | Catalog tuple context           |     16384 |   13736 |         1 
123864 | ExecutorState                   |     32832 |   28304 |         1 
123864 | ExprContext                     |      8192 |    1720 |         1 
123864 | GWAL record construction        |      1024 |     832 |         1 
123864 | MdSmgr                          |      8192 |     296 |         1 
123864 | MessageContext                  |    532480 |  353832 |         1 
123864 | PortalHeapMemory                |      1024 |     488 |         1 
123864 | PortalMemory                    |      8192 |     576 |         1 
123864 | printtup                        |      8192 |     296 |         1 
123864 | RelCache hash table entries     |      8192 |    8152 |         1 
123864 | RowDescriptionContext           |      8192 |    1344 |         1 
123864 | smgr relation context           |      8192 |     296 |         1 
123864 | Table function arguments        |      8192 |     352 |         1 
123864 | TopTransactionContext           |      8192 |     632 |         1 
123864 | TransactionAbortContext         |     32768 |     296 |         1 
123864 | WAL record construction         |     50216 |   43904 |         1 
123864 | hash table                      |     65536 |   52744 |         6 
123864 | Relation metadata               |    191488 |  124240 |        87 
104992 | Miscellaneous                   |      9280 |    7728 |         3 
104992 | Aurora File Context             |      8192 |     376 |         1 
104992 | Aurora WAL Context              |      8192 |     296 |         1 
104992 ||Autovacuum Launcher             |      8192 |     296 |         1 
104992 | Autovacuum database list        |     16384 |     744 |         2 
104992 | CacheMemoryContext              |    262144 |  140288 |         1 
104992 | Catalog tuple context           |      8192 |     296 |         1 
104992 | GWAL record construction        |      1024 |     832 |         1 
104992 | MdSmgr                          |      8192 |     296 |         1 
104992 | PortalMemory                    |      8192 |     296 |         1 
104992 | RelCache hash table entries     |      8192 |     296 |         1 
104992 | smgr relation context           |      8192 |     296 |         1 
104992 | Autovacuum start worker (tmp)   |      8192 |     296 |         1 
104992 | TopTransactionContext           |     16384 |     592 |         2 
104992 | TransactionAbortContext         |     32768 |     296 |         1 
104992 | WAL record construction         |     50216 |   43904 |         1 
104992 | hash table                      |     49152 |   34024 |         4 
(39 rows)
```

一部の制限付きキーワードは非表示になり、出力は次のようになります。

```
postgres=>SELECT * 
     FROM aurora_stat_memctx_usage();
   
    pid| name                            | allocated |   used  | instances 
-------+---------------------------------+-----------+---------+-----------
  5482 | anonymous                       |      8192 |     456 |         1 
  5482 | anonymous                       |      8192 |     296 |         1
```

# aurora\$1stat\$1optimized\$1reads\$1cache
<a name="aurora_stat_optimized_reads_cache"></a>

この関数は階層型キャッシュの統計情報を表示します。

## 構文
<a name="aurora_stat_optimized_reads_cache-syntax"></a>

 

```
aurora_stat_optimized_reads_cache()
```

## 引数
<a name="aurora_stat_optimized_reads_cache-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_optimized_reads_cache-return-type"></a>

次の列を含む SETOF レコード。
+ `total_size` – Optimized Reads キャッシュの合計サイズ。
+ `used_size` – Optimized Reads キャッシュの使用済みページサイズ。

## 使用に関する注意事項
<a name="aurora_stat_optimized_reads_cache-usage-notes"></a>

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ 15.4 以降の 15 バージョン
+ 14.9 以降の 14 バージョン

## 例
<a name="aurora_stat_optimized_reads_cache-examples"></a>

次の例は、r6gd.8xlarge インスタンスでの出力を示しています。

```
=> select pg_size_pretty(total_size) as total_size, pg_size_pretty(used_size) 
                as used_size from aurora_stat_optimized_reads_cache();    
total_size | used_size
-----------+-----------
1054 GB    | 975 GB
```

# aurora\$1stat\$1plans
<a name="aurora_stat_plans"></a>

追跡されたすべての実行計画の行を返します。

## 構文
<a name="aurora_stat_plans-syntax"></a>

 

```
aurora_stat_plans(
    showtext
)
```

## 引数
<a name="aurora_stat_plans-arguments"></a>
+ showtext – クエリと計画のテキストを表示します。有効な値は、NULL、true または false です。True はクエリと計画のテキストを表示します。

## 戻り型
<a name="aurora_stat_plans-return-type"></a>

`aurora_stat_statements` からのすべての列とそれに続く追加の列を含む追跡計画ごとに行を返します。
+ planid - 計画識別子
+ explain\$1plan – 計画の説明テキスト
+ plan\$1type:
  + `no plan` - 計画はキャプチャされませんでした
  + `estimate` - 推定コストでキャプチャされた計画
  + `actual` - EXPLAIN ANALYZE でキャプチャされた計画
+ plan\$1captured\$1time – 計画が最後にキャプチャされた時刻

## 使用に関する注意事項
<a name="aurora_stat_plans-usage-notes"></a>

追跡する計画については、`aurora_compute_plan_id` が有効で、`pg_stat_statements` が `shared_preload_libraries` 内にある必要があります。

使用可能な計画の数は、`pg_stat_statements.max` パラメータで設定された値によって制御されます。`aurora_compute_plan_id` を有効にすると、`aurora_stat_plans` でこの指定された値までの計画を追跡できます。

この関数は、Aurora PostgreSQL バージョン 14.10、15.5、およびそれ以降のすべてのバージョンで使用できます。

## 例
<a name="aurora_stat_plans-examples"></a>

以下の例では、クエリ識別子 -5471422286312252535 の 2 つの計画がキャプチャされ、ステートメントの統計が planid によって追跡されます。

```
db1=# select calls, total_exec_time, planid, plan_captured_time, explain_plan
db1-# from aurora_stat_plans(true)
db1-# where queryid = '-5471422286312252535'   

calls    |  total_exec_time   |   planid    |      plan_captured_time       |                           explain_plan                           
---------+--------------------+-------------+-------------------------------+------------------------------------------------------------------
 1532632 |  3209846.097107853 |  1602979607 | 2023-10-31 03:27:16.925497+00 | Update on pgbench_branches                                      +
         |                    |             |                               |   ->  Bitmap Heap Scan on pgbench_branches                      +
         |                    |             |                               |         Recheck Cond: (bid = 76)                                +
         |                    |             |                               |         ->  Bitmap Index Scan on pgbench_branches_pkey          +
         |                    |             |                               |               Index Cond: (bid = 76)
   61365 | 124078.18012200127 | -2054628807 | 2023-10-31 03:20:09.85429+00  | Update on pgbench_branches                                      +
         |                    |             |                               |   ->  Index Scan using pgbench_branches_pkey on pgbench_branches+
         |                    |             |                               |         Index Cond: (bid = 17)
```

# aurora\$1stat\$1reset\$1wal\$1cache
<a name="aurora_stat_reset_wal_cache"></a>

論理 WAL キャッシュのカウンターをリセットします。

## 構文
<a name="aurora_stat_reset_wal_cache-syntax"></a>

特定のスロットをリセットするには

```
SELECT * FROM aurora_stat_reset_wal_cache('slot_name')
```

すべてのスロットをリセットするには

```
SELECT * FROM aurora_stat_reset_wal_cache(NULL)
```

## 引数
<a name="aurora_stat_reset_wal_cache-arguments"></a>

`NULL`、または `slot_name`

## 戻り型
<a name="aurora_stat_reset_wal_cache-return-type"></a>

ステータスメッセージ、テキスト文字列
+ 論理 WAL キャッシュカウンターのリセット — 成功メッセージ このテキストは、関数が成功すると返されます。
+ レプリケーションスロットが見つかりません。もう一度試してください。– 障害メッセージ このテキストは、関数が成功しなかった場合に返されます。

## 使用に関する注意事項
<a name="aurora_stat_reset_wal_cache-usage-notes"></a>

この関数は、次のバージョンで使用できます。
+ Aurora PostgreSQL 14.5 以降
+ Aurora PostgreSQL バージョン 13.8 以降
+ Aurora PostgreSQL バージョン 12.12 以降
+ Aurora PostgreSQL バージョン 11.17 以降

## 例
<a name="aurora_stat_reset_wal_cache-examples"></a>

次の例では、`aurora_stat_reset_wal_cache` 関数を使用して `test_results` という名前のスロットをリセットし、存在しないスロットをリセットします。

```
=> SELECT * 
     FROM aurora_stat_reset_wal_cache('test_slot');
aurora_stat_reset_wal_cache
--------------------------------------
 Reset the logical wal cache counter.
(1 row)
=> SELECT * 
     FROM aurora_stat_reset_wal_cache('slot-not-exist');
aurora_stat_reset_wal_cache
-----------------------------------------------
 Replication slot not found. Please try again.
(1 row)
```

# aurora\$1stat\$1resource\$1usage
<a name="aurora_stat_resource_usage"></a>

すべての Aurora PostgreSQL バックエンドプロセスのバックエンドリソースメトリクスと cpu 使用率で構成されるリアルタイムのリソース使用率をレポートします。

## 構文
<a name="aurora_stat_resource_usage-syntax"></a>

```
aurora_stat_resource_usage()
```

## 引数
<a name="aurora_stat_resource_usage-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_resource_usage-return-type"></a>

列を含む SETOF レコード:
+ pid - Process identifier
+ allocated\$1memory - プロセスによって割り当てられた合計メモリ (バイト単位)
+ used\$1memory - プロセスによって実際に使用されたメモリ (バイト単位)
+ cpu\$1usage\$1percent - プロセスの CPU 使用率

## 使用に関する注意事項
<a name="aurora_stat_resource_usage-usage-notes"></a>

この関数は、各 Aurora PostgreSQL バックエンドプロセスのバックエンドリソースの使用状況を表示します。

この関数は、次の Aurora PostgreSQL バージョン以降で使用できます。
+ Aurora PostgreSQL 17.5 以降の バージョン 17
+ Aurora PostgreSQL 16.9 以降の バージョン 16
+ Aurora PostgreSQL 15.13 以降の バージョン 15
+ Aurora PostgreSQL 14.18 以降の バージョン 14
+ Aurora PostgreSQL 13.21 以降の バージョン 13

## 例
<a name="aurora_stat_resource_usage-examples"></a>

以下は `aurora_stat_resource_usage` 関数の出力例です。

```
=> select * from aurora_stat_resource_usage();
 pid  | allocated_memory | used_memory |   cpu_usage_percent   
------+------------------+-------------+-----------------------
  666 |          1074032 |      333544 |   0.00729274882897963
  667 |           787312 |      287360 | 0.0029263928146372746
  668 |          3076776 |     1563488 |  0.006013116835953961
  684 |           803744 |      307480 |  0.002226855426881142
 2401 |          1232992 |      943144 |                     0
  647 |             8000 |         944 |   0.48853387812429855
  659 |           319344 |      243000 | 0.0004135602076683591
  663 |           262000 |      185736 |  0.008181301476644002
  664 |             9024 |        1216 |   0.10992313082653653
(9 rows)
```

# aurora\$1stat\$1statements
<a name="aurora_stat_statements"></a>

すべての `pg_stat_statements` 列を表示し、最後にさらに列を追加します。

## 構文
<a name="aurora_stat_statements-syntax"></a>

 

```
aurora_stat_statements(showtext boolean)
```

## 引数
<a name="aurora_stat_statements-arguments"></a>

*showtext boolean*

## 戻り型
<a name="aurora_stat_statements-return-type"></a>

すべての `pg_stat_statements` 列と以下の追加列を含む SETOF レコード。`pg_stat_statements` 列の詳細については、「[https://www.postgresql.org/docs/current/pgstatstatements.html](https://www.postgresql.org/docs/current/pgstatstatements.html)」を参照してください。

この関数の統計情報は `pg_stat_statements_reset()` を使用してリセットできます。
+ `storage_blks_read` - このステートメントによって Aurora ストレージから読み取られた共有ブロックの総数。
+ `orcache_blks_hit` - このステートメントによる Optimized Reads キャッシュヒットの総数。
+ `storage_blk_read_time` - `track_io_timing` を有効にすると、ステートメントが Aurora ストレージからの共有ブロックの読み取りにかかった合計時間をミリ秒単位で追跡します。それ以外の場合、値は 0 です。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。
+ `local_blk_read_time` - `track_io_timing` を有効にすると、ステートメントがローカルブロックの読み取りにかかった合計時間をミリ秒単位で追跡します。それ以外の場合、値は 0 です。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。
+ `orcache_blk_read_time` - `track_io_timing` を有効にすると、ステートメントが Optimized Reads キャッシュから共有ブロックを読み取るのにかかった合計時間をミリ秒単位で追跡します。それ以外の場合は 0 です。詳細については、[track\$1io\$1timing](https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-IO-TIMING) を参照してください。
+ `total_plan_peakmem` - このステートメントへのすべての呼び出しの計画フェーズ中のピークメモリ値の合計。ステートメント計画中の平均ピークメモリを表示するには、この値を呼び出し回数で割ります。
+ `min_plan_peakmem` – このステートメントへのすべての呼び出しの計画中に検出された最小のピークメモリ値。
+ `max_plan_peakmem` – このステートメントへのすべての呼び出しで検出された、計画中の最大のピークメモリ値。
+ `total_exec_peakmem` - このステートメントへのすべての呼び出しに対する実行フェーズ中のピークメモリ値の合計。ステートメント実行中の平均ピークメモリを表示するには、この値を呼び出し回数で割ります。
+ `min_exec_peakmem` – このステートメントへのすべての呼び出しで実行中に検出された最小のピークメモリ値 (バイト単位)。
+ `max_exec_peakmem` – このステートメントへのすべての呼び出しで実行中に検出された最大のピークメモリ値 (バイト単位)。

**注記**  
`total_plan_peakmen`、`min_plan_peakmem`、および `max_plan_peakmem` は、設定 `pg_stat_statements.track_planning` がオンになっている場合にのみモニタリングされます。

## 使用に関する注意事項
<a name="aurora_stat_statements-usage-notes"></a>

aurora\$1stat\$1statements() 関数を使用するには、`shared_preload_libraries` パラメータに `pg_stat_statements` 拡張子を含める必要があります。

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ 15.4 以降の 15 バージョン
+ 14.9 以降の 14 バージョン

ピークメモリを表示する列は、次のバージョンから使用できます。
+ 16.3 以降のバージョン
+ 15.7 以降のバージョン
+ 14.12 以降のバージョン

## 例
<a name="aurora_stat_statements-examples"></a>

次の例は、すべての pg\$1stat\$1statements 列を保持し、末尾に新しい列を 11 個追加する方法を示しています。

```
=> select * from aurora_stat_statements(true) where query like 'with window_max%';
-[ RECORD 1 ]----------+------------------------------------------------------------------------------------------------
userid                 | 16409
dbid                   | 5
toplevel               | t
queryid                | -8347523682669847482
query                  | with window_max as (select custid, max(scratch) over (order by scratch rows between $1 preceding 
and $2 following) wmax from ts) select sum(wmax), max(custid) from window_max
plans                  | 0
total_plan_time        | 0
min_plan_time          | 0
max_plan_time          | 0
mean_plan_time         | 0
stddev_plan_time       | 0
calls                  | 4
total_exec_time        | 254.105121
min_exec_time          | 57.503164000000005
max_exec_time          | 68.687418
mean_exec_time         | 63.52628025
stddev_exec_time       | 5.150765359979643
rows                   | 4
shared_blks_hit        | 200192
shared_blks_read       | 0
shared_blks_dirtied    | 0
shared_blks_written    | 0
local_blks_hit         | 0
local_blks_read        | 0
local_blks_dirtied     | 0
local_blks_written     | 0
temp_blks_read         | 0
temp_blks_written      | 0
blk_read_time          | 0
blk_write_time         | 0
temp_blk_read_time     | 0
temp_blk_write_time    | 0
wal_records            | 0
wal_fpi                | 0
wal_bytes              | 0
jit_functions          | 0
jit_generation_time    | 0
jit_inlining_count     | 0
jit_inlining_time      | 0
jit_optimization_count | 0
jit_optimization_time  | 0
jit_emission_count     | 0
jit_emission_time      | 0
storage_blks_read      | 0
orcache_blks_hit       | 0
storage_blk_read_time  | 0
local_blk_read_time    | 0
orcache_blk_read_time  | 0
total_plan_peakmem     | 0
min_plan_peakmem       | 0
max_plan_peakmem       | 0
total_exec_peakmem     | 6356224
min_exec_peakmem       | 1589056
max_exec_peakmem       | 1589056
```

# aurora\$1stat\$1system\$1waits
<a name="aurora_stat_system_waits"></a>

Aurora PostgreSQL DB インスタンス用に待機イベント情報をレポートします。

## 構文
<a name="aurora_stat_system_waits-syntax"></a>

 

```
aurora_stat_system_waits()
```

## 引数
<a name="aurora_stat_system_waits-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_system_waits-return-type"></a>

SETOF レコード

## 使用に関する注意事項
<a name="aurora_stat_system_waits-usage-notes"></a>

この関数は、現在接続している DB インスタンスによって生成された各待機イベントの累積待機数と累積待機時間を返します。

返されるレコードセットには、次のフィールドが含まれます。
+ `type_id` - 待機イベントタイプの ID。
+ `event_id` - 待機イベントの ID。
+ `waits` - 待機イベントが発生した回数。
+ `wait_time` - このイベントの待機に費やされた合計時間 (マイクロ秒)。

この関数によって返される統計は、DB インスタンスの再起動時にリセットされます。

## 例
<a name="aurora_stat_system_waits-examples"></a>

次の例は、`aurora_stat_system_waits` 関数呼び出しの結果を示しています。

```
=> SELECT * 
    FROM aurora_stat_system_waits();    
 type_id | event_id  |   waits   |  wait_time
---------+-----------+-----------+--------------
       1 |  16777219 |        11 |        12864
       1 |  16777220 |       501 |       174473
       1 |  16777270 |     53171 |     23641847
       1 |  16777271 |        23 |       319668
       1 |  16777274 |        60 |        12759
.
.
.
      10 | 167772231 |    204596 |    790945212
      10 | 167772232 |         2 |        47729
      10 | 167772234 |         1 |          888
      10 | 167772235 |         2 |           64
```

次の例は、`aurora_stat_wait_event` および `aurora_stat_wait_type` とともにこの関数を使用して、より読みやすい結果を生成する方法を示しています。

```
=> SELECT type_name,
             event_name,
             waits,
             wait_time
        FROM aurora_stat_system_waits()
NATURAL JOIN aurora_stat_wait_event()
NATURAL JOIN aurora_stat_wait_type();

 type_name |       event_name       |  waits   |  wait_time
-----------+------------------------+----------+--------------
 LWLock    | XidGenLock             |       11 |        12864
 LWLock    | ProcArrayLock          |      501 |       174473
 LWLock    | buffer_content         |    53171 |     23641847
 LWLock    | rdsutils               |        2 |        12764
 Lock      | tuple                  |    75686 |   2033956052
 Lock      | transactionid          |  1765147 |  47267583409
 Activity  | AutoVacuumMain         |   136868 |  56305604538
 Activity  | BgWriterHibernate      |     7486 |  55266949471
 Activity  | BgWriterMain           |     7487 |   1508909964
.
.
.
 IO        | SLRURead               |        3 |        11756
 IO        | WALWrite               | 52544463 |    388850428
 IO        | XactSync               |   187073 |    597041642
 IO        | ClogRead               |        2 |        47729
 IO        | OutboundCtrlRead       |        1 |          888
 IO        | OutboundCtrlWrite      |        2 |           64
```

# aurora\$1stat\$1wait\$1event
<a name="aurora_stat_wait_event"></a>

Aurora PostgreSQL でサポートされているすべての待機イベントを一覧表示します。Aurora PostgreSQL のバージョンの詳細については、「[Amazon Aurora PostgreSQL のイベント](AuroraPostgreSQL.Reference.Waitevents.md)」を参照してください。

## 構文
<a name="aurora_stat_wait_event-syntax"></a>

 

```
aurora_stat_wait_event()
```

## 引数
<a name="aurora_stat_wait_event-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_wait_event-return-type"></a>

次の列を含む SETOF レコード。
+ type\$1id - 待機イベントタイプの ID。
+ event\$1id - 待機イベントの ID。
+ type\$1name — 待機タイプ名
+ event\$1name — 待機イベント名

## 使用に関する注意事項
<a name="aurora_stat_wait_event-usage-notes"></a>

ID の代わりに、イベントタイプを持つイベント名を表示するには、`aurora_stat_wait_type` や `aurora_stat_system_waits` などの他の関数とともにこの関数を使用します。この関数によって返される待機イベント名は、`aurora_wait_report` 関数によって返されるものと同じです。

## 例
<a name="aurora_stat_wait_event-examples"></a>

次の例は、`aurora_stat_wait_event` 関数呼び出しの結果を示しています。

```
=>  SELECT * 
    FROM aurora_stat_wait_event();
    
 type_id | event_id  |                event_name
---------+-----------+-------------------------------------------
       1 |  16777216 | <unassigned:0>
       1 |  16777217 | ShmemIndexLock
       1 |  16777218 | OidGenLock
       1 |  16777219 | XidGenLock
.
.
.
       9 | 150994945 | PgSleep
       9 | 150994946 | RecoveryApplyDelay
      10 | 167772160 | BufFileRead
      10 | 167772161 | BufFileWrite
      10 | 167772162 | ControlFileRead
.
.
.
      10 | 167772226 | WALInitWrite
      10 | 167772227 | WALRead
      10 | 167772228 | WALSync
      10 | 167772229 | WALSyncMethodAssign
      10 | 167772230 | WALWrite
      10 | 167772231 | XactSync
.
.
.
      11 | 184549377 | LsnAllocate
```

次の例では、`aurora_stat_wait_type` および `aurora_stat_wait_event` を結合してタイプ名とイベント名を返し、読みやすさを向上させます。

```
=> SELECT *
    FROM aurora_stat_wait_type() t 
    JOIN aurora_stat_wait_event() e 
      ON t.type_id = e.type_id; 

 type_id | type_name | type_id | event_id  |                event_name
---------+-----------+---------+-----------+-------------------------------------------
       1 | LWLock    |       1 |  16777216 | <unassigned:0>
       1 | LWLock    |       1 |  16777217 | ShmemIndexLock
       1 | LWLock    |       1 |  16777218 | OidGenLock
       1 | LWLock    |       1 |  16777219 | XidGenLock
       1 | LWLock    |       1 |  16777220 | ProcArrayLock
.
.
.
       3 | Lock      |       3 |  50331648 | relation
       3 | Lock      |       3 |  50331649 | extend
       3 | Lock      |       3 |  50331650 | page
       3 | Lock      |       3 |  50331651 | tuple
.
.
.
      10 | IO        |      10 | 167772214 | TimelineHistorySync
      10 | IO        |      10 | 167772215 | TimelineHistoryWrite
      10 | IO        |      10 | 167772216 | TwophaseFileRead
      10 | IO        |      10 | 167772217 | TwophaseFileSync
.
.
.
      11 | LSN       |      11 | 184549376 | LsnDurable
```

# aurora\$1stat\$1wait\$1type
<a name="aurora_stat_wait_type"></a>

Aurora PostgreSQL でサポートされているすべての待機タイプを一覧表示します。

## 構文
<a name="aurora_stat_wait_type-syntax"></a>

 

```
aurora_stat_wait_type()
```

## 引数
<a name="aurora_stat_wait_type-arguments"></a>

なし

## 戻り型
<a name="aurora_stat_wait_type-return-type"></a>

次の列を含む SETOF レコード。
+ type\$1id - 待機イベントタイプの ID。
+ type\$1name — 待機タイプ名。

## 使用に関する注意事項
<a name="aurora_stat_wait_type-usage-notes"></a>

ID の代わりにイベントタイプを持つイベント名を表示するには、`aurora_stat_wait_event` や `aurora_stat_system_waits` などの他の関数とともにこの関数を使用します。この関数によって返される待機タイプ名は、`aurora_wait_report` 関数によって返されるものと同じです。

## 例
<a name="aurora_stat_wait_type-examples"></a>

次の例は、`aurora_stat_wait_type` 関数呼び出しの結果を示しています。

```
=> SELECT * 
     FROM aurora_stat_wait_type();     
 type_id | type_name
---------+-----------
       1 | LWLock
       3 | Lock
       4 | BufferPin
       5 | Activity
       6 | Client
       7 | Extension
       8 | IPC
       9 | Timeout
      10 | IO
      11 | LSN
```

# aurora\$1version
<a name="aurora_version"></a>

Amazon Aurora PostgreSQL 互換エディションバージョン番号の文字列値を返します。

## 構文
<a name="aurora_version-syntax"></a>

 

```
aurora_version()
```

## 引数
<a name="aurora_version-arguments"></a>

なし

## 戻り型
<a name="aurora_version-return-type"></a>

CHAR 型または VARCHAR 型の文字列

## 使用に関する注意事項
<a name="aurora_version-usage-notes"></a>

この関数は、Amazon Aurora PostgreSQL 互換エディションデータベースエンジンのバージョンを表示します。バージョン番号は、*メジャー*.*マイナー*.*パッチ* という形式の文字列として返されます。Aurora PostgreSQL のバージョン番号の詳細については、「[Aurora バージョン番号](AuroraPostgreSQL.Updates.md#AuroraPostgreSQL.Updates.Versions.AuroraNumber)」を参照してください。

Aurora PostgreSQL DB クラスターのメンテナンスウィンドウを設定することで、マイナーバージョンアップグレードを適用するタイミングを選択できます。この方法の詳細は、「[Amazon Aurora DB クラスターのメンテナンス](USER_UpgradeDBInstance.Maintenance.md)」を参照してください。

PostgreSQL バージョン 13.3、12.8、11.13、10.18、およびそれ以降のすべてのリリースからは、Aurora バージョン番号は PostgreSQL バージョン番号に従います。すべての Aurora PostgreSQL リリースの詳細については、『*Aurora PostgreSQL のリリースノート*』の「[Amazon Aurora PostgreSQL の更新](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraPostgreSQLReleaseNotes/AuroraPostgreSQL.Updates.html)」を参照してください。

## 例
<a name="aurora_version-examples"></a>

次の例は、[PostgreSQL 12.7、Aurora PostgreSQL リリース 4.2](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraPostgreSQLReleaseNotes/AuroraPostgreSQL.Updates.html#AuroraPostgreSQL.Updates.20180305.42) を実行している Aurora PostgreSQL DB クラスターに対して `aurora_version` 関数を呼び出し、その後、[Aurora PostgreSQL バージョン 13.3](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraPostgreSQLReleaseNotes/AuroraPostgreSQL.Updates.html#AuroraPostgreSQL.Updates.20180305.133X) を実行しているクラスターに対して同じ関数を実行した結果を示しています。

```
=> SELECT * FROM aurora_version();
aurora_version
----------------
 4.2.2
SELECT * FROM aurora_version();
aurora_version
----------------
 13.3.0
```

この例は、Aurora PostgreSQL のバージョンに関する詳細を取得するために、さまざまなオプションを指定して関数を使用する方法を示しています。この例では、PostgreSQL のバージョン番号とは異なる Aurora バージョン番号があります。

```
=> SHOW SERVER_VERSION;
 server_version
----------------
 12.7
(1 row)

=> SELECT * FROM aurora_version();
aurora_version
----------------
 4.2.2
(1 row)
    
=> SELECT current_setting('server_version') AS "PostgreSQL Compatiblility";
PostgreSQL Compatiblility
---------------------------
 12.7
(1 row)

=> SELECT version() AS "PostgreSQL Compatiblility Full String";
PostgreSQL Compatiblility Full String
-------------------------------------------------------------------------------------------------------------
 PostgreSQL 12.7 on aarch64-unknown-linux-gnu, compiled by aarch64-unknown-linux-gnu-gcc (GCC) 7.4.0, 64-bit
(1 row) 
    
=> SELECT 'Aurora: '
    || aurora_version()
    || ' Compatible with PostgreSQL: '
    || current_setting('server_version') AS "Instance Version";
Instance Version
------------------------------------------------
 Aurora: 4.2.2 Compatible with PostgreSQL: 12.7
(1 row)
```

次の例では、前の例と同じオプションで関数を使用します。この例では、PostgreSQL のバージョン番号とは異なる Aurora バージョン番号はありません。

```
=> SHOW SERVER_VERSION;
server_version
----------------
 13.3

=> SELECT * FROM aurora_version();
aurora_version
----------------
 13.3.0
=> SELECT current_setting('server_version') AS "PostgreSQL Compatiblility";
PostgreSQL Compatiblility
---------------------------
 13.3

=> SELECT version() AS "PostgreSQL Compatiblility Full String";
PostgreSQL Compatiblility Full String
-------------------------------------------------------------------------------------------------
 PostgreSQL 13.3 on x86_64-pc-linux-gnu, compiled by x86_64-pc-linux-gnu-gcc (GCC) 7.4.0, 64-bit
=> SELECT 'Aurora: ' 
    || aurora_version() 
    || ' Compatible with PostgreSQL: ' 
    || current_setting('server_version') AS "Instance Version";
Instance Version
-------------------------------------------------------
 Aurora: 13.3.0 Compatible with PostgreSQL: 13.3
```

# aurora\$1volume\$1logical\$1start\$1lsn
<a name="aurora_volume_logical_start_lsn"></a>

Aurora クラスターボリュームの論理先書きログ (WAL) ストリーム内のレコードの先頭を識別するために使用されるログシーケンス番号 (LSN) を返します。

## 構文
<a name="aurora_volume_logical_start_lsn-syntax"></a>

 

```
aurora_volume_logical_start_lsn()
```

## 引数
<a name="aurora_volume_logical_start_lsn-arguments"></a>

なし

## 戻り型
<a name="aurora_volume_logical_start_lsn-return-type"></a>

`pg_lsn`

## 使用に関する注意事項
<a name="aurora_volume_logical_start_lsn-usage-notes"></a>

この関数は、特定の Aurora クラスターボリュームの論理 WAL ストリーム内のレコードの先頭を識別します。この関数は、論理レプリケーションと Aurora 高速クローニングを使用してメジャーバージョンアップグレードを実行し、スナップショットまたはデータベースクローンを作成する LSN を決定するときに使用できます。その後、論理レプリケーションを使用して、LSN の後に記録された新しいデータを継続的にストリーミングし、パブリッシャーからサブスクライバーへの変更を同期できます。

論理レプリケーションをメジャーバージョンアップグレードに使用する方法の詳細については、「[論理レプリケーションを使用して Aurora PostgreSQL のメジャーバージョンアップグレードを実行する](AuroraPostgreSQL.MajorVersionUpgrade.md)」を参照してください。

この関数は、次の Aurora PostgreSQL バージョンで使用できます。
+ バージョン 15 の 15.2 以降
+ バージョン 14 の中の 14.3 以降
+ バージョン 13 の 13.6 以降
+ バージョン 12 の 12.10 以降
+ 11.15 以上の 11 バージョン
+ 10.20 以上の 10 バージョン

## 例
<a name="aurora_volume_logical_start_lsn-examples"></a>

次のクエリを使用してログシーケンス番号 (LSN) を取得できます。

```
postgres=> SELECT aurora_volume_logical_start_lsn();
            
aurora_volume_logical_start_lsn 
---------------
0/402E2F0
(1 row)
```

# aurora\$1wait\$1report
<a name="aurora_wait_report"></a>

この関数は、期間中の待機イベントアクティビティを表示します。

## 構文
<a name="aurora_wait_report-syntax"></a>

 

```
aurora_wait_report([time])
```

## 引数
<a name="aurora_wait_report-arguments"></a>

 *時間 (オプション)*   
秒単位の時間。デフォルトは 10 秒です。

## 戻り型
<a name="aurora_wait_report-return-type"></a>

次の列を含む SETOF レコード。
+ type\$1name — 待機タイプ名
+ event\$1name — 待機イベント名
+ wait — 待機数
+ wait\$1time — ミリ秒単位の待機時間 
+ ms\$1per\$1wait — 待機数による平均ミリ秒
+ waits\$1per\$1xact — 1 トランザクションの数による平均待機数
+ ms\$1per\$1wait — 待機数による平均ミリ秒

## 使用に関する注意事項
<a name="aurora_wait_report-usage-notes"></a>

この関数は、PostgreSQL 9.6.6 以上のバージョンと互換性がある Aurora PostgreSQL リリース 1.1 で使用できます。

この関数を使用するには、まず、次のように Aurora PostgreSQL `aurora_stat_utils` 拡張機能を作成する必要があります。

```
=> CREATE extension aurora_stat_utils;
CREATE EXTENSION
```

使用可能な Aurora PostgreSQL 拡張機能バージョンの詳細については、『*Aurora PostgreSQL のリリースノート*』の「[Amazon Aurora PostgreSQL の拡張機能バージョン](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraPostgreSQLReleaseNotes/AuroraPostgreSQL.Extensions.html)」を参照してください。

この関数は、aurora\$1stat\$1system\$1waits() 関数と pg\$1stat\$1database PostgreSQL 統計ビューからの統計データの 2 つのスナップショットを比較して、インスタンスレベルの待機イベントを計算します。

`aurora_stat_system_waits()` と `pg_stat_database` の詳細については、『*PostgreSQL ドキュメント*』の「[統計コレクター](https://www.postgresql.org/docs/current/monitoring-stats.html#PG-STAT-DATABASE-VIEW)」を参照してください。

この関数を実行すると、最初のスナップショットを取得し、指定された秒数だけ待ってから、2 番目のスナップショットを取得します。この関数は 2 つのスナップショットを比較し、差を返します。この差は、その時間間隔におけるインスタンスのアクティビティを表します。

ライターインスタンスでは、この関数はコミットされたトランザクションの数と TPS (1 秒あたりのトランザクション) も表示します。この関数は、インスタンスレベルで情報を返し、インスタンス上のすべてのデータベースを含みます。

## 例
<a name="aurora_wait_report-examples"></a>

この例は、aurora\$1stat\$1utils 拡張機能を作成して、aurora\$1wait\$1report 関数を使用できるようにする方法を示しています。

```
=> CREATE extension aurora_stat_utils;
CREATE EXTENSION
```

この例は、10 秒間の待機レポートをチェックする方法を示しています。

```
=> SELECT *
     FROM aurora_wait_report();
NOTICE:  committed 34 transactions in 10 seconds (tps 3)
 type_name |    event_name     | waits | wait_time | ms_per_wait | waits_per_xact | ms_per_xact
-----------+-------------------+-------+-----------+-------------+----------------+-------------
 Client    | ClientRead        |    26 |  30003.00 |    1153.961 |           0.76 |     882.441
 Activity  | WalWriterMain     |    50 |  10051.32 |     201.026 |           1.47 |     295.627
 Timeout   | PgSleep           |     1 |  10049.52 |   10049.516 |           0.03 |     295.574
 Activity  | BgWriterHibernate |     1 |  10048.15 |   10048.153 |           0.03 |     295.534
 Activity  | AutoVacuumMain    |    18 |   9941.66 |     552.314 |           0.53 |     292.402
 Activity  | BgWriterMain      |     1 |    201.09 |     201.085 |           0.03 |       5.914
 IO        | XactSync          |    15 |     25.34 |       1.690 |           0.44 |       0.745
 IO        | RelationMapRead   |    12 |      0.54 |       0.045 |           0.35 |       0.016
 IO        | WALWrite          |    84 |      0.21 |       0.002 |           2.47 |       0.006
 IO        | DataFileExtend    |     1 |      0.02 |       0.018 |           0.03 |       0.001
```

この例は、60 秒間の待機レポートをチェックする方法を示しています。

```
=> SELECT *
     FROM aurora_wait_report(60);
NOTICE:  committed 1544 transactions in 60 seconds (tps 25)
 type_name |       event_name       |  waits  | wait_time | ms_per_wait | waits_per_xact | ms_per_xact
-----------+------------------------+---------+-----------+-------------+----------------+-------------
 Lock      | transactionid          |    6422 | 477000.53 |      74.276 |           4.16 |     308.938
 Client    | ClientRead             |    8265 | 270752.99 |      32.759 |           5.35 |     175.358
 Activity  | CheckpointerMain       |       1 |  60100.25 |   60100.246 |           0.00 |      38.925
 Timeout   | PgSleep                |       1 |  60098.49 |   60098.493 |           0.00 |      38.924
 Activity  | WalWriterMain          |     296 |  60010.99 |     202.740 |           0.19 |      38.867
 Activity  | AutoVacuumMain         |     107 |  59827.84 |     559.139 |           0.07 |      38.749
 Activity  | BgWriterMain           |     290 |  58821.83 |     202.834 |           0.19 |      38.097
 IO        | XactSync               |    1295 |  55220.13 |      42.641 |           0.84 |      35.764
 IO        | WALWrite               | 6602259 |  47810.94 |       0.007 |        4276.07 |      30.966
 Lock      | tuple                  |     473 |  29880.67 |      63.173 |           0.31 |      19.353
 LWLock    | buffer_mapping         |     142 |   3540.13 |      24.930 |           0.09 |       2.293
 Activity  | BgWriterHibernate      |     290 |   1124.15 |       3.876 |           0.19 |       0.728
 IO        | BufFileRead            |    7615 |    618.45 |       0.081 |           4.93 |       0.401
 LWLock    | buffer_content         |      73 |    345.93 |       4.739 |           0.05 |       0.224
 LWLock    | lock_manager           |      62 |    191.44 |       3.088 |           0.04 |       0.124
 IO        | RelationMapRead        |      72 |      5.16 |       0.072 |           0.05 |       0.003
 LWLock    | ProcArrayLock          |       1 |      2.01 |       2.008 |           0.00 |       0.001
 IO        | ControlFileWriteUpdate |       2 |      0.03 |       0.013 |           0.00 |       0.000
 IO        | DataFileExtend         |       1 |      0.02 |       0.018 |           0.00 |       0.000
 IO        | ControlFileSyncUpdate  |       1 |      0.00 |       0.000 |           0.00 |       0.000
```