Jag har problem med min logfil. Jag skulle vilja följa sessions-idt eller liknande för att se hur användaren går. Jag har en fler-stegs-form och då vill jag kunna följa användarens inmatning om det går åt pipan.
Du måste skicka med vad du vill logga, log4j vet inte vad du vill ska skrivas ut. Pattern är bara vad log4j ska logga förutom ditt meddelande, t ex klockslag, rad i koden där log4j anropades, vilken fil mm. Så skicka med sessions id:t i log4j anropet och eventuell annan info som du vill ha med i loggen sen så styr du med pattern hur detta meddelande ska visas i loggfilen.
Fast pattern kan ju få fram vilken trådprocess det rör sig om. Den kan alltså inte få fram något unikt från webservern som säger att det är samma användare (session) som tidigare?
Det tror jag inte, det är ju upp till webserver att lösa det hela med sessionen, olika webbservrar har ju olika sätt att hantera det hela på så, log4j kan omöjligt veta hur detta är löst.
HTTP är ju stateless så när första sidan har anropats så har ju webservern "glömt" bort det hela, sen när nästa sida i flödet anropas så ser ju webbservern detta som ett helt nytt anrop.
Sessionen upprätts hålls med hjälp av att webbläsare skickar sessions id:t eller så står det med i länken. Så det borde skapas nya trådar mellan anropen, vilket gör det svårt att följa en viss tråd.
Du behöver ju inte lägga till session id:t i länkarna, om det var det du menade, utan det går väl att få ut id:t till sessionen från webservern i jsp/servlet koden, den sköter ju allt det där självt.
log.debug("Session: " + session.getId() );
Kanske inte var det du menade bara så att du inte gör en massa onödigt job...
263 ms totalt · 4 externa anrop · v20260731065814-full.5386d3bf