У меня есть лямбда-функция Python, которая получает сообщения от AWS MQ, и с этими сообщениями мне нужно поместить их в Kinesis.Я перешел по этой ссылке, но это не сильно помогло.Так что Роб помог мне пройти через это.
Мое последнее достижение - моя учетная запись Kinesis in Different AWS с именем роли, ARN, StreamARN, именем потока и конечной точкой, а также ключом раздела.Какие изменения мне нужно внести в мой код ниже?
Код:
import time
import boto3
import stomp
import json
kinesis_client = boto3.client('kinesis')
class Listener(stomp.ConnectionListener):
def on_error(self, headers, message):
print('received an error "%s"' % message)
def on_message(self, headers, message):
print('received a message %s (%s)'%(message, headers))
kinesis_client.put_record(
StreamName='',
Data=b'bytes',
PartitionKey='1'
)
def lambda_handler(event, context):
conn = stomp.Connection(host_and_ports=[('b-4714-4441-8166-47aae158281a-1.mq.eu-central-1.amazonaws.com', 61614)])
lst = Listener()
conn.set_listener('Listener', lst)
conn.set_ssl(for_hosts=[('b-4714-4441-8166-47aae158281a-1.mq.eu-central-1.amazonaws.com', 61614)])
conn.start()
print('CONNECTION Started')
conn.connect(login='test_mq', passcode='',wait=True)
print('CONNECTION established')
conn.subscribe(destination='/queue/', id=1, ack='auto', headers={'transformation' : 'jms-map-json'})
print('CONNECTION Subscribed')
time.sleep(10)
conn.disconnect()
return