[
https://issues.apache.org/jira/browse/CARBONDATA-3064?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ravindra Pesala resolved CARBONDATA-3064.
-----------------------------------------
Resolution: Fixed
> Support separate audit log
> --------------------------
>
> Key: CARBONDATA-3064
> URL: https://issues.apache.org/jira/browse/CARBONDATA-3064
> Project: CarbonData
> Issue Type: Improvement
> Reporter: Jacky Li
> Assignee: Jacky Li
> Priority: Major
> Fix For: 1.5.1
>
> Time Spent: 8h 20m
> Remaining Estimate: 0h
>
> Currently, CarbonData outputs audit log with other level log together in one
> log file, it is not easy for user to check the audit. And sometimes the audit
> information is not complete since it depends on each Command to invoke Logger
> in its run function.
> To improve it, I propose a new audit log implementation by following:
> 1. Separate the audit log from normal log, user can configure log4j to output
> the audit log in a separate file
> 2. The audit log should have a common format that includes at least: time,
> username, operation name, operation id that identify this operation, status
> (success or failure), other extra information like data loading size, time
> spent
> 3. The audit log should be in JSON format to enable analytic tool support in
> the future.
> For example, the audit log will be look like following
> {"time":"2018-10-31 15:02:12","username":"anonymous","opName":"CREATE
> TABLE","opId":"115794874155743","opStatus":"START"}
> {"time":"2018-10-31 15:02:12","username":"anonymous","opName":"CREATE
> TABLE","opId":"115794874155743","opStatus":"SUCCESS","opTime":"542
> ms","tableId":"default.t1","extraInfo":{"external":"false"}}
> {"time":"2018-10-31 15:02:15","username":"anonymous","opName":"INSERT
> INTO","opId":"115797876187366","opStatus":"START"}
> {"time":"2018-10-31 15:02:19","username":"anonymous","opName":"INSERT
> INTO","opId":"115797876187366","opStatus":"SUCCESS","opTime":”4043
> ms","tableId":"default.t1","extraInfo":{"SegmentId":"0","DataSize":"403.0B","IndexSize":"246.0B"}}
> {"time":"2018-10-31 15:02:33","username":"anonymous","opName":"DROP
> TABLE","opId":"115816322828613","opStatus":"START"}
> {"time":"2018-10-31 15:02:34","username":"anonymous","opName":"DROP
> TABLE","opId":"115816322828613","opStatus":"SUCCESS","opTime":"131
> ms","tableId":"default.t1","extraInfo":{}}
> {"time":"2018-10-31 15:02:49","username":"anonymous","opName":"SHOW
> SEGMENTS","opId":"115831939703565","opStatus":"START"}
> {"time":"2018-10-31 15:02:49","username":"anonymous","opName":"SHOW
> SEGMENTS","opId":"115831939703565","opStatus":"SUCCESS","opTime":"30
> ms","tableId":"default.t2","extraInfo":{}}
> {"time":"2018-10-31 15:03:54","username":"anonymous","opName":"INSERT
> OVERWRITE","opId":"115896869484042","opStatus":"START"}
> {"time":"2018-10-31 15:03:56","username":"anonymous","opName":"INSERT
> OVERWRITE","opId":"115896869484042","opStatus":"SUCCESS","opTime":"2039
> ms","tableId":"default.t2","extraInfo":{"SegmentId":"0","DataSize":"403.0B","IndexSize":"246.0B”}}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)