vendredi 14 décembre 2012

Attention aux parenthèses dans Logback

J'ai perdu une soirée à cause de ça. Et j'ai perdu un peu de crédibilité aussi, en ouvrant un ticket sans fondement. Et tout ça parce que j'avais mal lu la documentation.

L'histoire a commencé quand j'ai voulu ajouter l'adresse IP des clients de mon application Web dans les logs. J'avais déjà configuré mon MDCInsertingServletFilter, il ne me restait qu'à utiliser ses informations. J'ai donc configuré le pattern dans le appender, avec un %X{...} et un peu de mise en forme. C'est ici que la parenthèse arrive, et les problèmes avec.
%d{HH:mm:ss.SSS} (%X{req.remoteHost}) [%thread] %-5level %logger - %msg%n


samedi 1 décembre 2012

Accéder à la console de JBoss AS 7 via Apache Web Server

Dernièrement, j'ai eu besoin d'exposer la console d'administration de JBoss AS 7.1 sur un serveur Web Apache. Le choix de la technique à utiliser a été rapide : puisque l'interface de management ne propose pas d'accès AJP, il faut utiliser Apache en reverse proxy HTTP.

Dans un premier temps, j'ai exposé le contexte http://localhost:9990/console via mod_proxy. Je me suis rapidement rendu compte que c'était insuffisant car l'application fait des requêtes AJAX sur le contexte management. La configuration suivante de mod_proxy semblait raisonnable :

ProxyPass /console http://localhost:9990/console
ProxyPassReverse /console http://localhost:9990/console

ProxyPass /management http://localhost:9990/management
ProxyPassReverse /management http://localhost:9990/management
Ça fonctionnait sans problème sous Firefox, mais sous Chrome, j'avais une erreur 403. N'étant pas certain que tous les administrateurs de mes clients utilisent Firefox, je me suis mis en quête d'une meilleure solution.