자바

로그 처리시 주의사항

끄적끄적 2022. 4. 2. 12:39

팀내 소스를 보다보니 다음과 같이 로그처리하고 있는 것들이 많은 것을 볼 수 있었다.

log.debug("message content ="+value1+" , next value = "+value2);

위와 같이 처리를 하면, 운영서버에서 로그레벨이 INFO레벨이라고 하더라도, log.debug함수 호출이후에 로그를 찍을지 말지가 결정되기 때문에, 파라미터인 String들을 +로 합치는 로직은 무조건 수행되게 된다.

이에 따라, INFO로그 레벨에서 하지 않아도 되는 String의 병합로직을 매번 수행하게 되는 문제가 있다.

위 소스를 다음과 같이 고치면 이 문제가 해결된다. 각각이 개별 파라미터이기 때문에, 함수 호출시 String을 합칠 필요없이 함수가 호출되고 INFO레벨일 경우 추가 작업을 하지 않게 되는 것이다.

log.debug("message content ={}, next value = {}", value1, value2 );

 

반응형