214.8. 로깅 출력의 전체 사용자 정의


Camel 2.11로 사용 가능

#Formatting 섹션에 설명된 옵션을 사용하면 로거의 많은 출력을 제어할 수 있습니다. 그러나 로그 행은 항상 이 구조를 따릅니다.

Exchange[Id:ID-machine-local-50656-1234567901234-1-2, ExchangePattern:InOut,
Properties:{CamelToEndpoint=log://org.apache.camel.component.log.TEST?showAll=true,
CamelCreatedTimestamp=Thu Mar 28 00:00:00 WET 2013},
Headers:{breadcrumbId=ID-machine-local-50656-1234567901234-1-1}, BodyType:String, Body:Hello World, Out: null]

경우에 따라 이 형식을 사용할 수 없습니다.…​

  • …​ 인쇄된 헤더와 속성을 필터링하여 인사이트와 상세 정보 표시 사이의 균형을 유지합니다.
  • …​ 가장 읽기 쉬운 것으로 간주되는 로그 메시지를 조정합니다.
  • …​ 로그 채무 시스템에 대한 다이제스트에 대한 로그 메시지를 조정할 수 있습니다(예: Splunk).
  • …​ 특정 본문 유형을 다르게 출력합니다.
  • …​ etc.

절대 사용자 지정이 필요할 때마다 ExchangeFormatter 인터페이스를 구현하는 클래스를 만들 수 있습니다. format(Exchange) 메서드 내에서 전체 교환에 액세스할 수 있으므로 필요한 정확한 정보를 선택하고 추출하여 사용자 지정 방식으로 포맷한 후 반환할 수 있습니다. 반환 값은 최종 로그 메시지가 됩니다.

로그 구성 요소는 다음 두 가지 방법 중 하나로 사용자 지정 ExchangeFormatter 를 선택할 수 있습니다.

레지스트리에서 LogComponent를 명시적으로 인스턴스화합니다.

<bean name="log" class="org.apache.camel.component.log.LogComponent">
   <property name="exchangeFormatter" ref="myCustomFormatter" />
</bean>

214.8.1. 구성에 대한 규칙:*

단순히 logFormatter 라는 이름으로 8080을 등록하면 Log Component가 자동으로 선택할 수 있을 만큼 지능적입니다.

<bean name="logFormatter" class="com.xyz.MyCustomExchangeFormatter" />
참고

ExchangeFormatter해당 Camel 컨텍스트 내의 모든 로그 끝점에 적용됩니다. 다른 끝점에 대해 다른 ExchangeFormatter가 필요한 경우 LogComponent를 필요에 따라 여러 번 인스턴스화하고 관련 Cryostat 이름을 엔드포인트 접두사로 사용합니다.

사용자 정의 로그 포맷터를 사용할 때 Camel 2.11.2/2.12 부터 사용자 정의 로그 포맷터에 구성된 로그 uri에 매개변수를 지정할 수 있습니다. "logFormatter"를 프로토타입 범위로 정의해야 하지만 다른 매개변수가 있는 경우 공유되지 않습니다. 예를 들면 다음과 같습니다.

<bean name="logFormatter" class="com.xyz.MyCustomExchangeFormatter" scope="prototype"/>

그런 다음 다른 옵션과 함께 uri 로그를 사용하여 Camel 경로를 사용할 수 있습니다.

<to uri="log:foo?param1=foo&amp;param2=100"/>

<to uri="log:bar?param1=bar&amp;param2=200"/>
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동