You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by na...@apache.org on 2011/03/22 17:46:38 UTC

svn commit: r1084246 - in /hive/trunk: ./ common/ common/src/java/conf/ conf/ ql/ ql/src/java/conf/ ql/src/java/org/apache/hadoop/hive/ql/session/

Author: namit
Date: Tue Mar 22 16:46:37 2011
New Revision: 1084246

URL: http://svn.apache.org/viewvc?rev=1084246&view=rev
Log:
HIVE-1983 Bundle Log4j configuration files in Hive JARs
(Carl Steinbach via namit)


Added:
    hive/trunk/common/src/java/conf/
    hive/trunk/common/src/java/conf/hive-log4j.properties
    hive/trunk/ql/src/java/conf/
    hive/trunk/ql/src/java/conf/hive-exec-log4j.properties
Removed:
    hive/trunk/conf/hive-exec-log4j.properties
    hive/trunk/conf/hive-log4j.properties
Modified:
    hive/trunk/build-common.xml
    hive/trunk/build.xml
    hive/trunk/common/build.xml
    hive/trunk/ql/build.xml
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java

Modified: hive/trunk/build-common.xml
URL: http://svn.apache.org/viewvc/hive/trunk/build-common.xml?rev=1084246&r1=1084245&r2=1084246&view=diff
==============================================================================
--- hive/trunk/build-common.xml (original)
+++ hive/trunk/build-common.xml Tue Mar 22 16:46:37 2011
@@ -284,6 +284,9 @@
       <compilerarg line="${javac.args} ${javac.args.warnings}" />
       <classpath refid="classpath"/>
     </javac>
+    <copy todir="${build.classes}" failonerror="false">
+      <fileset dir="${src.dir}/conf"/>
+    </copy>
   </target>
 
   <target name="jar" depends="compile">

Modified: hive/trunk/build.xml
URL: http://svn.apache.org/viewvc/hive/trunk/build.xml?rev=1084246&r1=1084245&r2=1084246&view=diff
==============================================================================
--- hive/trunk/build.xml (original)
+++ hive/trunk/build.xml Tue Mar 22 16:46:37 2011
@@ -313,10 +313,14 @@
     </copy>
     <copy todir="${target.conf.dir}">
      <fileset dir="${basedir}/conf">
-       <include name="*.properties"/>
        <include name="*.template"/>
      </fileset>
     </copy>
+    <copy file="${basedir}/common/src/java/conf/hive-log4j.properties"
+          tofile="${target.conf.dir}/hive-log4j.properties.template"/>
+    <copy file="${basedir}/ql/src/java/conf/hive-exec-log4j.properties"
+          tofile="${target.conf.dir}/hive-exec-log4j.properties.template"/>
+      
     <!-- Create php thrift package -->
     <copy todir="${target.lib.dir}/php">
      <fileset dir="${hive.root}/service/lib/php" excludes="${vcs.excludes}"/>

Modified: hive/trunk/common/build.xml
URL: http://svn.apache.org/viewvc/hive/trunk/common/build.xml?rev=1084246&r1=1084245&r2=1084246&view=diff
==============================================================================
--- hive/trunk/common/build.xml (original)
+++ hive/trunk/common/build.xml Tue Mar 22 16:46:37 2011
@@ -31,4 +31,5 @@ to call at top-level: ant deploy-contrib
     <echo message="Nothing to do!"/>
   </target>
 
+
 </project>

Added: hive/trunk/common/src/java/conf/hive-log4j.properties
URL: http://svn.apache.org/viewvc/hive/trunk/common/src/java/conf/hive-log4j.properties?rev=1084246&view=auto
==============================================================================
--- hive/trunk/common/src/java/conf/hive-log4j.properties (added)
+++ hive/trunk/common/src/java/conf/hive-log4j.properties Tue Mar 22 16:46:37 2011
@@ -0,0 +1,66 @@
+# Define some default values that can be overridden by system properties
+hive.root.logger=WARN,DRFA
+hive.log.dir=/tmp/${user.name}
+hive.log.file=hive.log
+
+# Define the root logger to the system property "hadoop.root.logger".
+log4j.rootLogger=${hive.root.logger}, EventCounter
+
+# Logging Threshold
+log4j.threshhold=WARN
+
+#
+# Daily Rolling File Appender
+#
+# Use the PidDailyerRollingFileAppend class instead if you want to use separate log files
+# for different CLI session.
+#
+# log4j.appender.DRFA=org.apache.hadoop.hive.ql.log.PidDailyRollingFileAppender
+
+log4j.appender.DRFA=org.apache.log4j.DailyRollingFileAppender
+
+log4j.appender.DRFA.File=${hive.log.dir}/${hive.log.file}
+
+# Rollver at midnight
+log4j.appender.DRFA.DatePattern=.yyyy-MM-dd
+
+# 30-day backup
+#log4j.appender.DRFA.MaxBackupIndex=30
+log4j.appender.DRFA.layout=org.apache.log4j.PatternLayout
+
+# Pattern format: Date LogLevel LoggerName LogMessage
+#log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n
+# Debugging Pattern format
+log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%F:%M(%L)) - %m%n
+
+
+#
+# console
+# Add "console" to rootlogger above if you want to use this 
+#
+
+log4j.appender.console=org.apache.log4j.ConsoleAppender
+log4j.appender.console.target=System.err
+log4j.appender.console.layout=org.apache.log4j.PatternLayout
+log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}: %m%n
+
+#custom logging levels
+#log4j.logger.xxx=DEBUG
+
+#
+# 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.category.DataNucleus=ERROR,DRFA
+log4j.category.Datastore=ERROR,DRFA
+log4j.category.Datastore.Schema=ERROR,DRFA
+log4j.category.JPOX.Datastore=ERROR,DRFA
+log4j.category.JPOX.Plugin=ERROR,DRFA
+log4j.category.JPOX.MetaData=ERROR,DRFA
+log4j.category.JPOX.Query=ERROR,DRFA
+log4j.category.JPOX.General=ERROR,DRFA
+log4j.category.JPOX.Enhancer=ERROR,DRFA
+

Modified: hive/trunk/ql/build.xml
URL: http://svn.apache.org/viewvc/hive/trunk/ql/build.xml?rev=1084246&r1=1084245&r2=1084246&view=diff
==============================================================================
--- hive/trunk/ql/build.xml (original)
+++ hive/trunk/ql/build.xml Tue Mar 22 16:46:37 2011
@@ -165,6 +165,9 @@
       <compilerarg line="${javac.args} ${javac.args.warnings}" />
       <classpath refid="classpath"/>
     </javac>
+    <copy todir="${build.classes}" failonerror="false">
+      <fileset dir="${src.dir}/conf"/>
+    </copy>
   </target>
 	
   <!-- Override jar target to specify main class and compiler stuff -->
@@ -192,7 +195,7 @@
     <!-- jar jarfile="${build.dir}/hive_${name}.jar" basedir="${build.classes}" / -->
     <jar jarfile="${build.dir}/hive-exec-${version}.jar">
       <fileset dir="${build.dir.hive}/common/classes" includes="**/*.class"/>
-      <fileset dir="${build.dir.hive}/ql/classes" includes="**/*.class"/>
+      <fileset dir="${build.dir.hive}/ql/classes" includes="**/*.class,**/*.properties"/>
       <fileset dir="${build.dir.hive}/serde/classes" includes="**/*.class"/>
       <fileset dir="${build.dir.hive}/thrift/classes" includes="**/*.class"/>
       <fileset dir="${build.dir.hive}/commons-lang/classes" includes="**/StringUtils.class,**/WordUtils.class"/>

Added: hive/trunk/ql/src/java/conf/hive-exec-log4j.properties
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/conf/hive-exec-log4j.properties?rev=1084246&view=auto
==============================================================================
--- hive/trunk/ql/src/java/conf/hive-exec-log4j.properties (added)
+++ hive/trunk/ql/src/java/conf/hive-exec-log4j.properties Tue Mar 22 16:46:37 2011
@@ -0,0 +1,55 @@
+# Define some default values that can be overridden by system properties
+hive.root.logger=INFO,FA
+hive.log.dir=/tmp/${user.name}
+hive.log.file=${hive.query.id}.log
+
+# Define the root logger to the system property "hadoop.root.logger".
+log4j.rootLogger=${hive.root.logger}, EventCounter
+
+# Logging Threshold
+log4j.threshhold=WARN
+
+#
+# File Appender
+#
+
+log4j.appender.FA=org.apache.log4j.FileAppender
+log4j.appender.FA.File=${hive.log.dir}/${hive.log.file}
+log4j.appender.FA.layout=org.apache.log4j.PatternLayout
+
+# Pattern format: Date LogLevel LoggerName LogMessage
+#log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n
+# Debugging Pattern format
+log4j.appender.FA.layout.ConversionPattern=%d{ISO8601} %-5p %c{2} (%F:%M(%L)) - %m%n
+
+
+#
+# console
+# Add "console" to rootlogger above if you want to use this
+#
+
+log4j.appender.console=org.apache.log4j.ConsoleAppender
+log4j.appender.console.target=System.err
+log4j.appender.console.layout=org.apache.log4j.PatternLayout
+log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}: %m%n
+
+#custom logging levels
+#log4j.logger.xxx=DEBUG
+
+#
+# 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.category.DataNucleus=ERROR,FA
+log4j.category.Datastore=ERROR,FA
+log4j.category.Datastore.Schema=ERROR,FA
+log4j.category.JPOX.Datastore=ERROR,FA
+log4j.category.JPOX.Plugin=ERROR,FA
+log4j.category.JPOX.MetaData=ERROR,FA
+log4j.category.JPOX.Query=ERROR,FA
+log4j.category.JPOX.General=ERROR,FA
+log4j.category.JPOX.Enhancer=ERROR,FA
+

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java?rev=1084246&r1=1084245&r2=1084246&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java Tue Mar 22 16:46:37 2011
@@ -285,10 +285,11 @@ public class SessionState {
     // allow hive log4j to override any normal initialized one
     URL hive_l4j = SessionState.class.getClassLoader().getResource(HIVE_L4J);
     if (hive_l4j == null) {
-      System.out.println(HIVE_L4J + " not found");
+      System.out.println("Unable to initialize logging. " + HIVE_L4J + " not found on CLASSPATH!");
     } else {
       LogManager.resetConfiguration();
       PropertyConfigurator.configure(hive_l4j);
+      SessionState.getConsole().printInfo("Logging initialized using configuration in " + hive_l4j);
     }
   }