Skip to content

Commit

Permalink
Remove dependency on slf4j for logging, create own internal abstracti…
Browse files Browse the repository at this point in the history
…on, closes #146.
  • Loading branch information
kimchy committed Apr 20, 2010
1 parent b1721ac commit bda476e
Show file tree
Hide file tree
Showing 47 changed files with 1,204 additions and 415 deletions.
2 changes: 2 additions & 0 deletions .idea/dictionaries/kimchy.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/libraries/logging.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ task explodedDist(dependsOn: [configurations.distLib], description: 'Builds a mi

ant.delete { fileset(dir: explodedDistLibDir, includes: "$archivesBaseName-*-javadoc.jar") }
ant.delete { fileset(dir: explodedDistLibDir, includes: "$archivesBaseName-*-sources.jar") }
ant.delete { fileset(dir: explodedDistLibDir, includes: "slf4j-*.jar") } // no need for slf4j

ant.chmod(dir: "$explodedDistDir/bin", perm: "ugo+rx", includes: "**/*")
}
Expand Down
5 changes: 3 additions & 2 deletions modules/elasticsearch/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,9 @@ uploadArchives {

pom.whenConfigured {pom ->
pom.dependencies = pom.dependencies.findAll {dep -> dep.scope != 'test' } // removes the test scoped ones
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('log4j') } // removes the test scoped ones
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('jline') } // removes the test scoped ones
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('log4j') }
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('slf4j') }
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('jline') }
pom.dependencies.findAll {dep -> dep.groupId == 'jgroups' }*.scope = 'runtime'
pom.dependencies.findAll {dep -> dep.groupId == 'org.jboss.netty' }*.scope = 'runtime'
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@
import org.elasticsearch.util.Classes;
import org.elasticsearch.util.Tuple;
import org.elasticsearch.util.jline.ANSI;
import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.logging.Loggers;
import org.elasticsearch.util.logging.log4j.LogConfigurator;
import org.elasticsearch.util.settings.Settings;
import org.slf4j.Logger;

import java.io.File;
import java.util.Set;
Expand Down Expand Up @@ -162,7 +162,7 @@ public static void main(String[] args) {
System.err.close();
}
} catch (Throwable e) {
Logger logger = Loggers.getLogger(Bootstrap.class);
ESLogger logger = Loggers.getLogger(Bootstrap.class);
if (bootstrap.node != null) {
logger = Loggers.getLogger(Bootstrap.class, bootstrap.node.settings().get("name"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@

package org.elasticsearch.discovery.jgroups;

import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.logging.ESLoggerFactory;
import org.jgroups.logging.CustomLogFactory;
import org.jgroups.logging.Log;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
* @author kimchy (Shay Banon)
Expand All @@ -34,14 +34,14 @@ public class JgroupsCustomLogFactory implements CustomLogFactory {
}

@Override public Log getLog(String category) {
return new Slf4jLog(LoggerFactory.getLogger(category.replace("org.jgroups.", "jgroups.").replace(".protocols.", ".")));
return new JgroupsESLog(ESLoggerFactory.getLogger(category.replace("org.jgroups.", "jgroups.").replace(".protocols.", ".")));
}

private static class Slf4jLog implements Log {
private static class JgroupsESLog implements Log {

private final Logger logger;
private final ESLogger logger;

private Slf4jLog(Logger logger) {
private JgroupsESLog(ESLogger logger) {
this.logger = logger;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import org.elasticsearch.ElasticSearchException;
import org.elasticsearch.http.*;
import org.elasticsearch.transport.BindTransportException;
import org.elasticsearch.transport.netty.NettyInternalESLoggerFactory;
import org.elasticsearch.util.SizeUnit;
import org.elasticsearch.util.SizeValue;
import org.elasticsearch.util.component.AbstractLifecycleComponent;
Expand All @@ -40,7 +41,6 @@
import org.jboss.netty.handler.timeout.ReadTimeoutException;
import org.jboss.netty.logging.InternalLogger;
import org.jboss.netty.logging.InternalLoggerFactory;
import org.jboss.netty.logging.Slf4JLoggerFactory;

import java.io.IOException;
import java.net.InetAddress;
Expand All @@ -57,9 +57,9 @@
public class NettyHttpServerTransport extends AbstractLifecycleComponent<HttpServerTransport> implements HttpServerTransport {

static {
InternalLoggerFactory.setDefaultFactory(new Slf4JLoggerFactory() {
InternalLoggerFactory.setDefaultFactory(new NettyInternalESLoggerFactory() {
@Override public InternalLogger newInstance(String name) {
return super.newInstance(name.replace("org.jboss.netty.", "netty.lib."));
return super.newInstance(name.replace("org.jboss.netty.", "netty."));
}
});
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@

import org.elasticsearch.index.settings.IndexSettings;
import org.elasticsearch.jmx.ManagedGroupName;
import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.logging.Loggers;
import org.elasticsearch.util.settings.Settings;
import org.slf4j.Logger;

import static org.elasticsearch.index.IndexServiceManagement.*;

Expand All @@ -32,7 +32,7 @@
*/
public abstract class AbstractIndexComponent implements IndexComponent {

protected final Logger logger;
protected final ESLogger logger;

protected final Index index;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@

import org.elasticsearch.index.settings.IndexSettings;
import org.elasticsearch.jmx.ManagedGroupName;
import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.logging.Loggers;
import org.elasticsearch.util.settings.Settings;
import org.slf4j.Logger;

import static org.elasticsearch.index.shard.IndexShardManagement.*;

Expand All @@ -32,7 +32,7 @@
*/
public abstract class AbstractIndexShardComponent implements IndexShardComponent {

protected final Logger logger;
protected final ESLogger logger;

protected final ShardId shardId;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
package org.elasticsearch.jmx;

import org.elasticsearch.util.io.HostResolver;
import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.settings.Settings;
import org.elasticsearch.util.transport.PortsRange;
import org.slf4j.Logger;

import javax.management.InstanceAlreadyExistsException;
import javax.management.MBeanServer;
Expand Down Expand Up @@ -54,7 +54,7 @@ public static class SettingsConstants {

public static final String JMXRMI_PUBLISH_URI_PATTERN = "service:jmx:rmi:///jndi/rmi://{jmx.host}:{jmx.port}/jmxrmi";

private final Logger logger;
private final ESLogger logger;

private final Settings settings;

Expand All @@ -76,7 +76,7 @@ public static class SettingsConstants {

private volatile boolean started = false;

public JmxService(Logger logger, final Settings settings) {
public JmxService(ESLogger logger, final Settings settings) {
this.logger = logger;
this.settings = settings;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
import org.elasticsearch.util.MapBuilder;
import org.elasticsearch.util.Preconditions;
import org.elasticsearch.util.Strings;
import org.slf4j.Logger;
import org.elasticsearch.util.logging.ESLogger;

import javax.management.*;
import java.lang.reflect.Field;
Expand All @@ -46,7 +46,7 @@ public class ResourceDMBean implements DynamicMBean {
private static final Class<?>[] primitives = {int.class, byte.class, short.class, long.class,
float.class, double.class, boolean.class, char.class};

private final Logger logger;
private final ESLogger logger;

private final Object obj;

Expand All @@ -68,7 +68,7 @@ public class ResourceDMBean implements DynamicMBean {

private final ImmutableList<MBeanOperationInfo> operations;

public ResourceDMBean(Object instance, Logger logger) {
public ResourceDMBean(Object instance, ESLogger logger) {
Preconditions.checkNotNull(instance, "Cannot make an MBean wrapper for null instance");
this.obj = instance;
this.logger = logger;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,10 @@
import org.elasticsearch.util.component.LifecycleComponent;
import org.elasticsearch.util.guice.Injectors;
import org.elasticsearch.util.io.FileSystemUtils;
import org.elasticsearch.util.logging.ESLogger;
import org.elasticsearch.util.logging.Loggers;
import org.elasticsearch.util.settings.Settings;
import org.elasticsearch.util.settings.SettingsModule;
import org.slf4j.Logger;

import java.io.File;
import java.util.ArrayList;
Expand Down Expand Up @@ -100,7 +100,7 @@ public InternalNode() throws ElasticSearchException {
public InternalNode(Settings pSettings, boolean loadConfigSettings) throws ElasticSearchException {
Tuple<Settings, Environment> tuple = InternalSettingsPerparer.prepareSettings(pSettings, loadConfigSettings);

Logger logger = Loggers.getLogger(Node.class, tuple.v1().get("name"));
ESLogger logger = Loggers.getLogger(Node.class, tuple.v1().get("name"));
logger.info("{{}}: Initializing ...", Version.full());

this.pluginsService = new PluginsService(tuple.v1(), tuple.v2());
Expand Down Expand Up @@ -151,7 +151,7 @@ public Node start() {
return this;
}

Logger logger = Loggers.getLogger(Node.class, settings.get("name"));
ESLogger logger = Loggers.getLogger(Node.class, settings.get("name"));
logger.info("{{}}: Starting ...", Version.full());

for (Class<? extends LifecycleComponent> plugin : pluginsService.services()) {
Expand Down Expand Up @@ -184,7 +184,7 @@ public Node start() {
if (!lifecycle.moveToStopped()) {
return this;
}
Logger logger = Loggers.getLogger(Node.class, settings.get("name"));
ESLogger logger = Loggers.getLogger(Node.class, settings.get("name"));
logger.info("{{}}: Stopping ...", Version.full());

if (settings.getAsBoolean("http.enabled", true)) {
Expand Down Expand Up @@ -228,7 +228,7 @@ public void close() {
return;
}

Logger logger = Loggers.getLogger(Node.class, settings.get("name"));
ESLogger logger = Loggers.getLogger(Node.class, settings.get("name"));
logger.info("{{}}: Closing ...", Version.full());

if (settings.getAsBoolean("http.enabled", true)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,29 @@
import org.elasticsearch.util.io.stream.HandlesStreamInput;
import org.elasticsearch.util.io.stream.StreamInput;
import org.elasticsearch.util.io.stream.Streamable;
import org.elasticsearch.util.logging.ESLogger;
import org.jboss.netty.buffer.ChannelBuffer;
import org.jboss.netty.channel.*;
import org.slf4j.Logger;

import java.io.IOException;

import static org.elasticsearch.transport.Transport.Helper.*;

/**
* @author kimchy (Shay Banon)
* @author kimchy (shay.banon)
*/
@ChannelPipelineCoverage("one")
public class MessageChannelHandler extends SimpleChannelUpstreamHandler {

private final Logger logger;
private final ESLogger logger;

private final ThreadPool threadPool;

private final TransportServiceAdapter transportServiceAdapter;

private final NettyTransport transport;

public MessageChannelHandler(NettyTransport transport, Logger logger) {
public MessageChannelHandler(NettyTransport transport, ESLogger logger) {
this.threadPool = transport.threadPool();
this.transportServiceAdapter = transport.transportServiceAdapter();
this.transport = transport;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/*
* Licensed to Elastic Search and Shay Banon under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. Elastic Search licenses this
* file to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/

package org.elasticsearch.transport.netty;

import org.elasticsearch.util.logging.ESLogger;
import org.jboss.netty.logging.AbstractInternalLogger;

/**
* @author kimchy (shay.banon)
*/
public class NettyInternalESLogger extends AbstractInternalLogger {

private final ESLogger logger;

public NettyInternalESLogger(ESLogger logger) {
this.logger = logger;
}

@Override public boolean isDebugEnabled() {
return logger.isDebugEnabled();
}

@Override public boolean isInfoEnabled() {
return logger.isInfoEnabled();
}

@Override public boolean isWarnEnabled() {
return logger.isWarnEnabled();
}

@Override public boolean isErrorEnabled() {
return logger.isErrorEnabled();
}

@Override public void debug(String msg) {
logger.debug(msg);
}

@Override public void debug(String msg, Throwable cause) {
logger.debug(msg, cause);
}

@Override public void info(String msg) {
logger.info(msg);
}

@Override public void info(String msg, Throwable cause) {
logger.info(msg, cause);
}

@Override public void warn(String msg) {
logger.warn(msg);
}

@Override public void warn(String msg, Throwable cause) {
logger.warn(msg, cause);
}

@Override public void error(String msg) {
logger.error(msg);
}

@Override public void error(String msg, Throwable cause) {
logger.error(msg, cause);
}
}
Loading

0 comments on commit bda476e

Please sign in to comment.