diff --git common/src/java/conf/hive-log4j.properties common/src/java/conf/hive-log4j.properties
index d32dc1b..97564aa 100644
--- common/src/java/conf/hive-log4j.properties
+++ common/src/java/conf/hive-log4j.properties
@@ -69,7 +69,7 @@ log4j.appender.console.encoding=UTF-8
# Event Counter Appender
# Sends counts of logging messages at different severity levels to Hadoop Metrics.
#
-log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
+log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter
log4j.category.DataNucleus=ERROR,DRFA
diff --git data/conf/hive-log4j.properties data/conf/hive-log4j.properties
index 0b5c164..885c86f 100644
--- data/conf/hive-log4j.properties
+++ data/conf/hive-log4j.properties
@@ -62,7 +62,7 @@ log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}:
# Event Counter Appender
# Sends counts of logging messages at different severity levels to Hadoop Metrics.
#
-log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
+log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter
log4j.category.DataNucleus=ERROR,DRFA
diff --git pdk/scripts/conf/log4j.properties pdk/scripts/conf/log4j.properties
index da12f2c..a4771b7 100644
--- pdk/scripts/conf/log4j.properties
+++ pdk/scripts/conf/log4j.properties
@@ -66,7 +66,7 @@ log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}:
# Event Counter Appender
# Sends counts of logging messages at different severity levels to Hadoop Metrics.
#
-log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
+log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter
log4j.category.DataNucleus=ERROR,DRFA
diff --git ql/src/java/conf/hive-exec-log4j.properties ql/src/java/conf/hive-exec-log4j.properties
index 929cb59..7121379 100644
--- ql/src/java/conf/hive-exec-log4j.properties
+++ ql/src/java/conf/hive-exec-log4j.properties
@@ -57,7 +57,7 @@ log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}:
# Event Counter Appender
# Sends counts of logging messages at different severity levels to Hadoop Metrics.
#
-log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
+log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter
log4j.category.DataNucleus=ERROR,FA
diff --git shims/ivy.xml shims/ivy.xml
index 9ee8c04..c5a8437 100644
--- shims/ivy.xml
+++ shims/ivy.xml
@@ -40,6 +40,7 @@
transitive="false"/>
+
EVENT_COUNTER_SHIM_CLASSES =
+ new HashMap();
+
+ static {
+ EVENT_COUNTER_SHIM_CLASSES.put("0.20", "org.apache.hadoop.metrics.jvm.EventCounter");
+ EVENT_COUNTER_SHIM_CLASSES.put("0.20S", "org.apache.hadoop.log.metrics.EventCounter");
+ EVENT_COUNTER_SHIM_CLASSES.put("0.23", "org.apache.hadoop.log.metrics.EventCounter");
+ }
/**
* Factory method to get an instance of HadoopShims based on the
@@ -78,6 +92,13 @@ public static synchronized JettyShims getJettyShims() {
}
return jettyShims;
}
+
+ public static synchronized AppenderSkeleton getEventCounter() {
+ if (eventCounter == null) {
+ eventCounter = loadShims(EVENT_COUNTER_SHIM_CLASSES, AppenderSkeleton.class);
+ }
+ return eventCounter;
+ }
public static synchronized HadoopThriftAuthBridge getHadoopThriftAuthBridge() {
if (getHadoopShims().isSecureShimImpl()) {