0
我們有一個syslog-ng的服務器獲取包含JSON在日誌中MongoDB的日誌,樣本數低於:JSON調試運行:JSON到CSV解析
2016-10-17 19:54:12 f:local1.p:info h:10.133.126.79 prog:sharmongo-log m:sharmongo-log 2016-10-17T19:54:04.943+0330 I COMMAND [conn5573] command CLM.BillingAccount command: count { count: "BillingAccount", query: { $or: [ { billingAccount.customerCode: "C8088810719" } ] } } planSummary: COUNT_SCAN { billingAccount.customerCode: 1.0 } keyUpdates:0 writeConflicts:0 numYields:0 reslen:122 locks:{ Global: { acquireCount: { r: 2 } }, Database: { acquireCount: { r: 1 } }, Collection: { acquireCount: { r: 1 } } } protocol:op_query 216ms
我們需要插入進來的日誌到數據庫,首先我需要將日誌解析爲CSV,我想編寫一個python腳本來將日誌記錄更改爲CSV。因爲您可以看到日誌的一部分是JSON(如MongoDB文檔ant中所述,此girthub鏈接爲JSON格式)。日誌的JSON一部分是這樣的:
command: count {
count: "BillingAccount",
query: {
$or: [{
billingAccount.customerCode: "C8088810719"
}]
}
}
planSummary: COUNT_SCAN {
billingAccount.customerCode: 1.0
}
keyUpdates: 0 writeConflicts: 0 numYields: 0 reslen: 122 locks: {
Global: {
acquireCount: {
r: 2
}
},
Database: {
acquireCount: {
r: 1
}
},
Collection: {
acquireCount: {
r: 1
}
}
}
protocol: op_query 216 ms
,但我看到了很多在它的錯誤,當我想用一個蟒蛇json
庫來解析它,我得到一個錯誤。我需要將它改爲一種我不會再犯錯的形式,首先我引用了每一個關鍵字,因爲它們不是。但我又得到了以下錯誤:
除了這些錯誤一個主要問題是,我得到了一個以上的JSON在日誌中,這引起了我更多的錯誤,我需要知道,如果有一個python庫來幫助我解析這個JSON。你有什麼建議來解決這個問題?
您需要將所有內容都包含在'{''}'中,以便它成爲一個json對象。 –