Esempi di Lambda con Tools for PowerShell - Esempi di codice dell'AWS SDK

Ci sono altri AWS SDK esempi disponibili nel repository AWS Doc SDK Examples GitHub .

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à.

Esempi di Lambda con Tools for PowerShell

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Tools for PowerShell with Lambda.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel loro contesto negli scenari correlati.

Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzareAdd-LMResourceTag.

Strumenti per PowerShell

Esempio 1: aggiunge i tre tag (Washington, Oregon e California) e i relativi valori associati alla funzione specificata identificata da itsARN.

Add-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" -Tag @{ "Washington" = "Olympia"; "Oregon" = "Salem"; "California" = "Sacramento" }
  • Per API i dettagli, vedere TagResourcein AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Get-LMAccountSetting

Strumenti per PowerShell

Esempio 1: questo esempio viene visualizzato per confrontare il limite dell'account e l'utilizzo dell'account

Get-LMAccountSetting | Select-Object @{Name="TotalCodeSizeLimit";Expression={$_.AccountLimit.TotalCodeSize}}, @{Name="TotalCodeSizeUsed";Expression={$_.AccountUsage.TotalCodeSize}}

Output:

TotalCodeSizeLimit TotalCodeSizeUsed ------------------ ----------------- 80530636800 15078795
  • Per API i dettagli, vedere GetAccountSettingsin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Get-LMAlias

Strumenti per PowerShell

Esempio 1: questo esempio recupera i pesi di Routing Config per uno specifico alias della funzione Lambda.

Get-LMAlias -FunctionName "MylambdaFunction123" -Name "newlabel1" -Select RoutingConfig

Output:

AdditionalVersionWeights ------------------------ {[1, 0.6]}
  • Per i API dettagli, vedere in Cmdlet Reference. GetAliasAWS Tools for PowerShell

Il seguente esempio di codice mostra come utilizzare. Get-LMFunctionConcurrency

Strumenti per PowerShell

Esempio 1: questo esempio ottiene la concorrenza riservata per la funzione Lambda

Get-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -Select *

Output:

ReservedConcurrentExecutions ---------------------------- 100

Il seguente esempio di codice mostra come utilizzare. Get-LMFunctionConfiguration

Strumenti per PowerShell

Esempio 1: questo esempio restituisce la configurazione specifica della versione di una funzione Lambda.

Get-LMFunctionConfiguration -FunctionName "MylambdaFunction123" -Qualifier "PowershellAlias"

Output:

CodeSha256 : uWOW0R7z+f0VyLuUg7+/D08hkMFsq0SF4seuyUZJ/R8= CodeSize : 1426 DeadLetterConfig : Amazon.Lambda.Model.DeadLetterConfig Description : Verson 3 to test Aliases Environment : Amazon.Lambda.Model.EnvironmentResponse FunctionArn : arn:aws:lambda:us-east-1:123456789012:function:MylambdaFunction123 :PowershellAlias FunctionName : MylambdaFunction123 Handler : lambda_function.launch_instance KMSKeyArn : LastModified : 2019-12-25T09:52:59.872+0000 LastUpdateStatus : Successful LastUpdateStatusReason : LastUpdateStatusReasonCode : Layers : {} MasterArn : MemorySize : 128 RevisionId : 5d7de38b-87f2-4260-8f8a-e87280e10c33 Role : arn:aws:iam::123456789012:role/service-role/lambda Runtime : python3.8 State : Active StateReason : StateReasonCode : Timeout : 600 TracingConfig : Amazon.Lambda.Model.TracingConfigResponse Version : 4 VpcConfig : Amazon.Lambda.Model.VpcConfigDetail

Il seguente esempio di codice mostra come utilizzare. Get-LMFunctionList

Strumenti per PowerShell

Esempio 1: questo esempio mostra tutte le funzioni Lambda con dimensioni di codice ordinate

Get-LMFunctionList | Sort-Object -Property CodeSize | Select-Object FunctionName, RunTime, Timeout, CodeSize

Output:

FunctionName Runtime Timeout CodeSize ------------ ------- ------- -------- test python2.7 3 243 MylambdaFunction123 python3.8 600 659 myfuncpython1 python3.8 303 675
  • Per API i dettagli, vedere ListFunctionsin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Get-LMPolicy

Strumenti per PowerShell

Esempio 1: questo esempio mostra la politica delle funzioni della funzione Lambda

Get-LMPolicy -FunctionName test -Select Policy

Output:

{"Version":"2012-10-17","Id":"default","Statement":[{"Sid":"xxxx","Effect":"Allow","Principal":{"Service":"sns.amazonaws.com"},"Action":"lambda:InvokeFunction","Resource":"arn:aws:lambda:us-east-1:123456789102:function:test"}]}
  • Per API i dettagli, vedere GetPolicyin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Get-LMProvisionedConcurrencyConfig

Strumenti per PowerShell

Esempio 1: questo esempio ottiene la configurazione simultanea fornita per l'alias specificato della funzione Lambda.

C:\>Get-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -Qualifier "NewAlias1"

Output:

AllocatedProvisionedConcurrentExecutions : 0 AvailableProvisionedConcurrentExecutions : 0 LastModified : 2020-01-15T03:21:26+0000 RequestedProvisionedConcurrentExecutions : 70 Status : IN_PROGRESS StatusReason :

Il seguente esempio di codice mostra come utilizzare. Get-LMProvisionedConcurrencyConfigList

Strumenti per PowerShell

Esempio 1: questo esempio recupera l'elenco delle configurazioni di concorrenza assegnate per una funzione Lambda.

Get-LMProvisionedConcurrencyConfigList -FunctionName "MylambdaFunction123"

Il seguente esempio di codice mostra come utilizzare. Get-LMResourceTag

Strumenti per PowerShell

Esempio 1: recupera i tag e i relativi valori attualmente impostati sulla funzione specificata.

Get-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction"

Output:

Key Value --- ----- California Sacramento Oregon Salem Washington Olympia
  • Per API i dettagli, vedere ListTagsin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Get-LMVersionsByFunction

Strumenti per PowerShell

Esempio 1: questo esempio restituisce l'elenco delle configurazioni specifiche della versione per ogni versione della funzione Lambda.

Get-LMVersionsByFunction -FunctionName "MylambdaFunction123"

Output:

FunctionName Runtime MemorySize Timeout CodeSize LastModified RoleName ------------ ------- ---------- ------- -------- ------------ -------- MylambdaFunction123 python3.8 128 600 659 2020-01-10T03:20:56.390+0000 lambda MylambdaFunction123 python3.8 128 5 1426 2019-12-25T09:19:02.238+0000 lambda MylambdaFunction123 python3.8 128 5 1426 2019-12-25T09:39:36.779+0000 lambda MylambdaFunction123 python3.8 128 600 1426 2019-12-25T09:52:59.872+0000 lambda

Il seguente esempio di codice mostra come utilizzare. New-LMAlias

Strumenti per PowerShell

Esempio 1: questo esempio crea un nuovo alias Lambda per la versione e la configurazione di routing specificate per specificare la percentuale di richieste di chiamata che riceve.

New-LMAlias -FunctionName "MylambdaFunction123" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6} -Description "Alias for version 4" -FunctionVersion 4 -Name "PowershellAlias"
  • Per i API dettagli, vedere in Cmdlet Reference. CreateAliasAWS Tools for PowerShell

Il seguente esempio di codice mostra come utilizzare. Publish-LMFunction

Strumenti per PowerShell

Esempio 1: Questo esempio crea una nuova funzione C# (dotnetcore1.0 runtime) denominata in MyFunction AWS Lambda, che fornisce i file binari compilati per la funzione da un file zip sul file system locale (è possibile utilizzare percorsi relativi o assoluti). Le funzioni C# Lambda specificano il gestore per la funzione utilizzando la designazione: :Namespace. AssemblyName ClassName::. MethodName È necessario sostituire in modo appropriato le parti relative al nome dell'assembly (senza il suffisso .dll), allo spazio dei nomi, al nome della classe e al nome del metodo nelle specifiche del gestore. La nuova funzione avrà le variabili di ambiente 'envvar1' e 'envvar2' impostate in base ai valori forniti.

Publish-LMFunction -Description "My C# Lambda Function" ` -FunctionName MyFunction ` -ZipFilename .\MyFunctionBinaries.zip ` -Handler "AssemblyName::Namespace.ClassName::MethodName" ` -Role "arn:aws:iam::123456789012:role/LambdaFullExecRole" ` -Runtime dotnetcore1.0 ` -Environment_Variable @{ "envvar1"="value";"envvar2"="value" }

Output:

CodeSha256 : /NgBMd...gq71I= CodeSize : 214784 DeadLetterConfig : Description : My C# Lambda Function Environment : Amazon.Lambda.Model.EnvironmentResponse FunctionArn : arn:aws:lambda:us-west-2:123456789012:function:ToUpper FunctionName : MyFunction Handler : AssemblyName::Namespace.ClassName::MethodName KMSKeyArn : LastModified : 2016-12-29T23:50:14.207+0000 MemorySize : 128 Role : arn:aws:iam::123456789012:role/LambdaFullExecRole Runtime : dotnetcore1.0 Timeout : 3 Version : $LATEST VpcConfig :

Esempio 2: questo esempio è simile a quello precedente, tranne per il fatto che i binari delle funzioni vengono prima caricati in un bucket Amazon S3 (che deve trovarsi nella stessa regione della funzione Lambda prevista) e l'oggetto S3 risultante viene quindi referenziato durante la creazione della funzione.

Write-S3Object -BucketName amzn-s3-demo-bucket -Key MyFunctionBinaries.zip -File .\MyFunctionBinaries.zip Publish-LMFunction -Description "My C# Lambda Function" ` -FunctionName MyFunction ` -BucketName amzn-s3-demo-bucket ` -Key MyFunctionBinaries.zip ` -Handler "AssemblyName::Namespace.ClassName::MethodName" ` -Role "arn:aws:iam::123456789012:role/LambdaFullExecRole" ` -Runtime dotnetcore1.0 ` -Environment_Variable @{ "envvar1"="value";"envvar2"="value" }
  • Per i API dettagli, vedere in Cmdlet Reference. CreateFunctionAWS Tools for PowerShell

Il seguente esempio di codice mostra come utilizzare. Publish-LMVersion

Strumenti per PowerShell

Esempio 1: questo esempio crea una versione per l'istantanea esistente di Lambda Function Code

Publish-LMVersion -FunctionName "MylambdaFunction123" -Description "Publishing Existing Snapshot of function code as a new version through Powershell"
  • Per API i dettagli, vedere PublishVersionin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Remove-LMAlias

Strumenti per PowerShell

Esempio 1: Questo esempio elimina la funzione Lambda Alias menzionata nel comando.

Remove-LMAlias -FunctionName "MylambdaFunction123" -Name "NewAlias"
  • Per API i dettagli, vedere DeleteAliasin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Remove-LMFunction

Strumenti per PowerShell

Esempio 1: questo esempio elimina una versione specifica di una funzione Lambda

Remove-LMFunction -FunctionName "MylambdaFunction123" -Qualifier '3'
  • Per API i dettagli, vedere DeleteFunctionin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Remove-LMFunctionConcurrency

Strumenti per PowerShell

Esempio 1: questo esempio rimuove la Function Concurrency della Funzione Lambda.

Remove-LMFunctionConcurrency -FunctionName "MylambdaFunction123"

Il seguente esempio di codice mostra come utilizzare. Remove-LMPermission

Strumenti per PowerShell

Esempio 1: questo esempio rimuove la politica StatementId della funzione per la funzione Lambda specificata.

$policy = Get-LMPolicy -FunctionName "MylambdaFunction123" -Select Policy | ConvertFrom-Json| Select-Object -ExpandProperty Statement Remove-LMPermission -FunctionName "MylambdaFunction123" -StatementId $policy[0].Sid
  • Per API i dettagli, vedere RemovePermissionin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Remove-LMProvisionedConcurrencyConfig

Strumenti per PowerShell

Esempio 1: Questo esempio rimuove la configurazione Provisioned Concurrency per un alias specifico.

Remove-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -Qualifier "NewAlias1"

Il seguente esempio di codice mostra come utilizzare. Remove-LMResourceTag

Strumenti per PowerShell

Esempio 1: rimuove i tag forniti da una funzione. Il cmdlet richiederà una conferma prima di procedere, a meno che non venga specificato lo switch -Force. Viene effettuata una sola chiamata al servizio per rimuovere i tag.

Remove-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" -TagKey "Washington","Oregon","California"

Esempio 2: rimuove i tag forniti da una funzione. Il cmdlet richiederà una conferma prima di procedere, a meno che non venga specificato lo switch -Force. Una volta effettuata la chiamata al servizio per tag fornito.

"Washington","Oregon","California" | Remove-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction"
  • Per API i dettagli, vedere UntagResourcein AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Update-LMAlias

Strumenti per PowerShell

Esempio 1: questo esempio aggiorna la configurazione di un alias di funzione Lambda esistente. Aggiorna il RoutingConfiguration valore per spostare il 60% (0,6) del traffico alla versione 1

Update-LMAlias -FunctionName "MylambdaFunction123" -Description " Alias for version 2" -FunctionVersion 2 -Name "newlabel1" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6}
  • Per API i dettagli, vedere UpdateAliasin AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Update-LMFunctionCode

Strumenti per PowerShell

Esempio 1: aggiorna la funzione denominata MyFunction '' con il nuovo contenuto nel file zip specificato. Per un C#. NETFunzione Lambda principale: il file zip deve contenere l'assembly compilato.

Update-LMFunctionCode -FunctionName MyFunction -ZipFilename .\UpdatedCode.zip

Esempio 2: questo esempio è simile a quello precedente ma utilizza un oggetto Amazon S3 contenente il codice aggiornato per aggiornare la funzione.

Update-LMFunctionCode -FunctionName MyFunction -BucketName amzn-s3-demo-bucket -Key UpdatedCode.zip
  • Per API i dettagli, vedere UpdateFunctionCodein AWS Tools for PowerShell Cmdlet Reference.

Il seguente esempio di codice mostra come utilizzare. Update-LMFunctionConfiguration

Strumenti per PowerShell

Esempio 1: questo esempio aggiorna la configurazione della funzione Lambda esistente

Update-LMFunctionConfiguration -FunctionName "MylambdaFunction123" -Handler "lambda_function.launch_instance" -Timeout 600 -Environment_Variable @{ "envvar1"="value";"envvar2"="value" } -Role arn:aws:iam::123456789101:role/service-role/lambda -DeadLetterConfig_TargetArn arn:aws:sns:us-east-1: 123456789101:MyfirstTopic

Il seguente esempio di codice mostra come utilizzare. Write-LMFunctionConcurrency

Strumenti per PowerShell

Esempio 1: Questo esempio applica le impostazioni di concorrenza per la funzione nel suo insieme.

Write-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -ReservedConcurrentExecution 100

Il seguente esempio di codice mostra come utilizzare. Write-LMProvisionedConcurrencyConfig

Strumenti per PowerShell

Esempio 1: Questo esempio aggiunge una configurazione di concorrenza fornita all'alias di una funzione

Write-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -ProvisionedConcurrentExecution 20 -Qualifier "NewAlias1"