| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- ##
- ## 1、HTTPS
- import boto3
- import json
- client = boto3.client('dynamodb')
- table_name = 'haha'
- def updata_ddb(client,mykey,order,msg):
- response = client.get_item(TableName='hehe',Key={'mykey':{'S':mykey}})
- if response.get('Item') == None and response.get('Item').get('https') == None:
- table.update_item(TableName=table_name,
- Key={'mykey': {'S':mykey}},
- UpdateExpression='SET https = :https, order = :order',
- ExpressionAttributeValues={
- ':https': {
- 'S': msg},
- ':order':{
- 'S': order}
- })
- else:
- pass
- def lambda_handler(event, context):
- message = json.loads(event['body'])['Message']
- mykey = json.loads(event['body'])['MessageAttributes']['mykey']['Value']
- order_orgain = json.loads(event['body'])['MessageAttributes']['order']['Value']
- order = f"{order_orgain.split(' ')[0][-1]}{order_orgain.split(' ')[1][-1]}{order_orgain.split(' ')[2][-1]}"
- updata_ddb(client=client,mykey=mykey,order=order,msg=message)
- return {
- 'statusCode': 200,
- 'body': json.dumps('Hello from Lambda!')
- }
- # sqs
- import boto3
- import json
- client = boto3.client('dynamodb')
- table_name = 'haha'
- def updata_ddb(client,mykey,msg):
- response = client.get_item(TableName='hehe',Key={'mykey':{'S':mykey}})
- if response.get('Item') == None and response.get('Item').get('sqs') == None:
- table.update_item(TableName=table_name,
- Key={'mykey': {'S':mykey}},
- UpdateExpression='SET sqs = :sqs',
- ExpressionAttributeValues={
- ':sqs': {
- 'S': msg},
- })
- else:
- pass
- def lambda_handler(event,context):
- # TODO
- message = json.loads(event['Records'][0]['body'])['Message']
- mykey = json.loads(event['Records'][0]['body'])['MessageAttributes']['mykey']['Value']
- updata_ddb(client=client,mykey=mykey,msg=message)
- return {
- 'statusCode': 200,
- 'body': json.dumps('Hello from Lambda!')
- }
- # lambda
- import boto3
- import json
- import time
- client = boto3.client('dynamodb')
- table_name = 'haha'
- def updata_ddb(client,mykey,msg):
- response = client.get_item(TableName='hehe',Key={'mykey':{'S':mykey}})
- if response.get('Item') == None and response.get('Item').get('lambda') == None:
- table.update_item(TableName=table_name,
- Key={'mykey': {'S':mykey}},
- UpdateExpression='SET lambda = :lambda',
- ExpressionAttributeValues={
- ':lambda': {
- 'S': msg},
- })
- else:
- pass
- def exec_sql(mykey,myvalue):
- conn2 = pymysql.connect(
- host='da.amazonaws.com.cn',
- port=3306,
- user='admin',
- passwd='12345678',
- db='cmd',
- charset='utf8mb4')
- cs2 = conn2.cursor()
- ex_sql = f'INSERT INTO kv (mykey, myvalue) VALUES ("{mykey}", "{myvalue}");'
- cs2.execute(ex_sql)
- conn2.commit()
- cs2.close()
- conn2.close()
- def sorta(num,sqs,https,lambdaa):
- if num == '012':
- return(f"{sqs}{https}{lambdaa}")
- elif num == '021':
- return(f"{sqs}{lambdaa}{https}")
- elif num == '102':
- return(f"{https}{sqs}{lambdaa}")
- elif num == '120':
- return(f"{lambdaa}{sqs}{https}")
- elif num == '201':
- return(f"{https}{lambdaa}{sqs}")
- elif num == '210':
- return(f"{lambdaa}{https}{sqs}")
- def lambda_handler(event,context):
- mykey = event['Records'][0]['Sns']['MessageAttributes']['mykey']['Value']
- message = event['Records'][0]['Sns']['Message']
- updata_ddb(client=client,mykey=mykey,msg=message)
- time.sleep(0.5)
- response = client.get_item(TableName='hehe',Key={'mykey':{'S':mykey}})
- sqs_code = response.get('Item').get('sqs')
- https_code = response.get('Item').get('https')
- order_code = response.get('Item').get('order')
- lambda_code = response.get('Item').get('lambda')
- if sqs_code not None and https_code not None and order_code not None and lambda_code not None:
- myvalue = sorta(num=order_code,sqs=sqs_code,https=https_code,lambdaa=lambda_code)
- exec_sql(mykey=mykey,myvalue=myvalue)
- else:
- response = client.get_item(TableName='hehe',Key={'mykey':{'S':mykey}})
- sqs_code = response.get('Item').get('sqs')
- https_code = response.get('Item').get('https')
- order_code = response.get('Item').get('order')
- lambda_code = response.get('Item').get('lambda')
- myvalue = sorta(num=order_code,sqs=sqs_code,https=https_code,lambdaa=lambda_code)
- exec_sql(mykey=mykey,myvalue=myvalue)
- return {
- 'statusCode': 200,
- 'body': json.dumps('Hello from Lambda!')
- }
-
|