

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
<a name="sam-cli-command-reference-sam-local-invoke"></a>

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](what-is-sam-overview.md#what-is-sam-cli)
+ Per la documentazione sull'uso del AWS SAMCLI `sam local invoke` sottocomando, vedere[Introduzione ai test con sam local invoke](using-sam-cli-local-invoke.md).

Il `sam local invoke` sottocomando avvia una chiamata una tantum di una funzione localmente. AWS Lambda 

**Nota**  
Non è consigliabile utilizzare le funzionalità di richiamo locale di SAM CLI in codice non attendibile. Per ottenere un isolamento completo dall'ambiente locale, esegui il codice direttamente nel servizio 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
<a name="ref-sam-cli-local-invoke-usage"></a>

```
$ 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)
<a name="ref-sam-cli-local-invoke-args"></a>

**Resource ID (ID risorsa)**  <a name="ref-sam-cli-local-invoke-args-resource-id"></a>
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
<a name="ref-sam-cli-local-invoke-options"></a>

`--add-host {{LIST}}`  <a name="ref-sam-cli-local-invoke-options-add-host"></a>
Passa un nome host alla mappatura dell'indirizzo IP al file host del contenitore Docker. Questo parametro può essere passato più volte.  

**Example**  
Ad esempio: `--add-host {{example.com:127.0.0.1}}`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-local-invoke-options-beta-features"></a>
Consenti o nega le funzionalità beta.

`--config-env {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-config-env"></a>
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 SAMCLIfile di configurazione](serverless-sam-cli-config.md).

`--config-file {{PATH}}`  <a name="ref-sam-cli-local-invoke-options-config-file"></a>
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 SAMCLIfile di configurazione](serverless-sam-cli-config.md).

`--container-env-vars`  <a name="ref-sam-cli-local-invoke-options-container-env-vars"></a>
(Facoltativo) Passa le variabili di ambiente al contenitore di immagini della funzione Lambda durante il debug locale.

`--container-host {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-container-host"></a>
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.internal` Se desideri eseguire il contenitore su un host diverso da quello AWS SAMCLI, puoi specificare l'indirizzo IP dell'host remoto.

`--container-host-interface {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-container-host-interface"></a>
L'indirizzo IP dell'interfaccia di rete host a cui devono collegarsi le porte del contenitore. Il valore predefinito è `127.0.0.1`. Si usa `0.0.0.0` per collegarsi a tutte le interfacce.

`--container-dns {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-container-dns"></a>
Specifica un server DNS personalizzato per il contenitore Docker. Questo parametro può essere passato più volte per specificare più server DNS.  

**Example**  
Ad esempio: `--container-dns {{8.8.8.8}}`

`--debug`  <a name="ref-sam-cli-local-invoke-options-debug"></a>
Attiva la registrazione di debug per stampare i messaggi di debug AWS SAMCLI generati e per visualizzare i timestamp.

`--debug-args {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-debug-args"></a>
Argomenti aggiuntivi da passare al debugger.

`--debug-port, -d {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-debug-port"></a>
Quando specificato, avvia il contenitore di funzioni Lambda in modalità debug ed espone questa porta sull'host locale.

`--debugger-path {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-debugger-path"></a>
Il percorso dell'host di un debugger montato nel contenitore Lambda.

`--docker-network {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-docker-network"></a>
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, -v {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-docker-volume-basedir"></a>
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-name {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-durable-execution-name"></a>
Nome per l'esecuzione durevole (solo per funzioni durevoli)

`--env-vars, -n {{PATH}}`  <a name="ref-sam-cli-local-invoke-options-env-vars"></a>
Il `.env` file JSON o che contiene i valori per le variabili di ambiente della funzione Lambda. Il formato del file viene rilevato automaticamente. Per ulteriori informazioni sui file delle variabili di ambiente, vedere[File di variabili di ambiente](serverless-sam-cli-using-invoke.md#serverless-sam-cli-using-invoke-environment-file).

`--event, -e {{PATH}}`  <a name="ref-sam-cli-local-invoke-options-event"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/lambda-services.html) nella Guida per gli AWS Lambda sviluppatori.*

`--force-image-build`  <a name="ref-sam-cli-local-invoke-options-force-image-build"></a>
Specifica se AWS SAMCLI deve ricostruire l'immagine usata per richiamare le funzioni Lambda con livelli.

`--help`  <a name="ref-sam-cli-local-invoke-options-help"></a>
Mostra questo messaggio ed esce.

`--hook-name TEXT`  <a name="ref-sam-cli-local-invoke-options-hook-name"></a>
Il nome dell'hook utilizzato per estendere le AWS SAMCLI funzionalità.  
Valori accettati:`terraform`.

`--invoke-image {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-invoke-image"></a>
L'URI dell'immagine del contenitore che si desidera utilizzare per l'invocazione della funzione locale.  
Per le funzioni Lambda con`PackageType: Zip`, questo sostituisce l'immagine di base del runtime. Per impostazione predefinita, AWS SAM estrae l'immagine del contenitore da Amazon ECR Public (che è elencato in[Archivi di immagini per AWS SAM](serverless-image-repositories.md)). Usa questa opzione per estrarre l'immagine da un'altra posizione.  
Per le funzioni Lambda con`PackageType: Image`, questo sostituisce il modello creato`ImageUri`. Usalo per richiamare localmente un'immagine diversa dell'applicazione senza modificare il modello.  
Puoi specificare questa opzione più volte. Ogni istanza di questa opzione può accettare una stringa o una coppia chiave-valore. Se specificate una stringa, è l'URI dell'immagine del contenitore da utilizzare per tutte le funzioni dell'applicazione. Ad esempio, `sam local invoke --invoke-image public.ecr.aws/sam/emu-python3.13`. Se specificate una coppia chiave-valore, la chiave è il nome della risorsa e il valore è l'URI dell'immagine del contenitore da utilizzare per quella risorsa. Ad esempio, `sam local invoke --invoke-image public.ecr.aws/sam/emu-python3.13 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.13`. Con le coppie chiave-valore, è possibile specificare immagini di contenitori diverse per risorse diverse.

`--layer-cache-basedir {{DIRECTORY}}`  <a name="ref-sam-cli-local-invoke-options-layer-cache-basedir"></a>
Specifica la posizione della directory di base in cui vengono scaricati i layer utilizzati dal modello.

`--log-file, -l {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-log-file"></a>
Il file di registro a cui inviare i log di runtime.

`--mount-symlinks`  <a name="ref-sam-cli-local-invoke-options-mount-symlinks"></a>
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-source` `node_modules` in NodeJS.

`--no-event`  <a name="ref-sam-cli-local-invoke-options-no-event"></a>
Richiama la funzione con un evento vuoto.

`--no-memory-limit`  <a name="ref-sam-cli-local-invoke-options-no-memory-limit"></a>
Rimuove la limitazione di memoria nel contenitore durante la chiamata locale, anche quando la memoria è configurata nel modello. AWS SAM 

`--parameter-overrides`  <a name="ref-sam-cli-local-invoke-options-parameter-overrides"></a>
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`

`--profile {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-profile"></a>
Il profilo specifico del file delle credenziali che ottiene le credenziali. AWS 

`--region {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-region"></a>
La AWS regione in cui effettuare la distribuzione. Ad esempio, us-east-1.

`--runtime {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-runtime"></a>
Utilizza il runtime specificato per richiamare una funzione Lambda localmente. Ciò sovrascrive il runtime definito nel file. `template.yml` Ciò consente inoltre di testare le funzioni Lambda con tempi di esecuzione diversi senza modificare la configurazione della funzione originale.

`--save-params`  <a name="ref-sam-cli-local-invoke-options-save-params"></a>
Salva i parametri forniti nella riga di comando nel file di configurazione. AWS SAM 

`--shutdown`  <a name="ref-sam-cli-local-invoke-options-shutdown"></a>
Emula un evento di spegnimento dopo il completamento dell'invocazione, per testare la gestione delle estensioni del comportamento di spegnimento.

`--skip-prepare-infra`  <a name="ref-sam-cli-local-invoke-options-skip-prepare-infra"></a>
Salta la fase di preparazione se non sono state apportate modifiche all'infrastruttura. Da utilizzare con l'`--hook-name`opzione.

`--skip-pull-image`  <a name="ref-sam-cli-local-invoke-options-skip-pull-image"></a>
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, -t {{PATH}}`  <a name="ref-sam-cli-local-invoke-options-template"></a>
Il AWS SAM file modello.  
Questa opzione non è compatibile con`--hook-name`.  
Se si specifica questa opzione, AWS SAM carica solo il modello e le risorse locali a cui punta.

`--tenant-id {{TEXT}}`  <a name="ref-sam-cli-local-invoke-options-tenancyconfig"></a>
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`  <a name="ref-sam-cli-local-invoke-options-terraform-plan-file"></a>
Il percorso relativo o assoluto del file del Terraform piano locale quando si utilizza with. AWS SAMCLI Terraform Cloud Questa opzione richiede che `--hook-name` sia impostata su`terraform`.

## Esempi
<a name="sam-cli-command-reference-sam-local-invoke-examples"></a>

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 --event {{events/s3.json S3JsonLoggerFunction}}
```

L'esempio seguente verifica la funzione ` HelloWorldFunction` utilizzando il runtime Python 3.11

```
$ sam local invoke --runtime {{python3.11 HelloWorldFunction}}
```

L'esempio seguente verifica la funzione ` HelloWorldFunction` con un nome di esecuzione durevole

```
$ sam local invoke {{HelloWorldFunction --durable-execution-name my-execution}}
```