Java용 Pretty Logger - Java로 보기 좋은 명령줄 앱 빌드

5292 단어 loggingclijava


개요



Java는 명령줄 응용 프로그램을 빌드하려는 경우 첫 번째 선택이 아닐 수 있지만 Java 개발자로서 저는 그렇게 하지 않을 이유가 없습니다. Spring Boot 또는 QuarkusGraalVM과 같은 프레임워크의 등장으로 빠르고 성능이 뛰어나며 강력한 명령줄 앱을 쉽게 만들 수 있습니다.

응용 프로그램이 마법처럼 작동할 때 콘솔에 표시되는 내용은 바로잡아야 하는 주요 측면 중 하나입니다. 사용자가 무슨 일이 일어나고 있는지 이해하는 데 도움이 되는 양질의 콘텐츠를 출력하는 방법에 대한 많은 모범 사례가 있지만 또 다른 중요한 것은 미학입니다.

심미성 향상



jansi과 같은 라이브러리를 사용하여 출력을 더 눈에 띄게 만드는 방법은 여러 가지가 있지만 일반적으로 서식 지정을 위한 공통 루틴을 구축하거나 각 출력을 개별적으로 처리해야 합니다.

이것이 제가 PL4J library(자바용 프리티 로거)를 만든 이유입니다. SLF4J용 데코레이터(로깅 패턴을 변경할 필요가 없도록) 사용 가능한 로깅 수준의 수를 풍부하게 하고 더 나은 미학을 위해 다채로운symbolslabels를 추가합니다.

쉽게 시작할 수 있습니다.

PrettyLogger prettyLogger = PrettyLoggerFactory.getLogger(TestClass.class); //same declaration as SLF4J


여러 수준을 사용할 수 있습니다.

prettyLogger.success("received response from: {}", "http://google.com");
prettyLogger.awaiting("parsing input data");
prettyLogger.complete("finish processing");
prettyLogger.debug("value is: {}", "190");
prettyLogger.error("not able to connect to: {}", "http://google.com");
prettyLogger.fatal("something went terribly wrong");
prettyLogger.info("url to connect to: {}", "http://google.com");
prettyLogger.note("remember to run CATS");
prettyLogger.pause("process was paused");
prettyLogger.santa("ho! ho! ho!");
prettyLogger.star("run CATS next time");
prettyLogger.start("process started");
prettyLogger.stop("process paused");
prettyLogger.warning("unable to normalize string");


또한 labelssymbolscolour , bold , underline 를 제어할 수 있을 뿐만 아니라 전역 테마를 설정하여 완전히 다른 symbols 세트를 얻을 수 있습니다.

GitHub에서 전체 기능 집합을 확인할 수 있습니다. https://github.com/ludovicianul/pl4j

좋은 웹페이지 즐겨찾기