コード例 #1
0
 def test_lambda_timer_handler_error(self, mock_logging, mock_FSM,
                                     mock_retriable_entities):
     mock_retriable_entities.return_value = [{'payload': 'payloadZ'}]
     mock_FSM.return_value.create_FSM_instance.side_effect = Exception()
     lambda_timer_handler()
     mock_logging.exception.assert_called_with(
         'Critical error handling entity: %s', {'payload': 'payloadZ'})
コード例 #2
0
 def test_lambda_timer_handler(self, mock_process_payload,
                               mock_retriable_entities):
     mock_retriable_entities.return_value = [{
         'payload': 'payloadZ',
         'correlation_id': 'abc123'
     }]
     lambda_timer_handler()
     mock_process_payload.assert_called_with('payloadZ',
                                             {'source': 'dynamodb_retry'})
コード例 #3
0
        shard_its.append(shard_it)

dynamodb_old_images = {}
seen_seq_num = set()

# now loop on the stream, pulling records and calling
# the lambda handler with something approximating a lambda
# request
while True:

    lambda_context = {}

    if args.run_timer_lambda:

        # run the timer handler
        lambda_timer_handler()

    if args.run_sqs_lambda and sqs_conn:

        # receive up to 10 messages from SQS
        sqs_messages = []
        response = sqs_conn.receive_message(QueueUrl=sqs_queue_url,
                                            MaxNumberOfMessages=10)
        sqs_messages = response.get(AWS_SQS.Messages, [])

        if sqs_messages:

            # create the lambda event
            lambda_event = {AWS_LAMBDA.Records: []}

            # populate the lambda event