

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 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) 和 [利用 Amazon CloudWatch 指標對 Amazon RDS 做出更好的決策](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
```