sam remote invoke - AWS Serverless Application Model

sam remote invoke

Esta página proporciona información de referencia para el comando sam remote invoke de la interfaz de la línea de comandos AWS Serverless Application Model (AWS SAM CLI).

El comando sam remote invoke invoca los recursos compatibles en Nube de AWS.

Uso

$ sam remote invoke <arguments> <options>

Argumentos

ID de recursos

El ID del recurso admitido a invocar.

Este argumento acepta los valores siguientes:

  • El Nombre de recurso de Amazon (ARN): el ARN del recurso.

    sugerencia

    Usa sam list stack-outputs --stack-name <stack-name> para obtener el ARN de sus recursos.

  • ID lógico: el ID lógico del recurso. También debe proporcionar el nombre de la pila de AWS CloudFormation mediante la opción --stack-name.

  • ID físico: el ID físico del recurso. Este ID se crea al implementar un recurso utilizando CloudFormation.

    sugerencia

    Usa sam list resources --stack-name <stack-name> para obtener el ID físico de sus recursos.

Cuando proporciona un ARN o una identificación física:

Si proporcionas un ARN o un ID físico, no proporciones un nombre de pila. Cuando el nombre de la pila se proporciona mediante la opción --stack-name, o cuando el nombre de la pila se define en el archivo de configuración, la CLI de AWS SAM procesará automáticamente el ID de recurso como un valor de ID lógico de la pila de CloudFormation.

Cuando no proporciona un ID de recurso:

Si no proporcionas un ID de recurso, pero sí proporciona un nombre de pila con la opción --stack-name, la CLI de AWS SAM intentará invocar automáticamente un recurso de la pila de CloudFormation mediante la siguiente lógica:

  1. La CLI de AWS SAM identificará los tipos de recursos en el siguiente orden y pasará al siguiente paso una vez que el tipo de recurso se encuentre en la pila:

    1. Lambda

    2. Step Functions

    3. Amazon SQS

    4. Kinesis Data Streams

  2. Si el tipo de recurso tiene un único recurso en su pila, la CLI de AWS SAM lo invocará. Si hay varios recursos del mismo tipo en su pila, la CLI de AWS SAM mostrará un error.

Los siguientes son ejemplos de lo que la CLI de AWS SAM hará:

  • Pila que contiene dos funciones de Lambda y una cola de Amazon SQS: la CLI de AWS SAM localizará el tipo de recurso de Lambda y devolverá un error, ya que la pila contiene más de una función de Lambda.

  • Pila que contiene una función de Lambda y dos aplicaciones de Amazon Kinesis Data Streams: la CLI de AWS SAM localizará la función de Lambda y la invocará, ya que la pila contiene un único recurso de Lambda.

  • Pila que contiene una sola cola de Amazon SQS y dos aplicaciones de Kinesis Data Streams: la CLI de AWS SAM localizará la cola de Amazon SQS y la invocará, ya que la pila contiene una sola cola de Amazon SQS.

Opciones

--beta-features | --no-beta-features

Permitir o denegar las características beta.

--config-env TEXT

Especifica el entorno que se va a utilizar en el archivo de configuración de la CLI de AWS SAM.

Valor predeterminado: default

--config-file FILENAME

Especifica la ruta y el nombre del archivo de configuración.

Para obtener más información sobre los archivos de configuración, consulta Configuración de la AWS SAM de CLI.

Predeterminado: samconfig.toml en la raíz del directorio del proyecto.

--debug

Activar el registro de depuración. Esto imprime los mensajes de depuración y las marcas temporales generados por AWS SAM CLI.

--event, -e TEXT

El evento que se va a enviar al recurso de destino.

--event-file FILENAME

La ruta a un archivo que contiene el evento que se va a enviar al recurso de destino.

--help, -h

Muestre el mensaje de ayuda y salga.

--output [ text | json ]

Genera los resultados de la invocación en un formato de salida específico.

json: los metadatos de la solicitud y la respuesta del recurso se devuelven en una estructura JSON. La respuesta contiene el resultado completo del SDK.

text: los metadatos de la solicitud se devuelven en una estructura de texto. La respuesta del recurso se devuelve en el formato de salida del recurso invocado.

--parameter

Parámetros Boto3 adicionales que puede pasar al recurso que se está invocando.

Amazon Kinesis Data Streams

Los parámetros adicionales siguientes se pueden utilizar para incluir un registro en el flujo de datos de Kinesis:

  • ExplicitHashKey='string'

  • PartitionKey='string'

  • SequenceNumberForOrdering='string'

  • StreamARN='string'

Para obtener una descripción de cada parámetro, consulta Kinesis.Client.put_record.

AWS Lambda

Los siguientes parámetros adicionales se pueden usar para invocar un recurso de Lambda y recibir una respuesta almacenada en búfer:

  • ClientContext='base64-encoded string'

  • InvocationType='[ DryRun | Event | RequestResponse ]'

  • LogType='[ None | Tail ]'

  • Qualifier='string'

Los siguientes parámetros adicionales se pueden usar para invocar un recurso de Lambda con transmisión de respuesta:

  • ClientContext='base64-encoded string'

  • InvocationType='[ DryRun | RequestResponse ]'

  • LogType='[ None | Tail ]'

  • Qualifier='string'

Para ver una descripción de los parámetros, consulta lo siguiente:

Amazon Simple Queue Service (Amazon SQS)

Los parámetros adicionales siguientes se pueden utilizar para enviar un mensaje a una cola de Amazon SQS:

  • DelaySeconds=integer

  • MessageAttributes='json string'

  • MessageDeduplicationId='string'

  • MessageGroupId='string'

  • MessageSystemAttributes='json string'

Para obtener una descripción de cada parámetro, consulta SQS.Client.send_message.

AWS Step Functions

Los parámetros adicionales siguientes se pueden utilizar para iniciar la ejecución de una máquina de estado:

  • name='string'

  • traceHeader='string'

Para obtener una descripción de cada parámetro, consulta SFN.Client.start_execution.

--profile TEXT

El perfil específico del archivo de credenciales que recibe las credenciales de AWS.

--region TEXT

El Región de AWS del recurso. Por ejemplo, us-east-1.

--stack-name TEXT

El nombre de la pila de CloudFormation a la que pertenece el recurso.

--test-event-name NAME

El nombre del evento de prueba compartible y pasarlo a la función de Lambda.

nota

Esta opción solo admite funciones de Lambda.

Ejemplo

En el siguiente ejemplo se invocan los recursos compatibles de la nube de AWS y se activa el registro de depuración, que imprime los mensajes de depuración y las marcas de tiempo generados por la CLI de AWS SAM:

$ sam remote invoke--debug