찾다

 >  Q&A  >  본문

log4j 다중 스레드 로그 출력이 엉망입니다.

Log4j 멀티 스레드 로그 출력이 헷갈립니다. 어떻게 해결해야 할까요? 온라인에서는 출력 파일이 서로 다른 스레드에 따라 정의된다고 하는데 콘솔에 별도로 출력하고 싶은 경우 이 문제를 어떻게 해결할 수 있나요?

이렇게

过去多啦不再A梦过去多啦不再A梦2766일 전1559

모든 응답(1)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-05-24 11:37:38

    원하는 것을 얻으려면 콘솔 로그를 인쇄해야 하며 스레드는 차단되어 대기 중입니다. 예를 들어 스레드 A는 로그를 실행하고 인쇄하기 시작하고 스레드 A도 출력 로그를 인쇄하기 시작합니다. 실행이 완료되지 않은 경우 스레드 B의 출력 내용은 스레드 A가 출력되기 전에 실행이 완료될 때까지 기다려야 합니다. 스레드 A가 장기 실행 스레드라면 어떻게 될까요? 스레드 B는 로그를 인쇄할 수 없습니다.
    절충 방법:
    1. 인쇄된 로그의 LayoutPattern에 %t를 추가하고 스레드 이름을 출력합니다.
    2. 콘솔은 특정 스레드만 출력합니다.
    두 방법 모두 이 것으로 추정됩니다. 질문자가 원한 방법은 아닌데, 어떤 방법이 있는지 전문가의 판단을 기다려보겠습니다

    회신하다
    0
  • 취소회신하다