Мне нужно проанализировать журналы EC2 в облачных часах.
У меня нет проблем с перемещением их куда-нибудь (например, S3), но формат довольно сложный. Каждый файл содержит несколько блоков со структурой, показанной ниже. Каждый из этих модулей имеет список «logEvents» со многими событиями. Задача состоит в том, чтобы проанализировать часть «сообщения» события, чтобы извлечь из нее что-то значимое.
В идеале я хотел бы преобразовать "json" ниже в формат отношений со столбцами "loGroup", "logStream", "timestamp", "securityID", "AccountName" ... и так далее.
Есть идеи, как это сделать?
{
"messageType": "DATA_MESSAGE",
"owner": "111111111111",
"logGroup": "loggroup-test",
"logStream": "i-stream",
"logEvents": [
{
"id": "34324324324324324324354354354354354354354354354354354354325",
"timestamp": 1541152802821,
"message": "[Security] [INFORMATION] [23213] [Microsoft-Windows-Security-Auditing] [A logon was attempted using explicit credentials.
Subject:
Security ID: XXXXX
Account Name: XXXXX$
Account Domain: XX
Logon ID: 0xXXX
Logon GUID: {00000000-0000-0000-0000-000000000000}
Account Whose Credentials Were Used:
Account Name: XXXXXXX
Account Domain: XXX.XXXX
Logon GUID: {00000000-0000-0000-0000-000000000000}
(more info here...)
"-->end of the "message"
},
{
"another log event"
},
{
"another log event"
}
]
}