View a markdown version of this page

監控工作流程執行 - AWS Transfer Family

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

監控工作流程執行

Amazon CloudWatch AWS 雲端 會即時監控您在 中執行 AWS 的資源和應用程式。您可以使用 Amazon CloudWatch 來收集和追蹤指標,這是您可以為工作流程測量的變數。您可以使用 Amazon CloudWatch 檢視工作流程指標和合併日誌。

工作流程的 CloudWatch 記錄

CloudWatch 提供工作流程進度和結果的合併稽核和記錄。

AWS Transfer Family 提供兩種將受管工作流程執行日誌交付至 Amazon CloudWatch 的方式:

  • 您指定的日誌群組 (結構化日誌目的地) – 您將 CloudWatch Logs 日誌群組指定為工作流程的結構化日誌目的地,而 Transfer Family 會將工作流程執行日誌交付至該日誌群組。此選項不需要記錄角色。若要使用它,請在建立工作流程時,在 StructuredLogDestinations 參數中提供日誌群組的 Amazon Resource Name (ARN) (請參閱 AWS Transfer Family API 參考中的 StructuredLogDestinations)。日誌群組必須與工作流程位於相同的 AWS 帳戶 和 AWS 區域 。

    若要設定結構化日誌目的地,建立工作流程之主體的 IAM 政策必須包含下列許可:

    • logs:CreateLogDelivery

    • logs:DeleteLogDelivery

    • logs:DescribeLogGroups

    • logs:DescribeResourcePolicies

    • logs:GetLogDelivery

    • logs:ListLogDeliveries

    • logs:PutResourcePolicy

    • logs:UpdateLogDelivery

  • 記錄角色 – 您可以將 IAM 記錄角色連接至工作流程所連接的伺服器。Transfer Family 擔任 角色,將工作流程執行日誌寫入名為 的日誌群組/aws/transfer/server-id。如需詳細資訊,請參閱設定 CloudWatch 記錄角色。

這兩種機制都會以相同的 JSON 格式寫入相同的工作流程執行日誌內容。差別僅在日誌交付時:您指定的日誌群組,或透過記錄角色傳送至伺服器上的/aws/transfer/server-id日誌群組。

檢視工作流程的 Amazon CloudWatch logs
  1. 在 https://console.aws.amazon.com/cloudwatch/ 開啟 Amazon CloudWatch 主控台。

  2. 在左側導覽窗格中,選擇日誌,然後選擇日誌群組。

  3. 在日誌群組頁面上的導覽列上,為您的 AWS Transfer Family 伺服器選擇正確的區域。

  4. 選擇包含工作流程日誌的日誌群組。

    • 如果工作流程使用結構化日誌目的地,請選擇您在工作流程的 StructuredLogDestinations 參數中指定的 ARN 的日誌群組。

    • 如果工作流程在伺服器上使用記錄角色,請選擇對應至您伺服器的日誌群組。例如,如果您的伺服器 ID 為 s-1234567890abcdef0,您的日誌群組為 /aws/transfer/s-1234567890abcdef0。

  5. 在日誌群組詳細資訊頁面上,會顯示最新的日誌串流。工作流程的日誌串流名稱取決於工作流程使用的日誌記錄機制:

    • 對於結構化日誌目的地,工作流程日誌串流名為 workflowID/executionID。例如:

      w-abcdef01234567890/021345abcdef6789
    • 對於記錄角色,伺服器日誌群組包含兩個您正在探索的使用者日誌串流:一個用於每個 Secure Shell (SSH) 檔案傳輸通訊協定 (SFTP) 工作階段,另一個用於正在執行的工作流程。工作流程日誌串流的格式為 username.workflowID.uniqueStreamSuffix。

    例如,如果您的使用者是 mary-major,您有下列日誌串流:

    mary-major-east.1234567890abcdef0 mary.w-abcdef01234567890.021345abcdef6789
    注意

    此範例中列出的 16 位數英數識別符是虛構的。您在 Amazon CloudWatch 中看到的值不同。

工作流程日誌串流的日誌事件頁面包含工作流程執行的詳細資訊。如果工作流程使用記錄角色,mary-major-usa-east.1234567890abcdef0串流會顯示每個使用者工作階段的詳細資訊,而mary.w-abcdef01234567890.021345abcdef6789串流包含工作流程的詳細資訊。如果工作流程使用結構化日誌目的地,w-abcdef01234567890/021345abcdef6789串流會包含工作流程的詳細資訊。

以下是 的範例日誌串流mary.w-abcdef01234567890.021345abcdef6789,以包含複製步驟的工作流程 (w-abcdef01234567890) 為基礎。

{ "type": "ExecutionStarted", "details": { "input": { "initialFileLocation": { "bucket": "amzn-s3-demo-bucket", "key": "mary/workflowSteps2.json", "versionId": "version-id", "etag": "etag-id" } } }, "workflowId":"w-abcdef01234567890", "executionId":"execution-id", "transferDetails": { "serverId":"s-server-id", "username":"mary", "sessionId":"session-id" } }, { "type":"StepStarted", "details": { "input": { "fileLocation": { "backingStore":"S3", "bucket":"amzn-s3-demo-bucket", "key":"mary/workflowSteps2.json", "versionId":"version-id", "etag":"etag-id" } }, "stepType":"COPY", "stepName":"copyToShared" }, "workflowId":"w-abcdef01234567890", "executionId":"execution-id", "transferDetails": { "serverId":"s-server-id", "username":"mary", "sessionId":"session-id" } }, { "type":"StepCompleted", "details":{ "output":{}, "stepType":"COPY", "stepName":"copyToShared" }, "workflowId":"w-abcdef01234567890", "executionId":"execution-id", "transferDetails":{ "serverId":"server-id", "username":"mary", "sessionId":"session-id" } }, { "type":"ExecutionCompleted", "details": {}, "workflowId":"w-abcdef01234567890", "executionId":"execution-id", "transferDetails":{ "serverId":"s-server-id", "username":"mary", "sessionId":"session-id" } }

工作流程的 CloudWatch 指標

AWS Transfer Family 為工作流程提供數個指標。您可以檢視前一分鐘有多少工作流程執行開始、成功完成和失敗的指標。Transfer Family 的所有 CloudWatch 指標如 中所述使用 Transfer Family 伺服器的 CloudWatch 指標。