Skip to content

Commit bda476e

Browse files
committed
Remove dependency on slf4j for logging, create own internal abstraction, closes #146.
1 parent b1721ac commit bda476e

File tree

47 files changed

+1204
-415
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+1204
-415
lines changed

.idea/dictionaries/kimchy.xml

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/libraries/logging.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ task explodedDist(dependsOn: [configurations.distLib], description: 'Builds a mi
7474

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

7879
ant.chmod(dir: "$explodedDistDir/bin", perm: "ugo+rx", includes: "**/*")
7980
}

modules/elasticsearch/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,9 @@ uploadArchives {
125125

126126
pom.whenConfigured {pom ->
127127
pom.dependencies = pom.dependencies.findAll {dep -> dep.scope != 'test' } // removes the test scoped ones
128-
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('log4j') } // removes the test scoped ones
129-
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('jline') } // removes the test scoped ones
128+
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('log4j') }
129+
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('slf4j') }
130+
pom.dependencies = pom.dependencies.findAll {dep -> !dep.artifactId.contains('jline') }
130131
pom.dependencies.findAll {dep -> dep.groupId == 'jgroups' }*.scope = 'runtime'
131132
pom.dependencies.findAll {dep -> dep.groupId == 'org.jboss.netty' }*.scope = 'runtime'
132133
}

modules/elasticsearch/src/main/java/org/elasticsearch/bootstrap/Bootstrap.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@
3131
import org.elasticsearch.util.Classes;
3232
import org.elasticsearch.util.Tuple;
3333
import org.elasticsearch.util.jline.ANSI;
34+
import org.elasticsearch.util.logging.ESLogger;
3435
import org.elasticsearch.util.logging.Loggers;
3536
import org.elasticsearch.util.logging.log4j.LogConfigurator;
3637
import org.elasticsearch.util.settings.Settings;
37-
import org.slf4j.Logger;
3838

3939
import java.io.File;
4040
import java.util.Set;
@@ -162,7 +162,7 @@ public static void main(String[] args) {
162162
System.err.close();
163163
}
164164
} catch (Throwable e) {
165-
Logger logger = Loggers.getLogger(Bootstrap.class);
165+
ESLogger logger = Loggers.getLogger(Bootstrap.class);
166166
if (bootstrap.node != null) {
167167
logger = Loggers.getLogger(Bootstrap.class, bootstrap.node.settings().get("name"));
168168
}

modules/elasticsearch/src/main/java/org/elasticsearch/discovery/jgroups/JgroupsCustomLogFactory.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919

2020
package org.elasticsearch.discovery.jgroups;
2121

22+
import org.elasticsearch.util.logging.ESLogger;
23+
import org.elasticsearch.util.logging.ESLoggerFactory;
2224
import org.jgroups.logging.CustomLogFactory;
2325
import org.jgroups.logging.Log;
24-
import org.slf4j.Logger;
25-
import org.slf4j.LoggerFactory;
2626

2727
/**
2828
* @author kimchy (Shay Banon)
@@ -34,14 +34,14 @@ public class JgroupsCustomLogFactory implements CustomLogFactory {
3434
}
3535

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

40-
private static class Slf4jLog implements Log {
40+
private static class JgroupsESLog implements Log {
4141

42-
private final Logger logger;
42+
private final ESLogger logger;
4343

44-
private Slf4jLog(Logger logger) {
44+
private JgroupsESLog(ESLogger logger) {
4545
this.logger = logger;
4646
}
4747

modules/elasticsearch/src/main/java/org/elasticsearch/http/netty/NettyHttpServerTransport.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.elasticsearch.ElasticSearchException;
2424
import org.elasticsearch.http.*;
2525
import org.elasticsearch.transport.BindTransportException;
26+
import org.elasticsearch.transport.netty.NettyInternalESLoggerFactory;
2627
import org.elasticsearch.util.SizeUnit;
2728
import org.elasticsearch.util.SizeValue;
2829
import org.elasticsearch.util.component.AbstractLifecycleComponent;
@@ -40,7 +41,6 @@
4041
import org.jboss.netty.handler.timeout.ReadTimeoutException;
4142
import org.jboss.netty.logging.InternalLogger;
4243
import org.jboss.netty.logging.InternalLoggerFactory;
43-
import org.jboss.netty.logging.Slf4JLoggerFactory;
4444

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

5959
static {
60-
InternalLoggerFactory.setDefaultFactory(new Slf4JLoggerFactory() {
60+
InternalLoggerFactory.setDefaultFactory(new NettyInternalESLoggerFactory() {
6161
@Override public InternalLogger newInstance(String name) {
62-
return super.newInstance(name.replace("org.jboss.netty.", "netty.lib."));
62+
return super.newInstance(name.replace("org.jboss.netty.", "netty."));
6363
}
6464
});
6565
}

modules/elasticsearch/src/main/java/org/elasticsearch/index/AbstractIndexComponent.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121

2222
import org.elasticsearch.index.settings.IndexSettings;
2323
import org.elasticsearch.jmx.ManagedGroupName;
24+
import org.elasticsearch.util.logging.ESLogger;
2425
import org.elasticsearch.util.logging.Loggers;
2526
import org.elasticsearch.util.settings.Settings;
26-
import org.slf4j.Logger;
2727

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

@@ -32,7 +32,7 @@
3232
*/
3333
public abstract class AbstractIndexComponent implements IndexComponent {
3434

35-
protected final Logger logger;
35+
protected final ESLogger logger;
3636

3737
protected final Index index;
3838

modules/elasticsearch/src/main/java/org/elasticsearch/index/shard/AbstractIndexShardComponent.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121

2222
import org.elasticsearch.index.settings.IndexSettings;
2323
import org.elasticsearch.jmx.ManagedGroupName;
24+
import org.elasticsearch.util.logging.ESLogger;
2425
import org.elasticsearch.util.logging.Loggers;
2526
import org.elasticsearch.util.settings.Settings;
26-
import org.slf4j.Logger;
2727

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

@@ -32,7 +32,7 @@
3232
*/
3333
public abstract class AbstractIndexShardComponent implements IndexShardComponent {
3434

35-
protected final Logger logger;
35+
protected final ESLogger logger;
3636

3737
protected final ShardId shardId;
3838

modules/elasticsearch/src/main/java/org/elasticsearch/jmx/JmxService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@
2020
package org.elasticsearch.jmx;
2121

2222
import org.elasticsearch.util.io.HostResolver;
23+
import org.elasticsearch.util.logging.ESLogger;
2324
import org.elasticsearch.util.settings.Settings;
2425
import org.elasticsearch.util.transport.PortsRange;
25-
import org.slf4j.Logger;
2626

2727
import javax.management.InstanceAlreadyExistsException;
2828
import javax.management.MBeanServer;
@@ -54,7 +54,7 @@ public static class SettingsConstants {
5454

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

57-
private final Logger logger;
57+
private final ESLogger logger;
5858

5959
private final Settings settings;
6060

@@ -76,7 +76,7 @@ public static class SettingsConstants {
7676

7777
private volatile boolean started = false;
7878

79-
public JmxService(Logger logger, final Settings settings) {
79+
public JmxService(ESLogger logger, final Settings settings) {
8080
this.logger = logger;
8181
this.settings = settings;
8282

modules/elasticsearch/src/main/java/org/elasticsearch/jmx/ResourceDMBean.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import org.elasticsearch.util.MapBuilder;
2626
import org.elasticsearch.util.Preconditions;
2727
import org.elasticsearch.util.Strings;
28-
import org.slf4j.Logger;
28+
import org.elasticsearch.util.logging.ESLogger;
2929

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

49-
private final Logger logger;
49+
private final ESLogger logger;
5050

5151
private final Object obj;
5252

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

6969
private final ImmutableList<MBeanOperationInfo> operations;
7070

71-
public ResourceDMBean(Object instance, Logger logger) {
71+
public ResourceDMBean(Object instance, ESLogger logger) {
7272
Preconditions.checkNotNull(instance, "Cannot make an MBean wrapper for null instance");
7373
this.obj = instance;
7474
this.logger = logger;

modules/elasticsearch/src/main/java/org/elasticsearch/node/internal/InternalNode.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,10 @@
6565
import org.elasticsearch.util.component.LifecycleComponent;
6666
import org.elasticsearch.util.guice.Injectors;
6767
import org.elasticsearch.util.io.FileSystemUtils;
68+
import org.elasticsearch.util.logging.ESLogger;
6869
import org.elasticsearch.util.logging.Loggers;
6970
import org.elasticsearch.util.settings.Settings;
7071
import org.elasticsearch.util.settings.SettingsModule;
71-
import org.slf4j.Logger;
7272

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

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

106106
this.pluginsService = new PluginsService(tuple.v1(), tuple.v2());
@@ -151,7 +151,7 @@ public Node start() {
151151
return this;
152152
}
153153

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

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

190190
if (settings.getAsBoolean("http.enabled", true)) {
@@ -228,7 +228,7 @@ public void close() {
228228
return;
229229
}
230230

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

234234
if (settings.getAsBoolean("http.enabled", true)) {

modules/elasticsearch/src/main/java/org/elasticsearch/transport/netty/MessageChannelHandler.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,29 +25,29 @@
2525
import org.elasticsearch.util.io.stream.HandlesStreamInput;
2626
import org.elasticsearch.util.io.stream.StreamInput;
2727
import org.elasticsearch.util.io.stream.Streamable;
28+
import org.elasticsearch.util.logging.ESLogger;
2829
import org.jboss.netty.buffer.ChannelBuffer;
2930
import org.jboss.netty.channel.*;
30-
import org.slf4j.Logger;
3131

3232
import java.io.IOException;
3333

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

3636
/**
37-
* @author kimchy (Shay Banon)
37+
* @author kimchy (shay.banon)
3838
*/
3939
@ChannelPipelineCoverage("one")
4040
public class MessageChannelHandler extends SimpleChannelUpstreamHandler {
4141

42-
private final Logger logger;
42+
private final ESLogger logger;
4343

4444
private final ThreadPool threadPool;
4545

4646
private final TransportServiceAdapter transportServiceAdapter;
4747

4848
private final NettyTransport transport;
4949

50-
public MessageChannelHandler(NettyTransport transport, Logger logger) {
50+
public MessageChannelHandler(NettyTransport transport, ESLogger logger) {
5151
this.threadPool = transport.threadPool();
5252
this.transportServiceAdapter = transport.transportServiceAdapter();
5353
this.transport = transport;
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
/*
2+
* Licensed to Elastic Search and Shay Banon under one
3+
* or more contributor license agreements. See the NOTICE file
4+
* distributed with this work for additional information
5+
* regarding copyright ownership. Elastic Search licenses this
6+
* file to you under the Apache License, Version 2.0 (the
7+
* "License"); you may not use this file except in compliance
8+
* with the License. You may obtain a copy of the License at
9+
*
10+
* http://www.apache.org/licenses/LICENSE-2.0
11+
*
12+
* Unless required by applicable law or agreed to in writing,
13+
* software distributed under the License is distributed on an
14+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
* KIND, either express or implied. See the License for the
16+
* specific language governing permissions and limitations
17+
* under the License.
18+
*/
19+
20+
package org.elasticsearch.transport.netty;
21+
22+
import org.elasticsearch.util.logging.ESLogger;
23+
import org.jboss.netty.logging.AbstractInternalLogger;
24+
25+
/**
26+
* @author kimchy (shay.banon)
27+
*/
28+
public class NettyInternalESLogger extends AbstractInternalLogger {
29+
30+
private final ESLogger logger;
31+
32+
public NettyInternalESLogger(ESLogger logger) {
33+
this.logger = logger;
34+
}
35+
36+
@Override public boolean isDebugEnabled() {
37+
return logger.isDebugEnabled();
38+
}
39+
40+
@Override public boolean isInfoEnabled() {
41+
return logger.isInfoEnabled();
42+
}
43+
44+
@Override public boolean isWarnEnabled() {
45+
return logger.isWarnEnabled();
46+
}
47+
48+
@Override public boolean isErrorEnabled() {
49+
return logger.isErrorEnabled();
50+
}
51+
52+
@Override public void debug(String msg) {
53+
logger.debug(msg);
54+
}
55+
56+
@Override public void debug(String msg, Throwable cause) {
57+
logger.debug(msg, cause);
58+
}
59+
60+
@Override public void info(String msg) {
61+
logger.info(msg);
62+
}
63+
64+
@Override public void info(String msg, Throwable cause) {
65+
logger.info(msg, cause);
66+
}
67+
68+
@Override public void warn(String msg) {
69+
logger.warn(msg);
70+
}
71+
72+
@Override public void warn(String msg, Throwable cause) {
73+
logger.warn(msg, cause);
74+
}
75+
76+
@Override public void error(String msg) {
77+
logger.error(msg);
78+
}
79+
80+
@Override public void error(String msg, Throwable cause) {
81+
logger.error(msg, cause);
82+
}
83+
}

0 commit comments

Comments
 (0)