You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/07/20 16:55:25 UTC

[22/24] incubator-ignite git commit: # ignite-788: fileName

# ignite-788: fileName


Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/39cd7b83
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/39cd7b83
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/39cd7b83

Branch: refs/heads/ignite-788-last-review
Commit: 39cd7b83cc760f8ec6dd5b2c3614342abc8c55e6
Parents: 8ed4c2f
Author: ashutak <as...@gridgain.com>
Authored: Mon Jul 20 16:56:30 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Mon Jul 20 16:56:30 2015 +0300

----------------------------------------------------------------------
 config/ignite-log4j2.xml                        |  4 +-
 .../apache/ignite/internal/IgniteKernal.java    | 32 +++++++-------
 .../ignite/logger/log4j2/Log4J2Logger.java      | 45 +++++++++-----------
 3 files changed, 38 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/39cd7b83/config/ignite-log4j2.xml
----------------------------------------------------------------------
diff --git a/config/ignite-log4j2.xml b/config/ignite-log4j2.xml
index 57f567e..b6092a9 100644
--- a/config/ignite-log4j2.xml
+++ b/config/ignite-log4j2.xml
@@ -21,12 +21,10 @@
     <Appenders>
         <Console name="CONSOLE" target="SYSTEM_OUT">
             <PatternLayout pattern="[%d{ABSOLUTE}][%-5p][%t][%c{1}] %m%n"/>
-            <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="ACCEPT"/>
         </Console>
 
         <Console name="CONSOLE_ERR" target="SYSTEM_ERR">
             <PatternLayout pattern="[%d{ABSOLUTE}][%-5p][%t][%c{1}] %m%n"/>
-            <ThresholdFilter level="OFF" onMatch="DENY" onMismatch="ACCEPT"/>
         </Console>
 
         <Routing name="FILE">
@@ -75,7 +73,7 @@
             <AppenderRef ref="CONSOLE" level="DEBUG"/>
             -->
 
-            <AppenderRef ref="CONSOLE_ERR" level="ERROR"/>
+            <AppenderRef ref="CONSOLE_ERR" level="WARN"/>
             <AppenderRef ref="FILE" level="DEBUG"/>
         </Root>
     </Loggers>

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/39cd7b83/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index 024dc7b..880aec8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -1473,11 +1473,23 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
     private void ackAsciiLogo() {
         assert log != null;
 
-        String fileName = log.fileName();
-
         if (System.getProperty(IGNITE_NO_ASCII) == null) {
             String ver = "ver. " + ACK_VER_STR;
 
+            if (log.isInfoEnabled()) {
+                log.info(NL + NL +
+                        ">>>    __________  ________________  " + NL +
+                        ">>>   /  _/ ___/ |/ /  _/_  __/ __/  " + NL +
+                        ">>>  _/ // (7 7    // /  / / / _/    " + NL +
+                        ">>> /___/\\___/_/|_/___/ /_/ /___/   " + NL +
+                        ">>> " + NL +
+                        ">>> " + ver + NL +
+                        ">>> " + COPYRIGHT + NL +
+                        ">>> " + NL +
+                        ">>> Ignite documentation: " + "http://" + SITE + NL
+                );
+            }
+
             // Big thanks to: http://patorjk.com/software/taag
             // Font name "Small Slant"
             if (log.isQuiet()) {
@@ -1494,6 +1506,8 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
                     "",
                     "Quiet mode.");
 
+                String fileName = log.fileName();
+
                 if (fileName != null)
                     U.quiet(false, "  ^-- Logging to file '" +  fileName + '\'');
 
@@ -1501,20 +1515,6 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
                     "  ^-- To see **FULL** console log here add -DIGNITE_QUIET=false or \"-v\" to ignite.{sh|bat}",
                     "");
             }
-
-            if (log.isInfoEnabled()) {
-                log.info(NL + NL +
-                        ">>>    __________  ________________  " + NL +
-                        ">>>   /  _/ ___/ |/ /  _/_  __/ __/  " + NL +
-                        ">>>  _/ // (7 7    // /  / / / _/    " + NL +
-                        ">>> /___/\\___/_/|_/___/ /_/ /___/   " + NL +
-                        ">>> " + NL +
-                        ">>> " + ver + NL +
-                        ">>> " + COPYRIGHT + NL +
-                        ">>> " + NL +
-                        ">>> Ignite documentation: " + "http://" + SITE + NL
-                );
-            }
         }
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/39cd7b83/modules/log4j2/src/main/java/org/apache/ignite/logger/log4j2/Log4J2Logger.java
----------------------------------------------------------------------
diff --git a/modules/log4j2/src/main/java/org/apache/ignite/logger/log4j2/Log4J2Logger.java b/modules/log4j2/src/main/java/org/apache/ignite/logger/log4j2/Log4J2Logger.java
index c785c34..dafa034 100644
--- a/modules/log4j2/src/main/java/org/apache/ignite/logger/log4j2/Log4J2Logger.java
+++ b/modules/log4j2/src/main/java/org/apache/ignite/logger/log4j2/Log4J2Logger.java
@@ -29,6 +29,7 @@ import org.apache.logging.log4j.core.Logger;
 import org.apache.logging.log4j.core.appender.*;
 import org.apache.logging.log4j.core.appender.routing.*;
 import org.apache.logging.log4j.core.config.*;
+import org.apache.logging.log4j.core.filter.*;
 import org.apache.logging.log4j.core.layout.*;
 import org.jetbrains.annotations.*;
 
@@ -71,10 +72,10 @@ import static org.apache.ignite.IgniteSystemProperties.*;
  */
 public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
     /** */
-    public static final String NODE_ID = "nodeId";
+    private static final String NODE_ID = "nodeId";
 
     /** */
-    public static final String CONSOLE_APPENDER = "autoConfiguredIgniteConsoleAppender";
+    private static final String CONSOLE_APPENDER = "autoConfiguredIgniteConsoleAppender";
 
     /** */
     private static volatile boolean inited;
@@ -90,6 +91,7 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
     @SuppressWarnings("FieldAccessedSynchronizedAndUnsynchronized")
     private Logger impl;
 
+    /** Auto added at verbose mode console logger (optional). */
     private volatile Logger consoleLog;
 
     /** Quiet flag. */
@@ -310,15 +312,7 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
 
                 // User launched ignite in verbose mode and did not add console appender with INFO level
                 // to configuration and did not set IGNITE_CONSOLE_APPENDER to false.
-                if (errAppender != null) {
-                    consoleLog = createConsoleLogger(rootLogger, Level.TRACE);
-
-//                    if (errAppender.getThreshold() == Level.ERROR)
-//                        errAppender.setThreshold(Level.WARN);
-                }
-                else
-                    // No error console appender => create console appender with no level limit.
-                    consoleLog = createConsoleLogger(rootLogger, Level.INFO);
+                consoleLog = createConsoleLogger(errAppender != null);
             }
 
             quiet0 = quiet;
@@ -329,10 +323,9 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
     /**
      * Creates console appender with some reasonable default logging settings.
      *
-     * @param maxLevel Max logging level.
-     * @return New console appender.
+     * @return Logger with auto configured console appender.
      */
-    public static Logger createConsoleLogger(Logger log, Level maxLevel) {
+    public static Logger createConsoleLogger(boolean errConsoleAppenderWasFound) {
         LoggerContext ctx = (LoggerContext)LogManager.getContext(true);
 
         Configuration cfg = ctx.getConfiguration();
@@ -340,18 +333,23 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
         PatternLayout layout = PatternLayout.createLayout("[%d{ABSOLUTE}][%-5p][%t][%c{1}] %m%n", null, null,
             Charset.defaultCharset(), false, false, null, null);
 
-        Appender appender = ConsoleAppender.createAppender(layout, null, null, CONSOLE_APPENDER, null, null);
+        ThresholdFilter filter = null;
+
+        if (errConsoleAppenderWasFound)
+            filter = ThresholdFilter.createFilter(Level.WARN, Filter.Result.DENY, Filter.Result.ACCEPT);
 
-        appender.start();
+        final Appender consoleApp = ConsoleAppender.createAppender(layout, filter, null, CONSOLE_APPENDER, null, null);
+        consoleApp.start();
 
-        AppenderRef ref = AppenderRef.createAppenderRef(CONSOLE_APPENDER, null, null);
+        AppenderRef ref = AppenderRef.createAppenderRef(CONSOLE_APPENDER, Level.TRACE, null);
 
-        LoggerConfig logCfg = LoggerConfig.createLogger("false", Level.INFO, LogManager.ROOT_LOGGER_NAME, "",
-            new AppenderRef[] {ref}, null, null, null);
+        AppenderRef[] refs = {ref};
 
-        logCfg.addAppender(appender, null, null);
+        LoggerConfig logCfg = LoggerConfig.createLogger("false", Level.ALL, LogManager.ROOT_LOGGER_NAME, "",
+            refs, null, null, null);
 
-        cfg.addAppender(appender);
+        logCfg.addAppender(consoleApp, null, null);
+        cfg.addAppender(consoleApp);
 
         cfg.addLogger(LogManager.ROOT_LOGGER_NAME, logCfg);
 
@@ -370,9 +368,6 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
         System.setProperty(NODE_ID, U.id8(nodeId));
 
         ((LoggerContext)LogManager.getContext(false)).reconfigure();
-
-        // Hack. To touch the logger to create all log resources (files). Then #fileName() will work properly.
-        impl.log(Level.OFF, "");
     }
 
     /** {@inheritDoc} */
@@ -395,10 +390,12 @@ public class Log4J2Logger implements IgniteLogger, LoggerNodeIdAware {
 
         if (ctgr instanceof Class) {
             String name = ((Class<?>)ctgr).getName();
+
             return new Log4J2Logger((Logger)LogManager.getLogger(name), (Logger)LogManager.getContext().getLogger(name));
         }
 
         String name = ctgr.toString();
+
         return new Log4J2Logger((Logger)LogManager.getLogger(name), (Logger)LogManager.getContext().getLogger(name));
     }