Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
sam local invoke
Questa pagina fornisce informazioni di riferimento per il AWS Serverless Application Model sam local invoke sottocomando Command Line Interface (AWS SAMCLI).
-
Per un'introduzione a AWS SAMCLI, vedere Che cos'è il? AWS SAMCLI
-
Per la documentazione sull'uso del AWS SAMCLI
sam local invokesottocomando, vedereIntroduzione ai test con sam local invoke.
Il sam local invoke sottocomando avvia una chiamata una tantum di una funzione localmente. AWS Lambda
Nota
Per funzioni durevoli, sam local invoke supporta l'esecuzione con stato con checkpoint e replay automatici. Il contenitore rimane in funzione durante l'esecuzione durevole della funzione per gestire la persistenza e la ripresa dello stato.
Utilizzo
$sam local invoke<arguments><options>
Nota
Se hai più di una funzione definita nel tuo AWS SAM modello, fornisci l'ID logico della funzione che desideri richiamare.
Arguments (Argomenti)
- Resource ID (ID risorsa)
-
L'ID della funzione Lambda da richiamare.
Questo argomento è facoltativo. Se l'applicazione contiene una singola funzione Lambda, la AWS SAM CLI la richiamerà. Se l'applicazione contiene più funzioni, fornisci l'ID della funzione da richiamare.
Valori validi: l'ID logico o l'ARN della risorsa.
Opzioni
--add-hostLIST-
Passa un nome host alla mappatura dell'indirizzo IP al file host del contenitore Docker. Questo parametro può essere passato più volte.
Ad esempio:
--add-hostexample.com:127.0.0.1 --beta-features | --no-beta-features-
Consenti o nega le funzionalità beta.
--config-envTEXT-
Il nome dell'ambiente che specifica i valori dei parametri predefiniti nel file di configurazione da utilizzare. Il valore predefinito è «default». Per ulteriori informazioni sui file di configurazione, consulta AWS SAM CLI file di configurazione.
--config-filePATH-
Il percorso e il nome del file di configurazione contenente i valori dei parametri predefiniti da utilizzare. Il valore predefinito è "
samconfig.toml" nella radice della directory del progetto. Per ulteriori informazioni sui file di configurazione, consulta AWS SAM CLI file di configurazione. --container-env-vars-
(Facoltativo) Passa le variabili di ambiente al contenitore di immagini della funzione Lambda durante il debug locale.
--container-hostTEXT-
Host del contenitore Lambda emulato localmente. Il valore predefinito è
localhost. Se vuoi eseguirlo AWS SAMCLI in un contenitore Docker su macOS, puoi specificare.host.docker.internalSe desideri eseguire il contenitore su un host diverso da quello AWS SAMCLI, puoi specificare l'indirizzo IP dell'host remoto. --container-host-interfaceTEXT-
L'indirizzo IP dell'interfaccia di rete host a cui devono collegarsi le porte del contenitore. Il valore predefinito è
127.0.0.1. Si usa0.0.0.0per collegarsi a tutte le interfacce. --debug-
Attiva la registrazione di debug per stampare i messaggi di debug AWS SAMCLI generati e per visualizzare i timestamp.
--debug-argsTEXT-
Argomenti aggiuntivi da passare al debugger.
--debug-port, -dTEXT-
Quando specificato, avvia il contenitore di funzioni Lambda in modalità debug ed espone questa porta sull'host locale.
--debugger-pathTEXT-
Il percorso dell'host di un debugger montato nel contenitore Lambda.
--docker-networkTEXT-
Il nome o l'ID di una rete Docker esistente a cui i contenitori Lambda Docker devono connettersi, insieme alla rete bridge predefinita. Se questo non è specificato, i contenitori Lambda si connettono solo alla rete bridge Docker predefinita.
--docker-volume-basedir, -vTEXT-
La posizione della directory di base in cui si trova il AWS SAM file. Se Docker è in esecuzione su un computer remoto, è necessario montare il percorso in cui esiste il AWS SAM file sulla macchina Docker e modificare questo valore in modo che corrisponda al computer remoto.
--durable-execution-nameTEXT-
Nome per l'esecuzione durevole (solo per funzioni durevoli)
--env-vars, -nPATH-
Il file JSON che contiene i valori per le variabili di ambiente della funzione Lambda. Per ulteriori informazioni sui file delle variabili di ambiente, consulta. File di variabili di ambiente
--event, -ePATH-
Il file JSON che contiene i dati degli eventi che vengono passati alla funzione Lambda quando viene richiamata. Se non si specifica questa opzione, non si presume alcun evento. Per inserire JSON da
stdin, devi inserire il valore '-'. Per informazioni dettagliate sui formati dei messaggi relativi agli eventi di diversi AWS servizi, consulta Lavorare con altri servizi nella Guida per gli AWS Lambda sviluppatori. --force-image-build-
Specifica se AWS SAMCLI deve ricostruire l'immagine usata per richiamare le funzioni Lambda con livelli.
--help-
Mostra questo messaggio ed esce.
--hook-name TEXT-
Il nome dell'hook utilizzato per estendere le AWS SAMCLI funzionalità.
Valori accettati:
terraform. --invoke-imageTEXT-
L'URI dell'immagine del contenitore che si desidera utilizzare per l'invocazione della funzione locale. Per impostazione predefinita, AWS SAM estrae l'immagine del contenitore da Amazon ECR Public (che è elencato inArchivi di immagini per AWS SAM). Usa questa opzione per estrarre l'immagine da un'altra posizione.
Ad esempio,
sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8. --layer-cache-basedirDIRECTORY-
Specifica la posizione della directory di base in cui vengono scaricati i layer utilizzati dal modello.
--log-file, -lTEXT-
Il file di registro a cui inviare i log di runtime.
--mount-symlinks-
Assicura che monti AWS SAMCLI sempre i collegamenti simbolici presenti nei file da compilare o richiamare. Questo vale solo per i collegamenti simbolici nella directory di primo livello (ovvero i collegamenti simbolici che si trovano direttamente nella radice della funzione). Per impostazione predefinita, i collegamenti simbolici non vengono montati ad eccezione di quelli necessari per essere utilizzati
build-in-sourcenode_modulesin NodeJS. --no-event-
Richiama la funzione con un evento vuoto.
--no-memory-limit-
Rimuove la limitazione di memoria nel contenitore durante la chiamata locale, anche quando la memoria è configurata nel modello. AWS SAM
--parameter-overrides-
Una stringa che contiene le sostituzioni CloudFormation dei parametri codificate come coppie chiave-valore. Utilizzate lo stesso formato di (). AWS Command Line Interface AWS CLI Il AWS SAMCLI formato è costituito da parole chiave e valori esplicite, ogni override è separata da uno spazio. Di seguito, sono riportati due esempi:
--parameter-overrides ParameterKey=hello,ParameterValue=world--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana
--profileTEXT-
Il profilo specifico del file delle credenziali che ottiene le credenziali. AWS
--regionTEXT-
La AWS regione in cui effettuare la distribuzione. Ad esempio, us-east-1.
--runtimeTEXT-
Utilizza il runtime specificato per richiamare una funzione Lambda localmente. Ciò sovrascrive il runtime definito nel file.
template.ymlCiò consente inoltre di testare le funzioni Lambda con tempi di esecuzione diversi senza modificare la configurazione della funzione originale. --save-params-
Salva i parametri forniti nella riga di comando nel file di configurazione. AWS SAM
--shutdown-
Emula un evento di spegnimento dopo il completamento dell'invoca, per testare la gestione delle estensioni del comportamento di spegnimento.
--skip-prepare-infra-
Salta la fase di preparazione se non sono state apportate modifiche all'infrastruttura. Da utilizzare con l'
--hook-nameopzione. --skip-pull-image-
Per impostazione predefinita, AWS SAMCLI controlla l'ultimo ambiente di runtime remoto di Lambda e aggiorna automaticamente l'immagine locale per mantenerla sincronizzata.
Specificate questa opzione per saltare l'estrazione dell'Dockerimmagine più recente per il vostro ambiente di runtime Lambda.
--template, -tPATH-
Il AWS SAM file modello.
Questa opzione non è compatibile con
--hook-name.Nota
Se si specifica questa opzione, AWS SAM carica solo il modello e le risorse locali a cui punta.
--tenant-idTEXT-
L'ID tenant per le funzioni Lambda multi-tenant. Utilizzato per garantire l'isolamento del calcolo tra diversi tenant. Richiesto quando si richiamano funzioni configurate con la modalità di isolamento dei tenant.
--terraform-plan-file-
Il percorso relativo o assoluto del file del Terraform piano locale quando si utilizza with. AWS SAMCLI Terraform Cloud Questa opzione richiede che
--hook-namesia impostata suterraform.
Esempi
L'esempio seguente utilizza un evento generato per i test locali utilizzando un s3.json evento per richiamare localmente una funzione Lambda.
$sam local invoke --eventevents/s3.json S3JsonLoggerFunction
L'esempio seguente verifica la funzione HelloWorldFunction utilizzando il runtime Python 3.11
$sam local invoke --runtimepython3.11 HelloWorldFunction
L'esempio seguente verifica la funzione HelloWorldFunction con un nome di esecuzione durevole
$sam local invokeHelloWorldFunction --durable-execution-name my-execution