LoggingTracer
LoggingTracer
LoggingTracer 로 Haystack 파이프라인을 흐르는 데이터를 실시간으로 어떻게 검사하는지 알아봐요. 트레이싱 백엔드를 미리 설정하지 않아도 돼서, 실험·프로토타이핑 단계에서 특히 유용해요.
출처: 문서
본문
- 트레이서 클래스:
LoggingTracer - 활성화 방법:
tracing.enable_tracing(LoggingTracer(...)) - 콘텐츠 트레이싱: 입력·출력을 로그로 남기려면 필요.
tracing.tracer.is_content_tracing_enabled = True - 패키지: Haystack에 내장
- GitHub: logging_tracer.py
개요 (Overview)
Haystack의 LoggingTracer 로그를 사용해 파이프라인을 흐르는 데이터를 실시간으로 검사해요.
이 기능은 사전에 트레이싱 백엔드를 설정할 필요가 없어서, 실험·프로토타이핑 중에 특히 유용해요.
사용법 (Usage)
이 트레이서를 활성화하는 방법이에요. 이 예시에서는 컴포넌트 이름과 입력을 강조하기 위해 색상 태그를 추가하고 있어요(선택 사항):
import logging
from haystack import tracing
from haystack.tracing.logging_tracer import LoggingTracer
logging.basicConfig(
format="%(levelname)s - %(name)s - %(message)s",
level=logging.WARNING,
)
logging.getLogger("haystack").setLevel(logging.DEBUG)
tracing.tracer.is_content_tracing_enabled = (
True # to enable tracing/logging content (inputs/outputs)
)
tracing.enable_tracing(
LoggingTracer(
tags_color_strings={
"haystack.component.input": "\x1b[1;31m",
"haystack.component.name": "\x1b[1;34m",
},
),
)
파이프라인을 실행하면 결과 로그는 이렇게 생겨요: 컴포넌트 이름, 타입, 입력/출력 사양이 포함된 DEBUG 레벨 트레이싱 로그가 콘솔에 표시돼요.
더 알아보기 (Learn more)
- LoggingTracer GitHub 소스
- 다른 트레이서: Datadog, MLflow, Weave, Custom Tracer