本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
sam remote invoke
此頁面提供 AWS Serverless Application Model Command Line Interface (AWS SAMCLI) sam remote invoke命令的參考資訊。
- 
			如需 的簡介 AWS SAMCLI,請參閱 什麼是 AWS SAMCLI? 
- 
			如需使用 AWS SAMCLI sam remote invoke命令的文件,請參閱 在雲端使用 進行測試的簡介 sam remote invoke。
sam remote invoke 命令會叫用 中支援的資源 AWS 雲端。
用量
$sam remote invoke<arguments> <options>
引數
- 資源 ID
- 
					要叫用之受支援資源的 ID。 此引數接受下列值: - 
							Amazon Resource Name (ARN) – 資源的 ARN。 提示使用 sam list stack-outputs --stack-name取得 資源的 ARN。<stack-name>
- 
							邏輯 ID – 資源的邏輯 ID。您還必須使用 --stack-name選項提供 AWS CloudFormation 堆疊名稱。
- 
							實體 ID – 資源的實體 ID。當您使用 部署資源時,會建立此 ID AWS CloudFormation。 提示使用 sam list resources --stack-name取得 資源的實體 ID。<stack-name>
 - 當您提供 ARN 或實體 ID 時:
- 
								如果您提供 ARN 或實體 ID,請勿提供堆疊名稱。使用 --stack-name選項提供堆疊名稱時,或在組態檔案中定義堆疊名稱時, AWS SAM CLI會自動將您的資源 ID 處理為 AWS CloudFormation 堆疊中的邏輯 ID 值。
- 當您不提供資源 ID 時:
- 
								如果您未提供資源 ID,但使用 --stack-name選項提供堆疊名稱,CLI AWS SAM 將嘗試使用以下邏輯自動調用 AWS CloudFormation 堆疊中的資源:- 
										AWS SAM CLI 會依下列順序識別資源類型,並在堆疊中找到資源類型後移至下一個步驟: - 
												Lambda 
- 
												Step Functions 
- 
												Amazon SQS 
- 
												Kinesis Data Streams 
 
- 
												
- 
										如果資源類型在您的堆疊中具有單一資源, AWS SAM CLI會叫用它。如果堆疊中存在多個資源類型的資源,則 AWS SAM CLI會傳回錯誤。 
 以下是 AWS SAM CLI將執行的操作範例: - 
										包含兩個 Lambda 函數和一個 Amazon SQS 佇列的堆疊 – AWS SAM CLI將尋找 Lambda 資源類型,並傳回 和 錯誤,因為堆疊包含多個 Lambda 函數。 
- 
										包含 Lambda 函數和兩個 Amazon Kinesis Data Streams 應用程式的堆疊 – AWS SAM CLI將尋找 Lambda 函數並叫用它,因為堆疊包含單一 Lambda 資源。 
- 
										包含單一 Amazon SQS 佇列和兩個 Kinesis Data Streams 應用程式的堆疊 – AWS SAM CLI將尋找 Amazon SQS 佇列並將其叫用,因為堆疊包含單一 Amazon SQS 佇列。 
 
- 
										
 
- 
							
選項
- --beta-features | --no-beta-features
- 
					允許或拒絕 Beta 版功能。 
- --config-env- TEXT
- 
					從 AWS SAMCLI組態檔案指定要使用的環境。 預設: default
- --config-file- FILENAME
- 
					指定組態檔案的路徑和檔案名稱。 如需關於組態檔案的詳細資訊,請參閱 設定 AWS SAMCLI。 預設:在專案目錄的 samconfig.toml根目錄。
- --debug
- 
					啟用除錯記錄。這會列印 產生的偵錯訊息和時間戳記 AWS SAMCLI。 
- --event, -e- TEXT
- 
					要傳送至目標資源的事件。 
- --event-file- FILENAME
- 
					檔案的路徑,其中包含要傳送至目標資源的事件。 
- --help, -h
- 
					顯示說明訊息並結束。 
- --output- [ text | json ]
- 
					以特定輸出格式輸出調用的結果。 json– 請求中繼資料和資源回應會在 JSON 結構中傳回。回應包含完整的 SDK 輸出。text– 請求中繼資料會在文字結構中傳回。資源回應會以叫用資源的輸出格式傳回。
- --parameter
- 
					您可以傳遞給要叫用之資源的其他Boto3 參數。 - Amazon Kinesis Data Streams
- 
								下列其他參數可用來將記錄放入 Kinesis 資料串流: - 
										ExplicitHashKey='string'
- 
										PartitionKey='string'
- 
										SequenceNumberForOrdering='string'
- 
										StreamARN='string'
 如需每個參數的說明,請參閱 Kinesis.Client.put_record 。 
- 
										
- AWS Lambda
- 
								下列其他參數可用來叫用 Lambda 資源並接收緩衝回應: - 
										ClientContext='base64-encoded string'
- 
										InvocationType='[ DryRun | Event | RequestResponse ]'
- 
										LogType='[ None | Tail ]'
- 
										Qualifier='string'
 下列其他參數可用來透過回應串流叫用 Lambda 資源: - 
										ClientContext='base64-encoded string'
- 
										InvocationType='[ DryRun | RequestResponse ]'
- 
										LogType='[ None | Tail ]'
- 
										Qualifier='string'
 如需每個參數的描述,請參閱以下內容: - 
										Lambda 搭配緩衝回應 – Lambda.Client.invoke 
- 
										具有回應串流的 Lambda – Lambda.Client.invoke_with_response_stream 
 
- 
										
- Amazon Simple Queue Service (Amazon SQS)
- 
								下列其他參數可用來傳送訊息至 Amazon SQS 佇列: - 
										DelaySeconds=integer
- 
										MessageAttributes='json string'
- 
										MessageDeduplicationId='string'
- 
										MessageGroupId='string'
- 
										MessageSystemAttributes='json string'
 如需每個參數的說明,請參閱 SQS.Client.send_message 。 
- 
										
- AWS Step Functions
- 
								下列其他參數可用來啟動狀態機器執行: - 
										name='string'
- 
										traceHeader='string'
 如需每個參數的說明,請參閱 SFN.Client.start_execution 。 
- 
										
 
- --profile- TEXT
- 
					從您的登入資料檔案中取得 AWS 登入資料的特定設定檔。 
- --region- TEXT
- 
					資源 AWS 區域 的 。例如: us-east-1。
- --stack-name- TEXT
- 
					資源所屬的 AWS CloudFormation 堆疊名稱。 
- --test-event-name- NAME
- 
					要傳遞給 Lambda 函數的可共用測試事件名稱。 注意此選項僅支援 Lambda 函數。 
範例
下列範例會叫用 AWS 雲端中支援的資源,並啟用偵錯記錄,以列印 產生的偵錯訊息和時間戳記 AWS SAMCLI:
$sam remote invoke--debug