

• 2026 年 4 月 30 日之後， AWS Systems Manager CloudWatch Dashboard 將不再可用。客戶可以繼續使用 Amazon CloudWatch 主控台來檢視、建立和管理其 Amazon CloudWatch 儀表板，就像現在一樣。如需詳細資訊，請參閱 [Amazon CloudWatch Dashboard 文件](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)。

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

# 使用 CloudWatch Logs 記錄自動化動作輸出
<a name="automation-action-logging"></a>

Automation 是 中的工具 AWS Systems Manager，可與 Amazon CloudWatch Logs 整合。您可以將您 Runbook 中的 `aws:executeScript` 動作輸出傳送到您指定的日誌群組。Systems Manager 不會建立日誌群組，或者任何文件的日誌串流不會使用 `aws:executeScript` 動作。如果文件確實使用 `aws:executeScript`，則傳送至 CloudWatch Logs 的輸出僅與這些動作有關。您可以使用存放在您 CloudWatch Logs 日誌群組中的 `aws:executeScript` 動作輸出，以進行偵錯和故障診斷。如果您選擇已加密的記錄群組，`aws:executeScript` 動作輸出也會加密。`aws:executeScript` 動作的日誌記錄輸出是帳戶層級的設定。

若要將動作輸出傳送到 CloudWatch Logs，用於 Amazon 擁有的執行手冊，執行自動化的使用者或角色必須具有以下操作許可：
+ `logs:CreateLogGroup`
+ `logs:CreateLogStream`
+ `logs:DescribeLogGroups`
+ `logs:DescribeLogStreams`
+ `logs:PutLogEvents`

對於您擁有的執行手冊，必須將相同的許可新增至您用來執行執行手冊的 IAM 服務角色 (或 AssumeRole)。

**若要將動作輸出傳送至 CloudWatch Logs (主控台)**

1. 在 https：//[https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/) 開啟 AWS Systems Manager 主控台。

1. 在導覽窗格中，選擇 **Automation** (自動化)。

1. 選擇 **Preferences (偏好)** 標籤，然後選擇 **Edit (編輯)**。

1. 選取 **Send output to CloudWatch Logs** (將輸出傳送至 CloudWatch Logs) 旁的核取方塊。

1. (建議) 選取 **Encrypt log data** (加密日誌資料) 旁的核取方塊。開啟此選項後，系統會使用為該日誌群組指定的伺服器端加密金鑰來加密日誌資料。如果您不想加密要傳送到 CloudWatch Logs 中的日誌資料，清除核取方塊。如果日誌群組不允許加密，清除核取方塊。

1. 對於 **CloudWatch Logs 日誌群組**，若要在 AWS 帳戶 您要傳送動作輸出的 中指定現有的 CloudWatch Logs 日誌群組，請選取下列其中一項：
   + **Send output to the default log group** (將輸出傳送至預設記錄群組) – 如果預設日誌群組不存在 (`/aws/ssm/automation/executeScript`)，自動化會為您建立一個。
   + **Choose from a list of log groups** (從日誌群組清單中選擇) – 選取已在您的帳戶中建立的日誌群組，以存放動作輸出。
   + **Enter a log group name** (輸入日誌群組名稱) – 在文字方塊中，輸入已在帳戶中建立的日誌群組名稱，以存放動作輸出。

1. 選擇**儲存**。

**若要將動作輸出傳送至 CloudWatch Logs (命令列)**

1. 開啟您偏好的命令列工具，然後執行以下命令來更新動作輸出目的地。

------
#### [ Linux & macOS ]

   ```
   aws ssm update-service-setting \
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination \
       --setting-value CloudWatch
   ```

------
#### [ Windows ]

   ```
   aws ssm update-service-setting ^
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination ^
       --setting-value CloudWatch
   ```

------
#### [ PowerShell ]

   ```
   Update-SSMServiceSetting `
       -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination" `
       -SettingValue "CloudWatch"
   ```

------

   如果命令成功，則無輸出訊息。

1. 執行以下命令，指定您要傳送動作輸出至的日誌群組。

------
#### [ Linux & macOS ]

   ```
   aws ssm update-service-setting \
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-group-name \
       --setting-value my-log-group
   ```

------
#### [ Windows ]

   ```
   aws ssm update-service-setting ^
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-group-name ^
       --setting-value my-log-group
   ```

------
#### [ PowerShell ]

   ```
   Update-SSMServiceSetting `
       -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-group-name" `
       -SettingValue "my-log-group"
   ```

------

   如果命令成功，則無輸出訊息。

1. 執行下列命令，以檢視目前 AWS 帳戶 和 中自動化動作記錄偏好設定的目前服務設定 AWS 區域。

------
#### [ Linux & macOS ]

   ```
   aws ssm get-service-setting \
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination
   ```

------
#### [ Windows ]

   ```
   aws ssm get-service-setting ^
       --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination
   ```

------
#### [ PowerShell ]

   ```
   Get-SSMServiceSetting `
       -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/automation/customer-script-log-destination"
   ```

------

   該命令會傳回相關資訊，如以下所示。

   ```
   {
       "ServiceSetting": {
           "Status": "Customized",
           "LastModifiedDate": 1613758617.036,
           "SettingId": "/ssm/automation/customer-script-log-destination",
           "LastModifiedUser": "arn:aws:sts::123456789012:assumed-role/Administrator/User_1",
           "SettingValue": "CloudWatch",
           "ARN": "arn:aws:ssm:us-east-2:123456789012:servicesetting/ssm/automation/customer-script-log-destination"
       }
   }
   ```