Github user arshadmohammad commented on a diff in the pull request:
https://github.com/apache/zookeeper/pull/338#discussion_r217179715
--- Diff:
src/java/main/org/apache/zookeeper/server/FinalRequestProcessor.java ---
@@ -465,6 +488,127 @@ public void processRequest(Request request) {
}
}
+ private void addSuccessAudit(Request request, ServerCnxn cnxn, String
op, String path) {
+ addSuccessAudit(request, cnxn, op, path, null);
+ }
+
+ private void addSuccessAudit(Request request, ServerCnxn cnxn, String
op, String path,
+ String acl) {
+ if (!ZKAuditLogger.isAuditEnabled) {
+ return;
+ }
+ ZKAuditLogger.logSuccess(request.getUsers(), op, path, acl,
cnxn.getSessionIdHex(),
+ cnxn.getHostAddress());
+ }
+
+ private void addFailureAudit(Request request, ServerCnxn cnxn, String
op, String path) {
+ addFailureAudit(request, cnxn, op, path, null);
+ }
+
+ private void addFailureAudit(Request request, ServerCnxn cnxn, String
op, String path,
+ String acl) {
+ if (!ZKAuditLogger.isAuditEnabled) {
+ return;
+ }
+ ZKAuditLogger.logFailure(request.getUsers(), op, path, acl,
cnxn.getSessionIdHex(),
+ cnxn.getHostAddress());
+ }
+
+ private void addAuditLog(Request request, ServerCnxn cnxn, String op,
String path, String acl,
+ Code err) {
+ if (!ZKAuditLogger.isAuditEnabled) {
+ return;
+ }
+ if (err == Code.OK) {
+ ZKAuditLogger.logSuccess(request.getUsers(), op, path, acl,
cnxn.getSessionIdHex(),
+ cnxn.getHostAddress());
+ } else {
+ ZKAuditLogger.logFailure(request.getUsers(), op, path, acl,
cnxn.getSessionIdHex(),
+ cnxn.getHostAddress());
+ }
+ }
+
+ private String getACLs(Request request)
+ {
+ ByteBuffer reqData = request.request.duplicate();
+ reqData.rewind();
+ SetACLRequest setACLRequest = new SetACLRequest();
+ try {
+ ByteBufferInputStream.byteBuffer2Record(reqData,
setACLRequest);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return ZKUtil.aclToString(setACLRequest.getAcl());
+ }
+
+ private void addFailedTxnAduitLog(Request request) {
+ if (!ZKAuditLogger.isAuditEnabled) {
+ return;
+ }
+ String op = AuditConstants.OP_CREATE;
+ String path=null;
+ long sessionId = -1;
+ String address = null;
+ String acls = null;
+ ByteBuffer reqData = request.request.duplicate();
+ reqData.rewind();
+ try {
+ sessionId = request.cnxn.getSessionId();
+ switch (request.type) {
+ case OpCode.create:
+ case OpCode.create2:
+ case OpCode.createContainer:
+ op = AuditConstants.OP_CREATE;
+ CreateRequest createRequest = new CreateRequest();
+ ByteBufferInputStream.byteBuffer2Record(reqData,
createRequest);
+ path=createRequest.getPath();
+ break;
+ case OpCode.delete:
+ case OpCode.deleteContainer:
+ op = AuditConstants.OP_DELETE;
+ //path = new String(request.request.array());
--- End diff --
removed
---