Je rencontre des problèmes pour trouver mes fichiers journaux physiques. J'utilise les classes java.util.logging. J'ai une classe de bac à sable trivial contenant le code suivant:Où est mon fichier journal?
package test;
import java.util.logging.Level;
import java.util.logging.Logger;
public class TestLogging {
public static void main(String[] args) {
@SuppressWarnings("unused")
TestLogging test = new TestLogging();
}
public TestLogging() {
System.out.println(getClass().getClassLoader().getResource("logging.properties"));
Logger logger = Logger.getLogger("test");
logger.logp(Level.CONFIG, "myClass", "myMethod", "Monday");
logger.logp(Level.FINE, "myClass", "myMethod", "Tuesday");
logger.logp(Level.FINER, "myClass", "myMethod", "Wednesday");
logger.logp(Level.FINEST, "myClass", "myMethod", "Thursday");
logger.logp(Level.INFO, "myClass", "myMethod", "Friday");
logger.logp(Level.SEVERE, "myClass", "myMethod", "Saturday");
logger.logp(Level.WARNING, "myClass", "myMethod", "Sunday");
}
}
Mon fichier logging.properties (encore une fois, dépouillé de commentaires) est la suivante:
handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
.level= ALL
java.util.logging.FileHandler.pattern = %h/java%u.log
java.util.logging.FileHandler.limit = 50000
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter
java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
x.y.level = SEVERE
x.y.z.level = WARNING
org.sscce.level = WARNING
org.sscce.baz3.level = INFO
Le fichier logging.properties est dans le classpath sous Utilisateur Entrées dans la configuration d'exécution pour cette classe.
Lorsque j'exécute la classe, je reçois ceci sur la console:
file:/C:/Program%20Files/Java/jdk1.6.0_18/jre/lib/logging.properties
28-Feb-2012 2:05:55 PM myClass myMethod
INFO: Friday
28-Feb-2012 2:05:56 PM myClass myMethod
SEVERE: Saturday
28-Feb-2012 2:05:56 PM myClass myMethod
WARNING: Sunday
J'ai demandé le niveau de journalisation sur la console pour être INFO et c'est tout ce que j'ai sur la console de sorte qu'une partie semble être travail. Mais quand je cherche mes logs java physiques dans% h, qui est C: \ Documents and Settings [Mon identifiant Windows], il n'y a pas de fichiers qui suivent le modèle javaX.log où X est un entier.
Qu'est-ce que je fais mal? Le programme ne voit-il pas le fichier logging.properties? Ou les valeurs sont-elles définies d'une manière ou d'une autre pour empêcher l'écriture d'un journal physique?
J'ai besoin d'aide pour le débogage parce que je ne vois rien d'anormal. N'importe quels preneurs?
vous réalisez 'des chemins avec des espaces + Java == douleur et souffrance'! –
duplication possible de [Comment configurer la journalisation java en utilisant un fichier de propriétés? (java.util.logging)] (http://stackoverflow.com/questions/960099/how-to-set-up-java-logging-using-a-properties-file-java-util-logging) –