[java] Eclipse 콘솔에서 로그 색상 화

Eclipse 콘솔에서 로그의 일부를 채색하는 방법이 있습니까? 나는 오류 및 표준 스트림으로 보내고 다르게 색상을 지정할 수 있다는 것을 알고 있지만 ANSI 이스케이프 코드 (또는 다른 HTML?) 줄에서 색상을 포함하여 문자열에 색상을 지정할 수 있습니다. 로그.

이상한 레이아웃에 의존하지 않고 중요한 비트를 눈에 띄게 만드는 데 도움이 될 것입니다. 오히려 레이아웃을 log4j 설정에 유지하십시오.

다음은 내가 찾고있는 것의 예입니다.

[정보] 그리드가 완성되었습니다. ……. false

굵은 부분이 파란색 인 경우이 색상은 응용 프로그램에서 어느 정도 제어 할 수 있습니다. 그렇게 (태그는 개념적이고 임의적이지만 아이디어를 얻습니다) :

log.info (String.format ( “그리드가 완성되었습니다 ……. <blue>% s </blue>“, isComplete));


보다 일반적인 참고 사항은 이러한 로그를 표시하는 데 도움이되도록 로그에 메타 정보를 포함하는 기능입니다. CSS로 정보를 표시하는 데 도움이되도록 웹 페이지 콘텐츠에 태그를 지정하는 것과 비슷합니다.



답변

이 Eclipse 플러그인 : Grep 콘솔을 사용해보십시오.

[업데이트] :
댓글 작성자가 지적한대로 : 현재 Eclipse의 최신 버전에서 Grep Console을 설치할 때 사용 가능한 항목을 보려면 설치 대화 상자에서 ‘카테고리 별 항목 그룹화’를 선택 취소해야합니다. @Line 에서
지적했듯이 플러그인은 이제 옵션을 변경하지 않고도 Eclipse Marketplace를 통해 쉽게 설치할 수 있습니다.

[업데이트 2] : @azdev가
지적한대로 적절한 강조 표시를 얻으려면 :

리터럴 문자열 만 입력하면 작동하지 않습니다. 색을 칠할 줄을 얻으려면 다음 .*
과 같이 문자열 을 양쪽 으로 묶어야합니다
.
.*ERROR.*


답변

실제로 ANSI 콘솔 플러그인 은 Eclipse 콘솔에 ANSI 이스케이프 코드 지원을 추가합니다. 현재로서는 스크롤 할 때 여러 줄에 걸쳐있는 이스케이프 코드가 다른 줄로 잘못 유출되는 제한이 있습니다. 문제 # 3 참조 . .

그렇지 않으면 이 다른 질문 에서 설명한대로 일부 터미널보기 플러그인 일부 옵션이 될 수 있습니다.


답변

@Benjamin Grep 콘솔이 이미 지적했듯이 콘솔에서 출력을 색상 화하는 좋은 방법입니다.

나는 그것이 어떻게 작동하는지 보여주기 위해 짧은 비디오를 만들었고 Grep 콘솔 플러그인의 창조자로부터 들었다. 그는 Grep 콘솔 3이 출시되었다고 언급했습니다 .

스크린 캐스트 : http://www.youtube.com/watch?v=fXjgGZAxToc

업데이트 사이트

Grep Console 2
http://eclipse.musgit.com
(Eclipse 3.4 (Ganymede) 이상 및 Java 5.0 이상 필요)

Grep Console 3
http://eclipse.schedenig.name
(Eclipse 3.7 (Indigo) 이상 및 Java 6.0 이상 필요)


답변

Logback속성 변환기 사용은 어떻습니까? 의 log4j와 로그 다, 그건 당신이 differents 색상의 differents의 수준을 보려면 허용 할 수 있습니다.

행운을 빕니다!

편집 : 이클립스 플러그인


답변

우리는 제가 일하는 곳에서 Ganymede Eclipse 플러그인을 사용하며 잘 작동합니다.

http://sourceforge.net/projects/ganymede/

“전기 톱 (SocketServer)과 유사하게 작동하는 Eclipse에 대한 log4j 플러그인. 색상, 필터링, 세부 정보를 포함하고 설정을 저장합니다.”


답변

org.eclipse.ui.console.consolePatternMatchListeners 확장 점 에 대해 읽으십시오 .


답변

이미 log4j로 작업하고 있다면 Apache Chainsaw ( http://logging.apache.org/chainsaw/index.html )를 사용해보십시오. 색상 및 필터를 정의하고 거의 제로 구성으로 작업 할 수 있습니다.