本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
sam remote invoke
本頁提供「 AWS Serverless Application Model 指令行介面」(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 資源名稱(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 或實體識別碼時:
-
如果您提供 ARN 或實體 ID,請勿提供堆疊名稱。使用
--stack-name
選項提供堆疊名稱時,或在組態檔案中定義堆疊名稱時, AWS SAM CLI會自動將您的資源 ID 處理為來自 AWS CloudFormation 堆疊的邏輯 ID 值。 - 當您未提供資源 ID 時:
-
如果您沒有提供資源 ID,但確實提供了堆疊名稱和
--stack-name
選項, AWS SAM CLI 會嘗試使用下列邏輯自動叫用 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 佇列的堆疊 — 由於堆疊包含多個 Lambda 函數,因此 AWS SAM CLI會找到 Lambda 資源類型並傳回和錯誤。
-
包含 Lambda 函數和兩個 Amazon Kinesis Data Streams 應用程式的堆疊 — 由於堆疊包含單一 Lambda 資源,所以 AWS SAM CLI會找到並呼叫該函數。
-
包含單一 Amazon SQS 佇列和兩個 Kinesis Data Streams 應用程式的堆疊 — 由於堆疊包含單一 Amazon SQS 佇列,因此 AWS SAM CLI會找到 Amazon SQS 佇列並呼叫該佇列。
-
-
選項
--beta-features | --no-beta-features
-
允許或拒絕測試版功能。
--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
'
如需每個參數的描述,請參閱中心. 用戶端
. -
- 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 與響應流-蘭巴
達. 客戶端.
-
- Amazon Simple Queue Service (Amazon SQS)
-
下列其他參數可用於將訊息傳送到 Amazon SQS 佇列:
-
DelaySeconds=
integer
-
MessageAttributes='
json string
' -
MessageDeduplicationId='
string
' -
MessageGroupId='
string
' -
MessageSystemAttributes='
json string
'
如需每個參數的說明,請參閱 SQ.Client.
-
- AWS Step Functions
-
以下附加參數可用於啟動狀態機執行:
-
name='
string
' -
traceHeader='
string
'
如需每個參數的說明,請參閱 SFN.
用戶端. -
--profile
TEXT
-
從您的認證檔案取得 AWS 認證的特定設定檔。
--region
TEXT
-
資源 AWS 區域 的。例如
us-east-1
。 --stack-name
TEXT
-
該資源所屬的 AWS CloudFormation 堆棧的名稱。
--test-event-name
NAME
-
要傳遞至 Lambda 函數的可共用測試事件名稱。
注意
此選項僅支援 Lambda 函數。