Skip to content

Commit 262e830

Browse files
Vladimir Ilyinex3m1024
authored andcommitted
Turn off Gremlin driver logging (#147)
* Turn off Gremlin driver logging * Turn off any existing Gremlin logger instances as well * Add log4j deps in testing scope
1 parent 736db0e commit 262e830

File tree

3 files changed

+27
-6
lines changed

3 files changed

+27
-6
lines changed

database/opencypher/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ dependencies {
55
exclude group: 'org.slf4j', module: 'slf4j-api'
66
}
77
compile("com.fasterxml.jackson.core:jackson-annotations:$versionJacksonMapper")
8+
compileOnly("log4j:log4j:1.2.17")
89
}

database/opencypher/src/main/java/com/neueda/jetbrains/plugin/graphdb/database/opencypher/gremlin/OpenCypherGremlinDatabase.java

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,23 @@
1010
import com.neueda.jetbrains.plugin.graphdb.database.neo4j.bolt.data.Neo4jBoltQueryResultColumn;
1111
import com.neueda.jetbrains.plugin.graphdb.database.neo4j.bolt.data.Neo4jBoltQueryResultRow;
1212
import com.neueda.jetbrains.plugin.graphdb.database.opencypher.gremlin.query.OpenCypherGremlinQueryResult;
13+
import org.apache.log4j.Level;
14+
import org.apache.log4j.LogManager;
15+
import org.apache.log4j.Logger;
16+
import org.apache.log4j.PropertyConfigurator;
1317
import org.apache.tinkerpop.gremlin.driver.Client;
1418
import org.apache.tinkerpop.gremlin.driver.Cluster;
1519
import org.apache.tinkerpop.gremlin.driver.Result;
1620
import org.neo4j.driver.v1.exceptions.ClientException;
1721
import org.opencypher.gremlin.client.CypherGremlinClient;
1822

1923
import java.net.URI;
20-
import java.util.Collections;
21-
import java.util.HashMap;
22-
import java.util.List;
23-
import java.util.Map;
24+
import java.util.*;
2425
import java.util.concurrent.ExecutionException;
2526
import java.util.stream.Collectors;
2627

2728
import static java.util.Collections.*;
28-
import static java.util.stream.Collectors.*;
29-
29+
import static java.util.stream.Collectors.toList;
3030
/**
3131
* Communicates with TinkerPop database by translating Cypher to Gremlin
3232
*/
@@ -35,6 +35,10 @@ public class OpenCypherGremlinDatabase implements GraphDatabaseApi {
3535
private final Cluster cluster;
3636
private final GremlinFlavor flavor;
3737

38+
static {
39+
disableGremlinLog();
40+
}
41+
3842
public OpenCypherGremlinDatabase(Map<String, String> configuration) {
3943
this(new OpenCypherGremlinConfiguration(configuration));
4044
}
@@ -162,4 +166,19 @@ private GraphQueryResult notSupported() {
162166
emptyList()
163167
);
164168
}
169+
170+
@SuppressWarnings("unchecked")
171+
private static void disableGremlinLog() {
172+
final String gremlinDriver = "org.apache.tinkerpop.gremlin.driver";
173+
174+
Properties props = new Properties();
175+
props.setProperty("log4j.logger." + gremlinDriver, Level.OFF.toString());
176+
PropertyConfigurator.configure(props);
177+
178+
Enumeration<Logger> loggers = LogManager.getCurrentLoggers();
179+
Collections.list(loggers)
180+
.stream()
181+
.filter(logger -> logger.getName().startsWith(gremlinDriver))
182+
.forEach(logger -> logger.setLevel(Level.OFF));
183+
}
165184
}

testing/integration-tinkerpop/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ dependencies {
55

66
testCompile "junit:junit:$versionJunit"
77
testCompile "org.assertj:assertj-core:$versionAssertj"
8+
testCompile "log4j:log4j:1.2.17"
89
}

0 commit comments

Comments
 (0)