Feladatok‎ > ‎Mikor volt?‎ > ‎

Loggolás

Mindenképpen fontos, hogy a szervert érő, lehetőleg összes eseményt loggoljunk, mert nagyon hasznos. Talán a legfontosabb haszna, hogy ez alapján tudjuk kitalálni az esetleges összeomlások, hibás működések okát. Ugyanakkor nem tartalmazhat semmilyen érzékeny adatot érthető okokból.

Néhány, talán hasznos kódrészlet:
PrintStream log = new PrintStream(new FileOutputStream("log.txt", true), true, "UTF-8");
log.println("Something happened");

System.out.println(DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(LocalDateTime.now()));

Érdemes kiírni továbbá a lekért uri-t és a paramétereket.

A WebServer.serve()-ben:

System.out.println(session.getUri());

A böngésző amikor lekér egy oldalt, akkor küldhet paramétereket. Ezek a paraméterek (név, érték) párokban érkeznek meg, például
action: registration,
username: laci,
password: titok

A Javaban ezt kulcs, érték párosokból álló adatszerkezetet a Map-pel lehet megcsinálni.

Map<String, String> map = session.getParms();
System.out.println(map.get("action")); // registration
System.out.println(map.get("username")); // laci

Loggoláskor ki szeretnénk írni az összes ilyen (kulcs, érték) párost, ehhez segítség:
Map<String, String> map = session.getParms();
for(String key : map.keySet()) {
    System.out.println(key + ": " + map.get(key));
}

Comments