[JAVA] Format de la sortie du journal par Tomcat lui-même dans Tomcat 8

** Remarques sur la migration de Tomcat 7 vers Tomcat 8 **

point de changement

catalina.out


2015/01/16 9:26:31 org.apache.catalina.core.StandardService startInternal
information:Démarrez le service Catalina

catalina.out


16-Jan-2015 9:26:31.518 INFO [main] org.apache.catalina.core.StandardService.startService interne Démarrer Catalina

Ce qui était deux lignes a été changé en une ligne.

Retour à 2 lignes

Pour revenir aux deux lignes d'origine, accédez à ce qui suit dans conf / logging.properties

conf/logging.properties


java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter

En changeant comme suit, il devient les deux mêmes lignes que Tomcat 7. (OneLineFormatter-> SimpleFormatter)

conf/logging.properties


java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

Cela affichera deux lignes comme indiqué ci-dessous.

catalina.out


1 15, 2015 12:06:25 h org.apache.catalina.core.StandardService startInternal
information:Démarrez le service Catalina

Si vous regardez attentivement, le format de la date a également changé

Jusqu'à présent, il était traité par format tenu par java.util.logging.SimpleFormatter, Le format obtenu à partir de Java 7 avec getSimpleFormat de sun.util.logging.LoggingSupport est utilisé.

En ajoutant ce qui suit à conf / logging.properties de Tomcat, le même contenu que dans Java 6 peut être obtenu.

conf/logging.properties


java.util.logging.SimpleFormatter.format = %1$tY/%1$tm/%1$td %1$tk:%1$tM:%1$tS %2$s%n%4$s: %5$s%6$s%n

C'est finalement le même que Tomcat 7 + Java 6.

catalina.out


2015/01/16 9:26:31 org.apache.catalina.core.StandardService startInternal
information:Démarrez le service Catalina

Information supplémentaire

Source pour vérifier le format de la date

package jp.kajiken.format;

import java.text.MessageFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.logging.Level;
import java.util.logging.LogRecord;
import java.util.logging.SimpleFormatter;

public class TestFormat {

	public static void main(String[] args) {
		//Date à tester
		Calendar cal = new GregorianCalendar(2015, 0, 2, 8, 50, 59);
		Date dat = new Date(cal.getTimeInMillis());

		// Java6
		System.out.print(new MessageFormat("{0,date} {0,time}").format(new Object[]{dat}));
		System.out.println(" org.apache.catalina.core.StandardService startInternal");
		System.out.println("information:Démarrez le service Catalina");
		System.out.println("---");

		// Java7
		System.setProperty("java.util.logging.SimpleFormatter.format",
				"%1$tY/%1$tm/%1$td %1$tk:%1$tM:%1$tS %2$s%n%4$s: %5$s%6$s%n");
		LogRecord log = new LogRecord(Level.INFO, "Démarrez le service Catalina");
		log.setSourceClassName("org.apache.catalina.core.StandardService");
		log.setSourceMethodName("startInternal");
		log.setMillis(dat.getTime());
		SimpleFormatter sf = new SimpleFormatter();
		System.out.println(sf.format(log));
	}
}

Résultat d'exécution

stdout


2015/01/02 8:50:59 org.apache.catalina.core.StandardService startInternal
information:Démarrez le service Catalina
---
2015/01/02 8:50:59 org.apache.catalina.core.StandardService startInternal
information:Démarrez le service Catalina

J'ai pu reproduire avec succès l'état avant la transition. La raison de cela est qu'il y avait un script existant qui traitait à l'aide de cette chaîne ...

Recommended Posts

Format de la sortie du journal par Tomcat lui-même dans Tomcat 8
Sortie du journal Spring Boot au format json
Mettez la date (par exemple aaaa-MM-jj) dans la sortie du fichier journal par logback
Sortie en multiples de 3
Préparer l'environnement d'exécution de Tomcat dans IntelliJ Community
Accédez au fichier war dans le répertoire racine de Tomcat
Trouvez la valeur approximative de log (1 + x) avec Swift
Journaliser la sortie au format Json en utilisant lograge / lograge-sql avec RubyOnRails
Installer en spécifiant la version de Django dans l'environnement Docker
Je souhaite modifier le paramètre de sortie du journal de UtilLoggingJdbcLogger
Obtenez une instance proxy du composant lui-même dans Spring Boot
Sortie de la différence entre chaque champ de deux objets en Java
[Java] DateTimeFormatter sortie par FormatStyle
Implémentation du traitement asynchrone dans Tomcat
Enregistrer la sortie dans un fichier en Java
Cliquez sur l'image dans le champ file_field de Rails pour télécharger et remplacer l'aperçu
Sortie du journal de la requête / réponse WebServiceTemplate
Ordre de traitement dans le programme
À propos du niveau de journalisation de java.util.logging.Logger
[Java] Sortie en spécifiant le format avec printf% s,% d,% f [Spécificateur de format]
Obtenez le résultat de POST en Java
Journal système de sortie par la technologie Spring AOP
L'identité des paramètres de rails [: id]
Implémentation du traitement asynchrone compatible multi-tenant dans Tomcat
Sortie de l'en-tête HTTP de google-http-client à journaliser
Date de sortie en Java au format étendu ISO 8601
Sortie du livre "Introduction à Java"
L'histoire de l'écriture de Java dans Emacs
Mettre en forme le contenu de LocalDate avec DateTimeFormatter
Le contenu des données enregistrées par CarrierWave.
Trier par plusieurs champs dans la classe
Ecrire le mouvement de Rakefile dans le runbook
Inspectez le contenu de la sortie du journal pendant le test unitaire Java (aucune simulation utilisée)
Ajouter des paramètres arbitraires à la sortie de l'URL par <h: outputScript> <h: outputStylesheet> de JSF
Nommer et appeler explicitement des méthodes de classe parent dans Ruby
Soyez prudent avec la mise à niveau si vous utilisez | etc. dans l'URL Tomcat
Mettre en forme la date et l'heure données par created_at
[Order method] Définit l'ordre des données dans Rails
Le contenu de useBodyEncodingForURI a-t-il changé par rapport à Tomcat8?
Empêcher les erreurs dans le nom de l'enregistreur en copiant
[Apache Camel] Sortie facile du débit dans un journal
L'histoire de la comparaison de chaînes de bas niveau en Java
[Java] Gestion des Java Beans dans la chaîne de méthodes
L'histoire de la fabrication d'un Othello ordinaire à Java
À propos de l'idée des classes anonymes en Java
L'histoire de l'apprentissage de Java dans la première programmation
Mesurer la taille d'un dossier avec Java
Sortie des journaux de demande et de réponse avec Spring Boot
Préparez la sortie du journal à l'aide de log4j dans Eclipse.
Log4j 2 Comprendre les concepts sous-jacents du système de journalisation
Gérez la version de Ruby elle-même avec rbenv
Ressentez le passage du temps même à Java
Sortie de la façon d'utiliser la méthode slice
[Java] Jugement en saisissant des caractères dans le terminal
Remplacement de la sortie du journal Tomcat 8.5 par Log4j2.8 ou version ultérieure
[Java] Quelque chose est affiché comme "-0.0" dans la sortie