將 Amazon Aurora MySQL 日誌發佈到 Amazon CloudWatch 日誌 - Amazon Aurora

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

將 Amazon Aurora MySQL 日誌發佈到 Amazon CloudWatch 日誌

您可以設定 Aurora MySQL 資料庫叢集,將一般、緩慢、稽核和錯誤日誌資料發佈到 Amazon CloudWatch 日誌中的日誌群組。使用 CloudWatch Logs,您可以對記錄資料執行即時分析,並用 CloudWatch 來建立警示和檢視指標。您可以使用 CloudWatch 日誌將日誌記錄存儲在高度耐用的存儲中。

若要將記錄發佈到 CloudWatch 記錄檔,必須啟用相應的記錄檔。依預設會啟用錯誤日誌,但您必須明確啟用其他類型的日誌。如需在 MySQL 中啟用日誌的相關資訊,請參閱 MySQL 文件中的選取一般查詢和緩慢查詢日誌輸出目的地。如需啟用 Aurora MySQL 稽核日誌的詳細資訊,請參閱 啟用進階稽核

注意
  • 如果已停止匯出日誌資料,Aurora 不會刪除現有的日誌群組或日誌串流。如果停用匯出記錄資料, CloudWatch 記錄檔中會保留現有的記錄資料 (視記錄保留而定),而且您仍會對儲存的稽核記錄資料產生費用。您可以使用 CloudWatch 記錄主控台、或記錄 API 刪除記錄串流和記 CloudWatch 錄群組。 AWS CLI

  • 將稽核記錄發佈至 CloudWatch 記錄的另一種方式是啟用進階稽核,然後建立自訂資料庫叢集參數群組,並將server_audit_logs_upload參數設定為1server_audit_logs_upload資料庫叢集參數的預設值為0。如需啟用進階稽核的資訊,請參閱使用進階稽核與 Amazon Aurora MySQL 資料庫叢集搭配

    如果使用此替代方法,則必須具有 IAM 角色才能存取 CloudWatch 記錄,並將此角色的aws_default_logs_role叢集層級參數設定為 ARN。如需有關建立角色的詳細資訊,請參閱 設定 IAM 角色以存取 AWS 服務。不過,如果您具有AWSServiceRoleForRDS服務連結的角色,則它會提供對 CloudWatch 記錄檔的存取權,並覆寫任何自訂定義的角色。如需 Amazon RDS 之服務連結角色的相關資訊,請參閱 使用 Amazon Aurora 的服務連結角色

  • 如果您不想將稽核記錄匯出至記 CloudWatch 錄檔,請確定已停用所有匯出稽核記錄的方法。這些方法包括 AWS Management Console、 AWS CLI、RDS API 和 server_audit_logs_upload 參數。

  • Aurora Serverless v1資料庫叢集的程序與具有佈建或資料庫執行個體的資料Aurora Serverless v2庫叢集略有不同。 Aurora Serverless v1叢集會自動上傳您透過組態參數啟用的所有記錄。

    因此,您可以開啟或關閉Aurora Serverless v1資料庫叢集參數群組中的不同記錄類型,以開啟或關閉資料庫叢集的記錄檔上傳。您不會透過 AWS Management Console、 AWS CLI或 RDS API 修改叢集本身的設定。如需開啟和關閉 Aurora Serverless v1 叢集 MySQL 日誌的詳細資訊,請參閱 Aurora Serverless v1 的參數群組

您可以使用主控台將已佈建叢集的 Aurora MySQL CloudWatch 記錄檔發佈到記錄檔。

從主控台發佈 Aurora MySQL 日誌
  1. 前往 https://console.aws.amazon.com/rds/,開啟 Amazon RDS 主控台。

  2. 在導覽窗格中,選擇 Databases (資料庫)。

  3. 選擇您要發佈日誌資料的 Aurora MySQL 資料庫叢集。

  4. 選擇 Modify (修改)

  5. 在 [記錄匯出] 區段中,選擇您要開始發佈至 CloudWatch 記錄檔的記錄檔。

  6. 選擇 Continue (繼續),然後在摘要頁面上選擇 Modify DB Cluster (修改資料庫叢集)

您可以使用 AWS CLI 針對已佈建的叢集發佈 Aurora MySQL 記錄。若要這麼做,您可以使用下列選項執行modify-db-cluster AWS CLI 命令:

  • --db-cluster-identifier—資料庫叢集識別符

  • --cloudwatch-logs-export-configuration為資料庫叢集啟用匯出至記錄檔的 CloudWatch 記錄類型的組態設定。

您也可以執行下列其中一個 AWS CLI 命令來發佈 Aurora MySQL 日誌:

使用下列選項執行下列其中一個 AWS CLI 命令:

  • --db-cluster-identifier—資料庫叢集識別符

  • --engine — 資料庫引擎。

  • --enable-cloudwatch-logs-exports為資料庫叢集啟用匯出至記錄檔的 CloudWatch 記錄類型的組態設定。

視您執行的 AWS CLI 命令而定,可能需要其他選項。

下列命令會修改現有的 Aurora MySQL 資料庫叢集,以將記錄檔發佈至 CloudWatch 記錄檔。

對於LinuxmacOS、或Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","general","slowquery","audit"]}'

在 Windows 中:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","general","slowquery","audit"]}'

下列命令會建立 Aurora MySQL 資料庫叢集,以將記錄檔發佈至 CloudWatch 記錄檔。

對於LinuxmacOS、或Unix:

aws rds create-db-cluster \ --db-cluster-identifier mydbcluster \ --engine aurora \ --enable-cloudwatch-logs-exports '["error","general","slowquery","audit"]'

在 Windows 中:

aws rds create-db-cluster ^ --db-cluster-identifier mydbcluster ^ --engine aurora ^ --enable-cloudwatch-logs-exports '["error","general","slowquery","audit"]'

您可以透過 RDS API 推送佈建的叢集 Aurora MySQL 日誌。若要執行此操作,您可以執行 ModifyDBCluster 操作並指定下列選項:

  • DBClusterIdentifier—資料庫叢集識別符

  • CloudwatchLogsExportConfiguration為資料庫叢集啟用匯出至記錄檔的 CloudWatch 記錄類型的組態設定。

您也可以執行下列其中一個 RDS API 操作,以利用 RDS API 來發佈 Aurora MySQL 日誌:

請搭配下列參數執行 RDS API 操作:

  • DBClusterIdentifier—資料庫叢集識別符

  • Engine — 資料庫引擎。

  • EnableCloudwatchLogsExports為資料庫叢集啟用匯出至記錄檔的 CloudWatch 記錄類型的組態設定。

視您執行的 AWS CLI 命令而定,可能需要其他參數。

在 Amazon 中監控日誌事件 CloudWatch

啟用 Aurora MySQL 日誌事件後,您可以監視 Amazon CloudWatch 日誌中的事件。針對 Aurora 資料庫叢集,自動會在下列字首下方建立新的日誌群組,其中 cluster-name 代表資料庫叢集名稱,log_type 代表日誌類型。

/aws/rds/cluster/cluster-name/log_type

例如,若您設定匯出功能來包含 mydbcluster 資料庫叢集的緩慢查詢日誌,則緩慢查詢資料會存放在 /aws/rds/cluster/mydbcluster/slowquery 日誌群組中。

來自叢集中所有執行個體的事件,將會使用不同的記錄串流推送至記錄群組。該行為取決於下列哪個條件為真:

  • 具指定名稱的記錄群組存在。

    Aurora 會使用現有的記錄群組來匯出叢集的記錄資料。如要以預先定義的記錄保留期間、指標篩選條件和客戶存取權來建立記錄群組,您可使用自動化組態 (例如 AWS CloudFormation)。

  • 具指定名稱的日誌群組不存在。

    在執行個體的記錄檔中偵測到相符的記錄項目時,Aurora MySQL 會自動在記錄檔中建立新的 CloudWatch 記錄群組。記錄群組會使用 Never Expire (永不過期) 的預設記錄保留期間。

    若要變更記錄保留期間,請使用 CloudWatch 記錄主控台 AWS CLI、或 CloudWatch 記錄 API。如需變更記錄檔中記錄保留期間的詳細資訊,請參閱變更 CloudWatch 記錄檔中的 CloudWatch 記錄檔資料保留

若要在記錄事件中搜尋資料庫叢集的資訊,請使用 CloudWatch 記錄主控台 AWS CLI、或 CloudWatch 記錄 API。如需搜尋和篩選日誌資料的詳細資訊,請參閱搜尋和篩選日誌資料