Configuration de base
La configuration de base ne s'effectue que dans le fichier suivant :
################################################################################ ## Configuration logs ## ################################################################################ environment.build.log.logfileDirectory=/home/esup4/logs environment.build.log.logfileName=uPortal.log environment.build.log.rootLevel=INFO environment.build.log.layoutConversionPattern=[${environment.build.host.logicalName}]%5p [%t] %d{MMM/dd HH:mm:ss,SSS} %c{2}.[%x] - %m%n environment.build.log.rollingLogFileDatePattern=yyyy-MM-dd-HH
Type de logger
Le logger est préconfiguré pour être un DailyRollingFileAppender. Il n'est pas possible d'en changer dans le fichier esup.properties.
Voici les détails des éléments de configuration :
Propriété | Définition | Détails supplémentaires |
---|---|---|
environment.build.log.logfileDirectory | Dossier où sont stockés les fichiers de logs | Il est possible d'utiliser le séparateur slash ("/") sous Linux et Windows |
environment.build.log.logfileName | Nom du fichier de log pour le portail | Le choix du nom est libre |
environment.build.log.rootLevel | Niveau de log minimal pour lequel on souhaite garder les traces | Peut prendre les valeurs listées sur cette page |
environment.build.log.layoutConversionPattern | Format de la ligne de log | Doit se conformer au pattern PatternLayout |
environment.build.log.rollingLogFileDatePattern | Format de la date utilisé dans le nommage des fichiers lors de leur journalisation | Doit se conformer au pattern SimpleDateFormat |
Cette configuration impacte les applications suivantes :
uPortal
BookmarksPortlet
FunctionalTestsPortlet
NewsReaderPortlet
NotificationPortlet
SimpleContentPortlet
WeatherPortlet
WebProxyPortlet
cas-proxy-test-portlet
cas
email-preview
jasig-widget-portlets
pluto-testsuite
Configuration avancée : SYSLOG
Prérequis
Avant de configurer le syslog pour uPortal, il faut posséder un serveur syslog et connaître son IP.
OPTIONNEL : Si vous désirez configurer le serveur syslog :
Couper le serveur syslog :
service syslog stop
Autoriser les connexion remote pour le serveur syslog. Ajouter l'option -r dans le fichier suivant :
/etc/sysconfig/syslogSYSLOGD_OPTIONS="-rm 0"
Redémarrer le service syslog
service syslog restart
Autoriser le firewall à laisser passer les messages :
iptables -I INPUT -p udp -i eth0 -s <IP_SERVEUR_SYSLOG> -d <IP_CLIENT_SYSLOG> --dport 514 -j ACCEPT
Il est également bon d'ajouter cette commande dans le fichier /etc/rc.local pour qu'elle soit exécutée lors du démarrage de la machine.
OBLIGATOIRE : Afin de configurer les applications pour envoyer les logs au serveur syslog, il faut procéder comme suit :
- Modifier chaque fichier de configuration de log. Pour un fichier "properties" :log4j.properties
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender log4j.appender.R.File=${environment.build.log.logfileDirectory}/xxx.log log4j.appender.R.DatePattern='.'${environment.build.log.rollingLogFileDatePattern} log4j.appender.R.Encoding=UTF-8 En log4j.appender.R=org.apache.log4j.net.SyslogAppender log4j.appender.R.SyslogHost=<IP_SERVEUR_SYSLOG> log4j.appender.R.Facility=LOCAL0
Pour un fichier XML :log4j.xml<appender name="file" class="org.apache.log4j.DailyRollingFileAppender"> <param name="file" value="${environment.build.log.logfileDirectory}/cas.log" /> <param name="DatePattern" value="'.'${environment.build.log.rollingLogFileDatePattern}" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="${environment.build.log.layoutConversionPattern}" /> </layout> </appender> En <appender name="file" class="org.apache.log4j.net.SyslogAppender"> <param name="SyslogHost" value="<IP_SERVEUR_SYSLOG>" /> <param name="Facility" value="LOCAL0" /> </appender>
Voici l'emplacement des fichiers pour chacun des portlets livrés en bundle :Application Chemin BookmarksPortlet uportal-portlets-overlay\BookmarksPortlet\src\main\webapp\WEB-INF\log4j.properties cas-proxy-test-portlet uportal-portlets-overlay\cas-proxy-test-portlet\src\main\resources\log4j.properties email-preview uportal-portlets-overlay\email-preview\src\main\resources\log4j.properties FunctionalTestsPortlet uportal-portlets-overlay\FunctionalTestsPortlet\src\main\webapp\WEB-INF\log4j.properties jasig-widget-portlets uportal-portlets-overlay\jasig-widget-portlets\src\main\webapp\WEB-INF\log4j.properties NewsReaderPortlet uportal-portlets-overlay\NewsReaderPortlet\src\main\resources\log4j.properties NotificationPortlet uportal-portlets-overlay\NotificationPortlet\src\main\resources\log4j.properties pluto-testsuite uportal-portlets-overlay\pluto-testsuite\src\main\resources\log4j.properties SimpleContentPortlet uportal-portlets-overlay\SimpleContentPortlet\src\main\resources\log4j.properties WeatherPortlet uportal-portlets-overlay\WeatherPortlet\src\main\webapp\WEB-INF\log4j.properties WebProxyPortlet uportal-portlets-overlay\WebProxyPortlet\src\main\resources\log4j.properties uPortal uportal-war\src\main\webapp\WEB-INF\log4j.properties cas uportal-portlets-overlay\cas\src\main\resources\log4j.xml
La nouvelle configuration sera prise en compte au prochain redéploiement. Il faut également autoriser le firewall à laisser passer les messages. Sous UNIX :
iptables -I OUTPUT -p udp -i eth0 -s <IP_SERVEUR_SYSLOG> -d <IP_CLIENT_SYSLOG> --dport 514 -j ACCEPT
Sous Windows, cela dépend du firewall utilisé.
De plus, il est bon d'ajouter cette commande dans le fichier /etc/rc.local pour qu'elle soit exécutée lors du démarrage de la machine.- Rebuilder et redéployer vos applications :
- ant -Dmaven.test.skip=true clean deploy-war (si modification uniquement pour uPortal)
- ant -Dmaven.test.skip=true clean deploy-ear (si modification pour uPortal et les portlets embarquées)
- Redémarrer Tomcat
Références