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)