معرفی شرکت ها


aws-cdk.aws-lambda-destinations-1.99.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

CDK Destinations Constructs for AWS Lambda
ویژگی مقدار
سیستم عامل -
نام فایل aws-cdk.aws-lambda-destinations-1.99.0
نام aws-cdk.aws-lambda-destinations
نسخه کتابخانه 1.99.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Amazon Web Services
ایمیل نویسنده -
آدرس صفحه اصلی https://github.com/aws/aws-cdk
آدرس اینترنتی https://pypi.org/project/aws-cdk.aws-lambda-destinations/
مجوز Apache-2.0
# Amazon Lambda Destinations Library <!--BEGIN STABILITY BANNER-->--- ![cdk-constructs: Stable](https://img.shields.io/badge/cdk--constructs-stable-success.svg?style=for-the-badge) --- <!--END STABILITY BANNER--> This library provides constructs for adding destinations to a Lambda function. Destinations can be added by specifying the `onFailure` or `onSuccess` props when creating a function or alias. ## Destinations The following destinations are supported * Lambda function * SQS queue - Only standard SQS queues are supported for failure destinations, FIFO queues are not supported. * SNS topic * EventBridge event bus Example with a SNS topic for successful invocations: ```python # An sns topic for successful invocations of a lambda function import aws_cdk.aws_sns as sns my_topic = sns.Topic(self, "Topic") my_fn = lambda_.Function(self, "Fn", runtime=lambda_.Runtime.NODEJS_14_X, handler="index.handler", code=lambda_.Code.from_asset(path.join(__dirname, "lambda-handler")), # sns topic for successful invocations on_success=destinations.SnsDestination(my_topic) ) ``` Example with a SQS queue for unsuccessful invocations: ```python # An sqs queue for unsuccessful invocations of a lambda function import aws_cdk.aws_sqs as sqs dead_letter_queue = sqs.Queue(self, "DeadLetterQueue") my_fn = lambda_.Function(self, "Fn", runtime=lambda_.Runtime.NODEJS_14_X, handler="index.handler", code=lambda_.Code.from_inline("// your code"), # sqs queue for unsuccessful invocations on_failure=destinations.SqsDestination(dead_letter_queue) ) ``` See also [Configuring Destinations for Asynchronous Invocation](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-async-destinations). ### Invocation record When a lambda function is configured with a destination, an invocation record is created by the Lambda service when the lambda function completes. The invocation record contains the details of the function, its context, and the request and response payloads. The following example shows the format of the invocation record for a successful invocation: ```json { "version": "1.0", "timestamp": "2019-11-24T23:08:25.651Z", "requestContext": { "requestId": "c2a6f2ae-7dbb-4d22-8782-d0485c9877e2", "functionArn": "arn:aws:lambda:sa-east-1:123456789123:function:event-destinations:$LATEST", "condition": "Success", "approximateInvokeCount": 1 }, "requestPayload": { "Success": true }, "responseContext": { "statusCode": 200, "executedVersion": "$LATEST" }, "responsePayload": "<data returned by the function here>" } ``` In case of failure, the record contains the reason and error object: ```json { "version": "1.0", "timestamp": "2019-11-24T21:52:47.333Z", "requestContext": { "requestId": "8ea123e4-1db7-4aca-ad10-d9ca1234c1fd", "functionArn": "arn:aws:lambda:sa-east-1:123456678912:function:event-destinations:$LATEST", "condition": "RetriesExhausted", "approximateInvokeCount": 3 }, "requestPayload": { "Success": false }, "responseContext": { "statusCode": 200, "executedVersion": "$LATEST", "functionError": "Handled" }, "responsePayload": { "errorMessage": "Failure from event, Success = false, I am failing!", "errorType": "Error", "stackTrace": [ "exports.handler (/var/task/index.js:18:18)" ] } } ``` #### Destination-specific JSON format * For SNS/SQS (`SnsDestionation`/`SqsDestination`), the invocation record JSON is passed as the `Message` to the destination. * For Lambda (`LambdaDestination`), the invocation record JSON is passed as the payload to the function. * For EventBridge (`EventBridgeDestination`), the invocation record JSON is passed as the `detail` in the PutEvents call. The value for the event field `source` is `lambda`, and the value for the event field `detail-type` is either 'Lambda Function Invocation Result - Success' or 'Lambda Function Invocation Result – Failure', depending on whether the lambda function invocation succeeded or failed. The event field `resource` contains the function and destination ARNs. See [AWS Events](https://docs.aws.amazon.com/eventbridge/latest/userguide/aws-events.html) for the different event fields. ### Auto-extract response payload with lambda destination The `responseOnly` option of `LambdaDestination` allows to auto-extract the response payload from the invocation record: ```python # Auto-extract response payload with a lambda destination # destination_fn: lambda.Function source_fn = lambda_.Function(self, "Source", runtime=lambda_.Runtime.NODEJS_14_X, handler="index.handler", code=lambda_.Code.from_asset(path.join(__dirname, "lambda-handler")), # auto-extract on success on_success=destinations.LambdaDestination(destination_fn, response_only=True ) ) ``` In the above example, `destinationFn` will be invoked with the payload returned by `sourceFn` (`responsePayload` in the invocation record, not the full record). When used with `onFailure`, the destination function is invoked with the error object returned by the source function. Using the `responseOnly` option allows to easily chain asynchronous Lambda functions without having to deal with data extraction in the runtime code.


نیازمندی

مقدار نام
==1.200.0 aws-cdk.aws-events-targets
==1.200.0 aws-cdk.aws-events
==1.200.0 aws-cdk.aws-lambda
==1.200.0 aws-cdk.aws-sns
==1.200.0 aws-cdk.aws-sqs
==1.200.0 aws-cdk.core
<4.0.0,>=3.3.69 constructs
<2.0.0,>=1.74.0 jsii
>=0.0.3 publication
~=2.13.3 typeguard


زبان مورد نیاز

مقدار نام
~=3.7 Python


نحوه نصب


نصب پکیج whl aws-cdk.aws-lambda-destinations-1.99.0:

    pip install aws-cdk.aws-lambda-destinations-1.99.0.whl


نصب پکیج tar.gz aws-cdk.aws-lambda-destinations-1.99.0:

    pip install aws-cdk.aws-lambda-destinations-1.99.0.tar.gz