Skip to Content
Suffering builds character
아카이브11.로깅특징5. LogRecord 클래스

5. LogRecord 클래스

1.LogRecord

로깅 메시지, 로그 레벨을 포함하고 있는 클래스
Logger 객체와 Handler 객체 사이에서 로깅 내용을 전달할 때 사용되는 객체

LogRecord 클래스 내부 구현 코드

LogRecord.java
/** LogRecord objects are used to pass logging requests between the logging framework and individual log Handlers. */ public class LogRecord implements java.io.Serializable { /** * Logging message level */ private Level level; /** * Non-localized raw message text */ private String message; public LogRecord(Level level, String msg) { this.level = Objects.requireNonNull(level); // 전달받은 인수가 null이 아닌지 확인하는 유틸메서드 requireNonNull() message = msg; // Assign a thread ID and a unique sequence number. sequenceNumber = globalSequenceNumber.getAndIncrement(); long id = Thread.currentThread().getId(); // threadID is deprecated and this value is synthesised for backward compatibility threadID = shortThreadID(id); longThreadID = id; instant = Instant.now(); needToInferCaller = true; } }

Logger 내부 구현 코드

Logger.java
public void log(Level level, String msg) { if (!isLoggable(level)) { return; } LogRecord lr = new LogRecord(level, msg); // LogRecord 객체 생성 doLog(lr); // 로깅 수행 }
Last updated on