本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon RDS for Microsoft SQL Server 資料庫日誌檔案
您可使用 Amazon RDS 主控台、AWS CLI 或 RDS API 存取 Microsoft SQL Server 錯誤記錄、代理程式記錄、追蹤檔案和傾印檔案。如需關於檢視、下載與查看資料庫日誌檔案的資訊,請參閱監控 Amazon RDS 日誌檔案。
保留排程
不論您的資料庫執行個體何時重新啟動,日誌檔案都會每日輪換。下列為 Amazon RDS 上的 Microsoft SQL Server 日誌保留排程。
| 日誌類型 | 保留排程 |
|---|---|
|
錯誤日誌 |
最多會保留 30 個錯誤記錄。Amazon RDS 可能會刪除超過 7 日的錯誤記錄。 |
|
代理程式日誌 |
最多會保留 10 個代理程式記錄。Amazon RDS 可能會刪除超過 7 日的代理程式記錄。 |
|
追蹤檔案 |
追蹤檔案會依據您資料庫執行個體的追蹤檔案保留期間進行保存。預設的追蹤檔案保留期間為 7 天。若要修改您資料庫執行個體的追蹤檔案保留期間,請參閱 設定追蹤和傾印檔案的保留期間。 |
|
傾印檔案 |
傾印檔案會依據您資料庫執行個體的傾印檔案保留期間進行保存。預設的傾印檔案保留期間為 7 天。若要修改您資料庫執行個體的傾印檔案保留期間,請參閱 設定追蹤和傾印檔案的保留期間。 |
使用 rds_read_error_log 程序檢視 SQL Server 錯誤
您可以使用 Amazon RDS 預存程序 rds_read_error_log 來檢視錯誤日誌與代理程式日誌。如需更多詳細資訊,請參閱 檢視錯誤和代理程式日誌。
將 SQL Server 日誌發佈至 Amazon CloudWatch Logs
透過 Amazon RDS for SQL Server,您可以將錯誤和代理程式日誌事件直接發佈至 Amazon CloudWatch Logs。使用 CloudWatch Logs 分析日誌資料,然後使用 CloudWatch 建立警示和檢視指標。
透過 CloudWatch Logs,您可以執行下列操作:
-
將日誌存放在高耐用性儲存空間,並由您定義保留期間。
-
搜尋和篩選日誌資料。
-
在帳戶之間共享日誌資料。
-
將日誌匯出至 Amazon S3。
-
將資料串流至 Amazon OpenSearch Service。
-
使用 Amazon Kinesis Data Streams 即時處理日誌資料。如需詳細資訊,請參閱《適用於 SQL 應用程式的 Amazon Managed Service for Apache Flink 開發人員指南》中的使用 Amazon CloudWatch Logs。
Amazon RDS 將每個 SQL Server 資料庫日誌發佈為日誌群組中獨立的資料庫流。例如,如果您發佈代理程式日誌和錯誤日誌,錯誤資料會存放在 /aws/rds/instance/ 日誌群組的錯誤日誌串流中,而代理程式日誌資料則存放在 my_instance.node1/error/aws/rds/instance/ 日誌群組中。my_instance.node1/agent
對於多可用區域資料庫執行個體,Amazon RDS 會在日誌群組中以兩個獨立的串流形式發佈資料庫日誌。例如,如果您發佈錯誤日誌,錯誤資料會分別存放在錯誤日誌串流 /aws/rds/instance/ 和 my_instance.node1/error/aws/rds/instance/ 中。日誌串流在容錯移轉期間不會變更,而且每個節點的錯誤日誌串流可能包含來自主要或次要執行個體的錯誤日誌。使用多可用區域時,會自動為 my_instance.node2/error/aws/rds/instance/ 建立日誌串流,以存放資料庫執行個體容錯移轉等事件資料。my_instance/rds-events
注意
預設不會將 SQL Server 日誌發佈至 CloudWatch Logs。不支援發佈追蹤檔案和傾印檔案。所有區域都支援將 SQL Server 日誌發佈至 CloudWatch Logs (亞太區域 (香港) 除外)。
從 AWS Management Console 將 SQL Server 資料庫記錄發佈至 CloudWatch Logs
前往 https://console.aws.amazon.com/rds/
,開啟 Amazon RDS 主控台。 -
在導覽窗格中選擇 Databases (資料庫),然後選擇您要修改的資料庫執行個體。
-
選擇 Modify (修改)。
-
在 Log exports (日誌匯出) 區段中,選擇您要開始發佈至 CloudWatch Logs 的日誌。
您可以選擇 Agent log (代理程式日誌)、Error log (錯誤日誌),或兩者皆選。
-
選擇 Continue (繼續),然後在摘要頁面上選擇 Modify DB Instance (修改資料庫執行個體)。
若要發佈 SQL Server 日誌,您可搭配下列參數使用 modify-db-instance 命令:
-
--db-instance-identifier -
--cloudwatch-logs-export-configuration
注意
--cloudwatch-logs-export-configuration 選項的變更一律立即套用到資料庫執行個體。因此,--apply-immediately 和 --no-apply-immediately 選項沒有效果。
您亦可使用下列命令來發佈 SQL Server 日誌:
範例
下列範例建立 SQL Server 資料庫執行個體並啟用發佈至 CloudWatch Logs。--enable-cloudwatch-logs-exports 值是 JSON 字串陣列,可包含 error、agent 或兩者。
針對 Linux、macOS 或 Unix:
aws rds create-db-instance \ --db-instance-identifiermydbinstance\ --enable-cloudwatch-logs-exports '["error","agent"]' \ --db-instance-classdb.m4.large\ --enginesqlserver-se
針對 Windows:
aws rds create-db-instance ^ --db-instance-identifiermydbinstance^ --enable-cloudwatch-logs-exports "[\"error\",\"agent\"]" ^ --db-instance-class db.m4.large ^ --engine sqlserver-se
注意
使用 Windows 命令提示字元時,您必須在 JSON 程式碼中的雙引號 (") 開頭加上反斜線 (\),以逸出雙引號。
範例
下列範例修改現有的 SQL Server 資料庫執行個體,以將日誌檔案發佈至 CloudWatch Logs。--cloudwatch-logs-export-configuration 值為 JSON 物件。此物件的金鑰為 EnableLogTypes,而值為字串陣列,可包含 error、agent 或兩者。
針對 Linux、macOS 或 Unix:
aws rds modify-db-instance \ --db-instance-identifiermydbinstance\ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","agent"]}'
針對 Windows:
aws rds modify-db-instance ^ --db-instance-identifiermydbinstance^ --cloudwatch-logs-export-configuration "{\"EnableLogTypes\":[\"error\",\"agent\"]}"
注意
使用 Windows 命令提示字元時,您必須在 JSON 程式碼中的雙引號 (") 開頭加上反斜線 (\),以逸出雙引號。
範例
下列範例修改現有的 SQL Server 資料庫執行個體,以停用將代理程式日誌檔案發佈至 CloudWatch Logs。--cloudwatch-logs-export-configuration 值為 JSON 物件。此物件的金鑰為 DisableLogTypes,而值為字串陣列,可包含 error、agent 或兩者。
針對 Linux、macOS 或 Unix:
aws rds modify-db-instance \ --db-instance-identifiermydbinstance\ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["agent"]}'
針對 Windows:
aws rds modify-db-instance ^ --db-instance-identifiermydbinstance^ --cloudwatch-logs-export-configuration "{\"DisableLogTypes\":[\"agent\"]}"
注意
使用 Windows 命令提示字元時,您必須在 JSON 程式碼中的雙引號 (") 開頭加上反斜線 (\),以逸出雙引號。