Ejemplos de Lambda con herramientas para PowerShell - AWS SDKEjemplos de código

Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de Lambda con herramientas para PowerShell

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes AWS Tools for PowerShell mediante Lambda.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

En el siguiente ejemplo de código se muestra cómo usar Add-LMResourceTag.

Herramientas para PowerShell

Ejemplo 1: agrega las tres etiquetas (Washington, Oregón y California) y sus valores asociados a la función especificada identificada por ellaARN.

Add-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" -Tag @{ "Washington" = "Olympia"; "Oregon" = "Salem"; "California" = "Sacramento" }

En el siguiente ejemplo de código se muestra cómo usar Get-LMAccountSetting.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo, se muestra para comparar el límite de la cuenta y el uso de la cuenta

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

Salida:

TotalCodeSizeLimit TotalCodeSizeUsed ------------------ ----------------- 80530636800 15078795
  • Para API obtener más información, consulte GetAccountSettingsla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMAlias.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo, se recuperan las ponderaciones de Routing Config para un alias de función de Lambda específico.

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

Salida:

AdditionalVersionWeights ------------------------ {[1, 0.6]}
  • Para API obtener más información, consulte GetAliasla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMFunctionConcurrency.

Herramientas para PowerShell

Ejemplo 1: este ejemplo obtiene la simultaneidad reservada para la función de Lambda

Get-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -Select *

Salida:

ReservedConcurrentExecutions ---------------------------- 100
  • Para API obtener más información, consulte GetFunctionConcurrencyla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMFunctionConfiguration.

Herramientas para PowerShell

Ejemplo 1: este ejemplo devuelve la configuración específica de la versión de una función de Lambda.

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

Salida:

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
  • Para API obtener más información, consulte GetFunctionConfigurationla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMFunctionList.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se muestran todas las funciones de Lambda con un tamaño de código ordenado

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

Salida:

FunctionName Runtime Timeout CodeSize ------------ ------- ------- -------- test python2.7 3 243 MylambdaFunction123 python3.8 600 659 myfuncpython1 python3.8 303 675
  • Para API obtener más información, consulte ListFunctionsla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMPolicy.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se muestra la política de funciones de la función de Lambda

Get-LMPolicy -FunctionName test -Select Policy

Salida:

{"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"}]}
  • Para API obtener más información, consulte GetPolicyla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMProvisionedConcurrencyConfig.

Herramientas para PowerShell

Ejemplo 1: este ejemplo obtiene la configuración de simultaneidad aprovisionada para el alias especificado de la función de Lambda.

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

Salida:

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

En el siguiente ejemplo de código se muestra cómo usar Get-LMProvisionedConcurrencyConfigList.

Herramientas para PowerShell

Ejemplo 1: este ejemplo obtiene la configuración de simultaneidad aprovisionada para una función de Lambda.

Get-LMProvisionedConcurrencyConfigList -FunctionName "MylambdaFunction123"

En el siguiente ejemplo de código se muestra cómo usar Get-LMResourceTag.

Herramientas para PowerShell

Ejemplo 1: recupera las etiquetas y sus valores actualmente configurados en la función especificada.

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

Salida:

Key Value --- ----- California Sacramento Oregon Salem Washington Olympia
  • Para API obtener más información, consulte ListTagsla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Get-LMVersionsByFunction.

Herramientas para PowerShell

Ejemplo 1: este ejemplo devuelve la lista de configuraciones específicas de la versión para cada versión de la función de Lambda.

Get-LMVersionsByFunction -FunctionName "MylambdaFunction123"

Salida:

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
  • Para API obtener más información, consulte ListVersionsByFunctionla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar New-LMAlias.

Herramientas para PowerShell

Ejemplo 1: este ejemplo crea un nuevo alias de Lambda para una versión y configuración de enrutamiento específicas a fin de especificar el porcentaje de solicitudes de invocación que recibe.

New-LMAlias -FunctionName "MylambdaFunction123" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6} -Description "Alias for version 4" -FunctionVersion 4 -Name "PowershellAlias"
  • Para API obtener más información, consulte CreateAliasla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Publish-LMFunction.

Herramientas para PowerShell

Ejemplo 1: Este ejemplo crea una nueva función de C# (tiempo de ejecución de dotnetcore1.0) denominada MyFunction AWS Lambda, que proporciona los binarios compilados para la función desde un archivo zip del sistema de archivos local (se pueden utilizar rutas relativas o absolutas). Las funciones Lambda de C# especifican el controlador de la función mediante la designación: :Namespace. AssemblyName ClassName::. MethodName Debe reemplazar adecuadamente las partes del nombre del ensamblado (sin el sufijo .dll), el espacio de nombres, el nombre de la clase y el nombre del método de la especificación del controlador. La nueva función tendrá las variables de entorno 'envvar1' y 'envvar2' configuradas a partir de los valores proporcionados.

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" }

Salida:

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 :

Ejemplo 2: este ejemplo es similar al anterior, excepto que los binarios de la función se cargan primero en un bucket de Amazon S3 (que debe estar en la misma región que la función de Lambda prevista) y, a continuación, se hace referencia al objeto de S3 resultante al crear la función.

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" }
  • Para API obtener más información, consulte CreateFunctionla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Publish-LMVersion.

Herramientas para PowerShell

Ejemplo 1: este ejemplo crea una versión para la instantánea existente del código de función de Lambda

Publish-LMVersion -FunctionName "MylambdaFunction123" -Description "Publishing Existing Snapshot of function code as a new version through Powershell"
  • Para API obtener más información, consulte PublishVersionla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Remove-LMAlias.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se elimina el alias de la función de Lambda mencionado en el comando.

Remove-LMAlias -FunctionName "MylambdaFunction123" -Name "NewAlias"
  • Para API obtener más información, consulte DeleteAliasla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Remove-LMFunction.

Herramientas para PowerShell

Ejemplo 1: este ejemplo elimina una versión específica de una función de Lambda

Remove-LMFunction -FunctionName "MylambdaFunction123" -Qualifier '3'
  • Para API obtener más información, consulte DeleteFunctionla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Remove-LMFunctionConcurrency.

Herramientas para PowerShell

Ejemplo 1: este ejemplo elimina la simultaneidad de funciones de la función de Lambda.

Remove-LMFunctionConcurrency -FunctionName "MylambdaFunction123"

En el siguiente ejemplo de código se muestra cómo usar Remove-LMPermission.

Herramientas para PowerShell

Ejemplo 1: Este ejemplo elimina la política de función para la función Lambda especificada StatementId .

$policy = Get-LMPolicy -FunctionName "MylambdaFunction123" -Select Policy | ConvertFrom-Json| Select-Object -ExpandProperty Statement Remove-LMPermission -FunctionName "MylambdaFunction123" -StatementId $policy[0].Sid

En el siguiente ejemplo de código se muestra cómo usar Remove-LMProvisionedConcurrencyConfig.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se elimina la configuración de simultaneidad aprovisionada para un alias específico.

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

En el siguiente ejemplo de código se muestra cómo usar Remove-LMResourceTag.

Herramientas para PowerShell

Ejemplo 1: elimina las etiquetas suministradas de una función. El cmdlet solicitará confirmación antes de continuar, a menos que se especifique el modificador -Force. Se realiza una sola llamada al servicio para eliminar las etiquetas.

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

Ejemplo 2: elimina las etiquetas suministradas de una función. El cmdlet solicitará confirmación antes de continuar, a menos que se especifique el modificador -Force. Una vez realizada la llamada al servicio por etiqueta suministrada.

"Washington","Oregon","California" | Remove-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction"
  • Para API obtener más información, consulte UntagResourcela referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Update-LMAlias.

Herramientas para PowerShell

Ejemplo 1: este ejemplo actualiza la configuración de un alias de función de Lambda existente. Actualiza el RoutingConfiguration valor para transferir el 60% (0.6) del tráfico a la versión 1

Update-LMAlias -FunctionName "MylambdaFunction123" -Description " Alias for version 2" -FunctionVersion 2 -Name "newlabel1" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6}
  • Para API obtener más información, consulte UpdateAliasla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Update-LMFunctionCode.

Herramientas para PowerShell

Ejemplo 1: actualiza la función denominada 'MyFunction' con el nuevo contenido contenido en el archivo zip especificado. Para un C#. NETFunción Lambda básica: el archivo zip debe contener el ensamblaje compilado.

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

Ejemplo 2: este ejemplo es similar al anterior, pero utiliza un objeto de Amazon S3 que contiene el código actualizado para actualizar la función.

Update-LMFunctionCode -FunctionName MyFunction -BucketName amzn-s3-demo-bucket -Key UpdatedCode.zip
  • Para API obtener más información, consulte la referencia UpdateFunctionCodede AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Update-LMFunctionConfiguration.

Herramientas para PowerShell

Ejemplo 1: este ejemplo actualiza la configuración de la función de Lambda existente

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

En el siguiente ejemplo de código se muestra cómo usar Write-LMFunctionConcurrency.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se aplica la configuración de simultaneidad de la función en su conjunto.

Write-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -ReservedConcurrentExecution 100
  • Para API obtener más información, consulte PutFunctionConcurrencyla referencia de AWS Tools for PowerShell cmdlets.

En el siguiente ejemplo de código se muestra cómo usar Write-LMProvisionedConcurrencyConfig.

Herramientas para PowerShell

Ejemplo 1: en este ejemplo se agrega una configuración de simultaneidad aprovisionada al alias de una función

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