Analyser S3 CloudTrail Log à l'aide de Boto

en premier

Je voulais utiliser Boto (Python SDK of AWS) pour analyser le journal de CloudTrail sur S3, mais il y avait des points addictifs et un échantillon du début qui me seraient très utiles. Je n'ai pas bien trouvé le code, alors je vais le mettre au dos du dépliant pour votre référence.

Où je suis devenu accro

En outre, le journal de CloudTrail est comme Utiliser Loggly facilite l'analyse.

À propos du code Python

Éléments qui doivent être définis individuellement

ʻAws_access_key_id, ʻaws_secret_access_key, target_path, proxy, proxy_port doivent être définis individuellement.

Supplément

Décrire le flux de code

Le flux de traitement est le suivant.


import boto.s3.connection, gzip, StringIO, json

aws_access_key_id='AKKBUGOIU4434DDTT'
aws_secret_access_key='78oiupoiuh7++REugoiusGSEE'
target_bucket = 'your-backet-name'
target_path = 'CroudTrail/AWSLogs/1234567899999888/CloudTrail/us-west-2/2015/07'

def main():
  s3Instance = boto.s3.connection.S3Connection \
    (aws_access_key_id, aws_secret_access_key, proxy='your.proxy.server.com', proxy_port=8080)
  s3Bucket   = s3Instance.get_bucket(target_bucket)
  bucketList = s3Bucket.list(prefix=target_path)

  for count, itemOne in enumerate(bucketList):
    s3BucketKey = s3Bucket.get_key(itemOne.name)
    buffer_gz = s3BucketKey.get_contents_as_string()
    stringBuffer = StringIO.StringIO(buffer_gz)
    buffer_text = gzip.GzipFile(fileobj=stringBuffer)

    try:
      responseJSON = json.loads(buffer_text.read())
    except Exception, e:
      print e
    else:
      for count, itemTwo in enumerate(responseJSON['Records']):
        if itemTwo['eventSource'] == 'rds.amazonaws.com':
          print json.dumps(itemTwo, separators=(',', ':'), indent=2)
          print 'Event name = %s' % (itemTwo['eventName'])
          print '================================='

    stringBuffer.close()
    buffer_text.close()

if __name__ == '__main__':
  main()

Recommended Posts

Analyser S3 CloudTrail Log à l'aide de Boto
Utilisez boto pour télécharger le fichier depuis S3.
Téléchargeur S3 avec boto
[S3] CRUD avec S3 utilisant Python [Python]
Opération S3 avec python boto3