ElasticSearch-cw.py 921 B

12345678910111213141516171819202122232425262728293031
  1. import boto3
  2. import re,json,base64,gzip
  3. import requests
  4. from requests_aws4auth import AWS4Auth
  5. region = 'cn-northwest-1'
  6. service = 'es'
  7. credentials = boto3.Session().get_credentials()
  8. awsauth = AWS4Auth(credentials.access_key,credentials.secret_key,region,service,session_token=credentials.token)
  9. host = 'https://search-es-test-rssutkotldfmnca64hpfbi5jya.cn-northwest-1.es.amazonaws.com.cn'
  10. index = 'lambda-cw'
  11. type_a = 'lambda-type'
  12. url = host + '/' + index + '/' + type_a
  13. headers = {"Content-Type":"application/json"}
  14. def lambda_handler(event, context):
  15. de_content = base64.b64decode(event['awslogs']['data'])
  16. ret = json.loads(gzip.decompress(de_content).decode('utf8'))
  17. # log_msg = ret['logEvents'][0]['message']
  18. # tup_log = log_msg.split(' ', -1)
  19. # tup_log = json.loads(tup_log)
  20. # print(type(tup_log))
  21. r = requests.post(url,auth=awsauth,json=ret,headers=headers)
  22. print(r)