0

我想知道是誰創建了一個特定的實例。我正在使用Cloud Trail查找統計信息,但我無法獲取創建該實例的人的特定統計信息。我使用Python和Boto3來查找細節。 我正在使用此代碼 - 從boto3中的雲軌跡查找事件(),以提取有關實例的信息。誰使用Boto和Python創建了Amazon EC2實例?

ct_conn = sess.client(service_name='cloudtrail',region_name='us-east-1') 


events=ct_conn.lookup_events() 
+0

的樣品,你可以下載CloudTrail日誌,爲RunInstances過濾器,找到具體的實例ID,然後檢索來自登錄用戶的身份? – jarmod

+0

你能提供一個代碼片段嗎?或者如何使用博託來解決這個問題? –

+0

請顯示您正在嘗試使用的代碼@upaangsaxena。 – tedder42

回答

1

我使用lookup_events()函數發現了上述問題的解決方案。

ct_conn = sess.client(service_name='cloudtrail',region_name='us-east-1') 

events_dict= ct_conn.lookup_events(LookupAttributes=[{'AttributeKey':'ResourceName', 'AttributeValue':'i-xxxxxx'}]) 
for data in events_dict['Events']: 
    json_file= json.loads(data['CloudTrailEvent']) 
    print json_file['userIdentity']['userName'] 
+0

如果可能,你可以提供整個代碼嗎?或者你也可以在「css_conn = sess.client(service_name ='cloudtrail',region_name ='us-east' -1')「 –

+0

您可以在ct_conn行上方定義會話對象。 –

0

@Karthik - 下面是一個創建會話

import boto3 
import json 
import os 

session = boto3.Session(region_name='us-east-1',aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'],aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY']) 

ct_conn = session.client(service_name='cloudtrail',region_name='us-east-1') 

events_dict= ct_conn.lookup_events(LookupAttributes=[{'AttributeKey':'ResourceName', 'AttributeValue':'i-xxx'}]) 

for data in events_dict['Events']: 
    json_file= json.loads(data['CloudTrailEvent']) 
    print (json_file['userIdentity']['userName'])