...
Logging gjøres ved å bruke ulike implementasjoner av ILogger, som er definert som følger:
...
- severity-argumentet angir alvorlighetsgraden, og må være en av String-verdiene ERROR, WARNING eller INFO, som er definert som konstanter i grensesnittet.
- message-argumentet er en melding om hva som var feil.
- exception-argumentet er et unntaksobjekt, som kan gi mer informasjon av hva som var feil, eller men kan være null.
En typisk bruk vil være i catch-delen av en try/catch:
Code Block |
---|
ILogger logger = ... ... try { ... } catch (IOException ioe) { logger.log(ILogger.ERROR, "Feil ved lesing fra fil", ioe); } |
...
- setFormatString(String formatString) - setter format-Stringstring-en som brukes for å lage logg-meldingen som skrives
...
Code Block |
---|
String logMessage = String.format(formatString, severity, message, exception); // skriv logMessage til OutputStream-en her |
Merk at dersom format-string-en ikke er satt, så skal den ha en fornuftig start-verdi.
Del 2 - FilteringLogger
FilteringLogger-klassen implementerer ILogger-grensesnittet og delegerer til en annen ILogger-implementasjon, men bare hvis alvorlighetsgraden er en av et sett angitte verdier. Både loggeren det delegeres til og alvorlighetsgradene angis når FilteringLogger-objektet opprettes:
...