Index: api/src/main/java/org/apache/logging/log4j/status/StatusLogger.java
===================================================================
--- api/src/main/java/org/apache/logging/log4j/status/StatusLogger.java	(revision 1433193)
+++ api/src/main/java/org/apache/logging/log4j/status/StatusLogger.java	(working copy)
@@ -21,6 +21,7 @@
 import org.apache.logging.log4j.Level;
 import org.apache.logging.log4j.Marker;
 import org.apache.logging.log4j.message.Message;
+import org.apache.logging.log4j.util.PropertiesUtil;
 import org.apache.logging.log4j.util.PropsUtil;
 
 import java.util.ArrayList;
@@ -45,7 +46,7 @@
 
     private static final String NOT_AVAIL = "?";
 
-    private static final int MAX_ENTRIES = Integer.getInteger(MAX_STATUS_ENTRIES, 200);
+    private static final int MAX_ENTRIES = PropertiesUtil.getSystemPropertyAsInt(MAX_STATUS_ENTRIES, 200);
 
     // private static final String FQCN = AbstractLogger.class.getName();
 
Index: api/src/main/java/org/apache/logging/log4j/ThreadContext.java
===================================================================
--- api/src/main/java/org/apache/logging/log4j/ThreadContext.java	(revision 1433193)
+++ api/src/main/java/org/apache/logging/log4j/ThreadContext.java	(working copy)
@@ -23,6 +23,7 @@
 import org.apache.logging.log4j.spi.Provider;
 import org.apache.logging.log4j.spi.ThreadContextMap;
 import org.apache.logging.log4j.status.StatusLogger;
+import org.apache.logging.log4j.util.PropertiesUtil;
 import org.apache.logging.log4j.util.PropsUtil;
 import org.apache.logging.log4j.util.ProviderUtil;
 
@@ -62,11 +63,11 @@
 
     private static final String THREAD_CONTEXT_KEY = "log4j2.threadContextMap";
 
-    private static boolean all = Boolean.getBoolean(DISABLE_ALL);
+    private static boolean all = PropertiesUtil.getSystemPropertyAsBoolean(DISABLE_ALL);
 
-    private static boolean useMap = !(Boolean.getBoolean(DISABLE_MAP) || all);
+    private static boolean useMap = !(PropertiesUtil.getSystemPropertyAsBoolean(DISABLE_MAP) || all);
 
-    private static boolean useStack = !(Boolean.getBoolean(DISABLE_STACK) || all);
+    private static boolean useStack = !(PropertiesUtil.getSystemPropertyAsBoolean(DISABLE_STACK) || all);
 
     private static ThreadContextMap contextMap;
 
Index: api/src/main/java/org/apache/logging/log4j/util/PropertiesUtil.java
===================================================================
--- api/src/main/java/org/apache/logging/log4j/util/PropertiesUtil.java	(revision 0)
+++ api/src/main/java/org/apache/logging/log4j/util/PropertiesUtil.java	(revision 0)
@@ -0,0 +1,28 @@
+package org.apache.logging.log4j.util;
+
+public class PropertiesUtil
+{	
+    public static String getSystemPropertyAsString(final String name) {
+        String prop = null;
+        try {
+            prop = System.getProperty(name);
+        } catch (final SecurityException ignore) {
+            // Ignore
+        }
+        return prop;
+    }
+    public static int getSystemPropertyAsInt(final String name, final int defaultValue) {
+        final String prop = getSystemPropertyAsString(name);
+        int value = defaultValue;
+        try {
+            value = Integer.parseInt(prop);
+        } catch (final NumberFormatException ignore) {
+            // Ignore
+        }
+        return value;
+    }
+    public static boolean getSystemPropertyAsBoolean(final String name) {
+        final String prop = getSystemPropertyAsString(name);
+        return Boolean.parseBoolean(prop);
+    }
+}
Index: api/src/main/java/org/apache/logging/log4j/util/PropsUtil.java
===================================================================
--- api/src/main/java/org/apache/logging/log4j/util/PropsUtil.java	(revision 1433193)
+++ api/src/main/java/org/apache/logging/log4j/util/PropsUtil.java	(working copy)
@@ -57,12 +57,7 @@
     }
 
     public String getStringProperty(final String name) {
-        String prop = null;
-        try {
-            prop = System.getProperty(name);
-        } catch (final SecurityException e) {
-            // Ignore
-        }
+        String prop = PropertiesUtil.getSystemPropertyAsString(name);
         return (prop == null) ? props.getProperty(name) : prop;
     }
 
Index: core/src/main/java/org/apache/logging/log4j/core/helpers/PropertiesUtil.java
===================================================================
--- core/src/main/java/org/apache/logging/log4j/core/helpers/PropertiesUtil.java	(revision 1433193)
+++ core/src/main/java/org/apache/logging/log4j/core/helpers/PropertiesUtil.java	(working copy)
@@ -38,6 +38,7 @@
      */
     public static String getSystemProperty(final String key) {
         try {
+        	Boolean.getBoolean(key);
             return System.getProperty(key);
         } catch (final SecurityException ex) {
             LOGGER.error("Unable to access system property {} due to security restrictions. Defaulting to null",
Index: core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java
===================================================================
--- core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java	(revision 1433193)
+++ core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java	(working copy)
@@ -23,6 +23,7 @@
 import org.apache.logging.log4j.core.config.plugins.PluginElement;
 import org.apache.logging.log4j.core.config.plugins.PluginFactory;
 import org.apache.logging.log4j.core.helpers.Loader;
+import org.apache.logging.log4j.core.helpers.PropertiesUtil;
 import org.apache.logging.log4j.core.layout.PatternLayout;
 
 import java.io.IOException;
@@ -100,7 +101,7 @@
         final PrintStream printStream = target == Target.SYSTEM_OUT ?
             follow ? new PrintStream(new SystemOutStream()) : System.out :
             follow ? new PrintStream(new SystemErrStream()) : System.err;
-        if (!System.getProperty("os.name").startsWith("Windows") || Boolean.getBoolean("log4j.skipJansi")) {
+        if (!System.getProperty("os.name").startsWith("Windows") || Boolean.parseBoolean(PropertiesUtil.getSystemProperty("log4j.skipJansi"))) {
             return printStream;
         } else {
             try {
