Ich benutze den java mongodb Treiber 3.2.2 (Kompiliergruppe: 'org.mongodb', Name: 'mongo-java-driver', Version: "3.2.2) und scheint die Protokollierung, die vom Treiber kommt, nicht auszuschalten. Mein Programm ist wie folgt:Wie kontrolliere ich mongo java Treiberprotokollierung mit java.util.logging Eigenschaften
public static void main(String args[]) {
Enumeration<String> names = LogManager.getLogManager().getLoggerNames();
Logger l = Logger.getLogger("org.mongodb.driver");
l.info("Hello INFO!");
l.warning("Hello WARNING!");
SoundDB db = new SoundDB();
db.doMain(args);
while (names.hasMoreElements())
System.out.println("Name = " + names.nextElement());
l.info("Hello INFO!");
l.warning("Hello WARNING!");
}
und wenn sie mit -Djava.util.logging.config.file = logging.properties gestartet, produziert
Oct 12, 2016 7:44:22 PM com.ibm.watson.iot.sound.tools.SoundDB main
WARNING: Hello WARNING!
Loading caa properties from file:/C:/Users/IBM_ADMIN/git/iot-sound/IoT-Sound/caa.properties
19:44:23.889 [main] INFO org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
19:44:23.971 [main] DEBUG org.mongodb.driver.cluster - Updating cluster description to {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING}]
19:44:24.030 [main] INFO org.mongodb.driver.cluster - No server chosen by ReadPreferenceServerSelector{readPreference=primary} from cluster description ClusterDescription{type=UNKNOWN, connectionMode=SINGLE, all=[ServerDescription{address=localhost:27017, type=UNKNOWN, state=CONNECTING}]}. Waiting for 30000 ms before timing out
19:44:24.042 [cluster-ClusterId{value='57fecad73df6efadcc807d9e', description='null'}-localhost:27017] INFO org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:1261}] to localhost:27017
19:44:24.042 [cluster-ClusterId{value='57fecad73df6efadcc807d9e', description='null'}-localhost:27017] DEBUG org.mongodb.driver.cluster - Checking status of localhost:27017
19:44:24.044 [cluster-ClusterId{value='57fecad73df6efadcc807d9e', description='null'}-localhost:27017] INFO org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 2, 4]}, minWireVersion=0, maxWireVersion=4, maxDocumentSize=16777216, roundTripTimeNanos=1672627}
19:44:24.046 [cluster-ClusterId{value='57fecad73df6efadcc807d9e', description='null'}-localhost:27017] DEBUG org.mongodb.driver.cluster - Updating cluster description to {type=STANDALONE, servers=[{address=localhost:27017, type=STANDALONE, roundTripTime=1.7 ms, state=CONNECTED}]
...
Name = javax.management.monitor
Name = javax.management.mlet
Name = org.bson.ObjectId
Name = global
Name = org.mongodb.driver
Name = javax.management
Name = javax.management.mbeanserver
Name =
Oct 12, 2016 7:44:24 PM com.ibm.watson.iot.sound.tools.SoundDB main
WARNING: Hello WARNING!
logging.properties enthält
.level=WARNING
handlers=java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.ConsoleHandler.level=ALL
Der Logger org.mongodb.driver ist korrekt auf WARNING gesetzt, da nur meine Warnmeldungen ausgedruckt werden und nicht die Info-Nachrichten. Es gibt keine Änderung (wie ich erwarten würde), wenn ich die folgenden Eigenschaften hinzu:
org.bson.ObjectId.level=WARNING
org.mongodb.driver.level=WARNING
Also, hat jemand eine Idee, was ich falsch mache? Vielen Dank.
Ja, Mongo verwendet SLF4J, das eines der verfügbaren Protokollframeworks abruft. In meinem Fall wurde Logback durch eine andere Abhängigkeit und Boom hinzugefügt, mein Logging änderte sich. Können wir alle lachen? Ich habe Logbuch gelöscht und ich benutze JUL wieder und alles ist gut in meiner Welt. –