Madhan Neethiraj created RANGER-5208: ----------------------------------------
Summary: refactor audit module to move each destination implementation to a separate module Key: RANGER-5208 URL: https://issues.apache.org/jira/browse/RANGER-5208 Project: Ranger Issue Type: Improvement Components: audit Reporter: Madhan Neethiraj Assignee: Madhan Neethiraj Ranger audit module, ranger-plugins-audit, has dependency on several libraries as it contains implementation of audit destinations like Solr, Elasticsearch, AmazonCloudWatch, Kafka, ORC, Hadoop FileSystem. These dependencies are transitively forced on to modules that consume ranger-plugins-audit library, like ranger-plugins-common, embeddedwebserver and Ranger authorization plugin implementations. Currently it is not possible for a plugin implementation to choose dependency on only the audit destinations the plugin needs/supports. Enabling this can help plugins to eliminate including unnecessary libraries. I suggest splitting contents of ranger-pliugins-audit module into following modules: * ranger-plugins-audit-core: contains audit module core, excluding all destination implementations * ranger-plugins-audit-solr: contains implementation of Solr destination * ranger-plugins-audit-es: contains implementation of Elasticsearch destination * ranger-plugins-audit-kafka: contains implementation of Kafka destination * ranger-plugins-audit-cloudwatch: contains implementation of Amazon CloudWatch destination * ranger-plugins-audit-file: contains implementation of local file destination * ranger-plugins-audit-hdfs: contains implementation of Hadoop FileSystem destination (HDFS/S3/ABFS-Gen2) * ranger-plugins-audit-log4j: contains implementation of log4j destination * ranger-plugins-audit-orc: contains implementation of ORC file destination For backward compatibility, ranger-plugins-audit module should continue to be made available; this module will simply have dependency on all new modules listed above. -- This message was sent by Atlassian Jira (v8.20.10#820010)