You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2016/02/22 16:29:49 UTC
karaf git commit: [KARAF-4354] Provide a bin/run script
Repository: karaf
Updated Branches:
refs/heads/master f59278183 -> 57f398276
[KARAF-4354] Provide a bin/run script
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/57f39827
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/57f39827
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/57f39827
Branch: refs/heads/master
Commit: 57f398276bd3150525eb4cbf40ca17e556fd756c
Parents: f592781
Author: Guillaume Nodet <gn...@apache.org>
Authored: Mon Feb 22 16:29:28 2016 +0100
Committer: Guillaume Nodet <gn...@apache.org>
Committed: Mon Feb 22 16:29:28 2016 +0100
----------------------------------------------------------------------
.../base/src/main/resources/resources/bin/karaf | 4 +++
.../src/main/resources/resources/bin/karaf.bat | 6 ++++
.../resources/etc/org.ops4j.pax.logging.cfg | 5 ++--
.../karaf/main/KarafActivatorManager.java | 8 ++----
.../main/java/org/apache/karaf/main/Main.java | 3 +-
.../apache/karaf/main/lock/DefaultJDBCLock.java | 6 +---
.../apache/karaf/main/lock/GenericJDBCLock.java | 7 +----
.../apache/karaf/main/lock/SimpleFileLock.java | 3 +-
.../karaf/main/util/BootstrapLogManager.java | 30 ++++++++++++++++++++
9 files changed, 50 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/assemblies/features/base/src/main/resources/resources/bin/karaf
----------------------------------------------------------------------
diff --git a/assemblies/features/base/src/main/resources/resources/bin/karaf b/assemblies/features/base/src/main/resources/resources/bin/karaf
index 93236a5..9145431 100755
--- a/assemblies/features/base/src/main/resources/resources/bin/karaf
+++ b/assemblies/features/base/src/main/resources/resources/bin/karaf
@@ -416,6 +416,10 @@ run() {
OPTS="-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true"
shift
;;
+ 'run')
+ OPTS="-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -Dkaraf.log.console=true"
+ shift
+ ;;
'daemon')
OPTS="-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true"
KARAF_DAEMON="true"
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/assemblies/features/base/src/main/resources/resources/bin/karaf.bat
----------------------------------------------------------------------
diff --git a/assemblies/features/base/src/main/resources/resources/bin/karaf.bat b/assemblies/features/base/src/main/resources/resources/bin/karaf.bat
index 8b36998..011d72c 100644
--- a/assemblies/features/base/src/main/resources/resources/bin/karaf.bat
+++ b/assemblies/features/base/src/main/resources/resources/bin/karaf.bat
@@ -301,6 +301,7 @@ if "%KARAF_PROFILER%" == "" goto :RUN
if "%1" == "status" goto :EXECUTE_STATUS
if "%1" == "console" goto :EXECUTE_CONSOLE
if "%1" == "server" goto :EXECUTE_SERVER
+ if "%1" == "run" goto :EXECUTE_RUN
if "%1" == "daemon" goto :EXECUTE_DAEMON
if "%1" == "client" goto :EXECUTE_CLIENT
if "%1" == "clean" goto :EXECUTE_CLEAN
@@ -329,6 +330,11 @@ if "%KARAF_PROFILER%" == "" goto :RUN
shift
goto :RUN_LOOP
+:EXECUTE_RUN
+ SET OPTS=-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -Dkaraf.log.console=true
+ shift
+ goto :RUN_LOOP
+
:EXECUTE_DAEMON
SET OPTS=-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true
SET KARAF_DAEMON=true
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/assemblies/features/base/src/main/resources/resources/etc/org.ops4j.pax.logging.cfg
----------------------------------------------------------------------
diff --git a/assemblies/features/base/src/main/resources/resources/etc/org.ops4j.pax.logging.cfg b/assemblies/features/base/src/main/resources/resources/etc/org.ops4j.pax.logging.cfg
index f2d5ce0..48e1069 100644
--- a/assemblies/features/base/src/main/resources/resources/etc/org.ops4j.pax.logging.cfg
+++ b/assemblies/features/base/src/main/resources/resources/etc/org.ops4j.pax.logging.cfg
@@ -25,16 +25,17 @@ log4j2.rootLogger.level = INFO
# uncomment to use asynchronous loggers, which require mvn:com.lmax/disruptor/3.3.2 library
#log4j2.rootLogger.type = asyncRoot
#log4j2.rootLogger.includeLocation = false
-log4j2.rootLogger.appenderRefs = RollingFile, PaxOsgi
+log4j2.rootLogger.appenderRefs = RollingFile, PaxOsgi${karaf.log.console:+, Console}
log4j2.rootLogger.appenderRef.RollingFile.ref = RollingFile
log4j2.rootLogger.appenderRef.PaxOsgi.ref = PaxOsgi
+log4j2.rootLogger.appenderRef.Console.ref = Console
# Appenders configuration
log4j2.appenders = console, rolling, osgi
# CONSOLE appender not used by default
log4j2.appender.console.type = Console
-log4j2.appender.console.name = STDOUT
+log4j2.appender.console.name = Console
log4j2.appender.console.layout.type = PatternLayout
log4j2.appender.console.layout.pattern = ${log4j2.pattern}
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/KarafActivatorManager.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/KarafActivatorManager.java b/main/src/main/java/org/apache/karaf/main/KarafActivatorManager.java
index ad7de2b..48475d9 100644
--- a/main/src/main/java/org/apache/karaf/main/KarafActivatorManager.java
+++ b/main/src/main/java/org/apache/karaf/main/KarafActivatorManager.java
@@ -25,6 +25,7 @@ import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.jar.Manifest;
+import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -45,12 +46,7 @@ public class KarafActivatorManager {
public KarafActivatorManager(ClassLoader classLoader, Framework framework) {
this.classLoader = classLoader;
this.framework = framework;
- try{
- LOG.addHandler(BootstrapLogManager.getDefaultHandler());
- }catch(Exception e){
- e.printStackTrace();
- }
-
+ BootstrapLogManager.configureLogger(LOG);
}
void startKarafActivators() throws IOException {
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/Main.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/Main.java b/main/src/main/java/org/apache/karaf/main/Main.java
index ea68aab..4b4179e 100644
--- a/main/src/main/java/org/apache/karaf/main/Main.java
+++ b/main/src/main/java/org/apache/karaf/main/Main.java
@@ -33,6 +33,7 @@ import java.util.List;
import org.apache.felix.utils.properties.Properties;
import java.util.StringTokenizer;
+import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -235,7 +236,7 @@ public class Main {
BootstrapLogManager.setProperties(config.props, log4jConfigPath);
lockCallback = new KarafLockCallback();
InstanceHelper.updateInstancePid(config.karafHome, config.karafBase, true);
- LOG.addHandler(BootstrapLogManager.getDefaultHandler());
+ BootstrapLogManager.configureLogger(LOG);
for (String provider : config.securityProviders) {
addSecurityProvider(provider);
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/lock/DefaultJDBCLock.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/lock/DefaultJDBCLock.java b/main/src/main/java/org/apache/karaf/main/lock/DefaultJDBCLock.java
index 31bf499..a6d5a29 100644
--- a/main/src/main/java/org/apache/karaf/main/lock/DefaultJDBCLock.java
+++ b/main/src/main/java/org/apache/karaf/main/lock/DefaultJDBCLock.java
@@ -60,11 +60,7 @@ public class DefaultJDBCLock implements Lock {
int timeout;
public DefaultJDBCLock(Properties props) {
- try{
- LOG.addHandler(BootstrapLogManager.getDefaultHandler());
- }catch (Exception e){
- e.printStackTrace();
- }
+ BootstrapLogManager.configureLogger(LOG);
this.url = props.getProperty(PROPERTY_LOCK_URL);
this.driver = props.getProperty(PROPERTY_LOCK_JDBC_DRIVER);
this.user = props.getProperty(PROPERTY_LOCK_JDBC_USER, DEFAULT_USER);
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/lock/GenericJDBCLock.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/lock/GenericJDBCLock.java b/main/src/main/java/org/apache/karaf/main/lock/GenericJDBCLock.java
index 286c0d4..195e914 100644
--- a/main/src/main/java/org/apache/karaf/main/lock/GenericJDBCLock.java
+++ b/main/src/main/java/org/apache/karaf/main/lock/GenericJDBCLock.java
@@ -170,12 +170,7 @@ public class GenericJDBCLock implements Lock {
private int currentLockDelay;
public GenericJDBCLock(Properties props) {
- try {
- LOG.addHandler(BootstrapLogManager.getDefaultHandler());
- } catch (Exception e) {
- e.printStackTrace();
- }
-
+ BootstrapLogManager.configureLogger(LOG);
this.url = props.getProperty(PROPERTY_LOCK_URL);
this.driver = props.getProperty(PROPERTY_LOCK_JDBC_DRIVER);
this.user = props.getProperty(PROPERTY_LOCK_JDBC_USER, DEFAULT_USER);
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/lock/SimpleFileLock.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/lock/SimpleFileLock.java b/main/src/main/java/org/apache/karaf/main/lock/SimpleFileLock.java
index 7004f7f..cc9cd3e 100644
--- a/main/src/main/java/org/apache/karaf/main/lock/SimpleFileLock.java
+++ b/main/src/main/java/org/apache/karaf/main/lock/SimpleFileLock.java
@@ -37,9 +37,8 @@ public class SimpleFileLock implements Lock {
private FileLock lock;
public SimpleFileLock(Properties props) {
+ BootstrapLogManager.configureLogger(LOG);
try {
-
- LOG.addHandler( BootstrapLogManager.getDefaultHandler() );
String lock = props.getProperty(PROPERTY_LOCK_DIR);
if (lock != null) {
http://git-wip-us.apache.org/repos/asf/karaf/blob/57f39827/main/src/main/java/org/apache/karaf/main/util/BootstrapLogManager.java
----------------------------------------------------------------------
diff --git a/main/src/main/java/org/apache/karaf/main/util/BootstrapLogManager.java b/main/src/main/java/org/apache/karaf/main/util/BootstrapLogManager.java
index 5e093d5..9117525 100644
--- a/main/src/main/java/org/apache/karaf/main/util/BootstrapLogManager.java
+++ b/main/src/main/java/org/apache/karaf/main/util/BootstrapLogManager.java
@@ -27,8 +27,13 @@ import java.io.IOException;
import org.apache.felix.utils.properties.Properties;
import org.apache.felix.utils.properties.InterpolationHelper;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.logging.ConsoleHandler;
import java.util.logging.Handler;
import java.util.logging.LogRecord;
+import java.util.logging.Logger;
import java.util.logging.StreamHandler;
/**
@@ -57,6 +62,23 @@ public class BootstrapLogManager {
}
return instance.getDefaultHandlerInternal();
}
+
+ public static synchronized List<Handler> getDefaultHandlers() {
+ if (instance == null) {
+ throw new IllegalStateException("Properties must be set before calling getDefaultHandler");
+ }
+ return instance.getDefaultHandlersInternal();
+ }
+
+ public static void configureLogger(Logger logger) {
+ try {
+ for (Handler handler : getDefaultHandlers()) {
+ logger.addHandler(handler);
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
public static void setProperties(Properties configProps) {
setProperties(configProps, null);
@@ -81,6 +103,14 @@ public class BootstrapLogManager {
}
}
+ private List<Handler> getDefaultHandlersInternal() {
+ if (Boolean.getBoolean("karaf.log.console")) {
+ return Arrays.asList(new ConsoleHandler(), getDefaultHandlerInternal());
+ } else {
+ return Collections.singletonList(getDefaultHandlerInternal());
+ }
+ }
+
private Properties loadPaxLoggingConfig() {
Properties props = new Properties();
FileInputStream fis = null;