LoggingCallbackHandler Class — langchain Architecture
Architecture documentation for the LoggingCallbackHandler class in logging.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD d2a533f6_07c3_afbb_1995_84f6ea5e24e2["LoggingCallbackHandler"] 94194afc_2151_8249_5bab_5ea33f1d6c7e["FunctionCallbackHandler"] d2a533f6_07c3_afbb_1995_84f6ea5e24e2 -->|extends| 94194afc_2151_8249_5bab_5ea33f1d6c7e c93b073e_0531_3422_6c6f_b830d435b217["logging.py"] d2a533f6_07c3_afbb_1995_84f6ea5e24e2 -->|defined in| c93b073e_0531_3422_6c6f_b830d435b217 301f8138_5a7d_140f_e0e7_02f1a3d99a04["__init__()"] d2a533f6_07c3_afbb_1995_84f6ea5e24e2 -->|method| 301f8138_5a7d_140f_e0e7_02f1a3d99a04 a34051b5_9ba0_758c_fd42_3fa38c4e1001["on_text()"] d2a533f6_07c3_afbb_1995_84f6ea5e24e2 -->|method| a34051b5_9ba0_758c_fd42_3fa38c4e1001
Relationship Graph
Source Code
libs/langchain/langchain_classic/callbacks/tracers/logging.py lines 13–56
class LoggingCallbackHandler(FunctionCallbackHandler):
"""Tracer that logs via the input Logger."""
name: str = "logging_callback_handler"
def __init__(
self,
logger: logging.Logger,
log_level: int = logging.INFO,
extra: dict | None = None,
**kwargs: Any,
) -> None:
"""Initialize the LoggingCallbackHandler.
Args:
logger: the logger to use for logging
log_level: the logging level (default: logging.INFO)
extra: the extra context to log (default: None)
**kwargs: additional keyword arguments.
"""
log_method = getattr(logger, logging.getLevelName(level=log_level).lower())
def callback(text: str) -> None:
log_method(text, extra=extra)
super().__init__(function=callback, **kwargs)
@override
def on_text(
self,
text: str,
*,
run_id: UUID,
parent_run_id: UUID | None = None,
**kwargs: Any,
) -> None:
try:
crumbs_str = f"[{self.get_breadcrumbs(run=self._get_run(run_id=run_id))}] "
except TracerException:
crumbs_str = ""
self.function_callback(
f"{get_colored_text('[text]', color='blue')}"
f" {get_bolded_text(f'{crumbs_str}New text:')}\n{text}",
)
Domain
Extends
Source
Frequently Asked Questions
What is the LoggingCallbackHandler class?
LoggingCallbackHandler is a class in the langchain codebase, defined in libs/langchain/langchain_classic/callbacks/tracers/logging.py.
Where is LoggingCallbackHandler defined?
LoggingCallbackHandler is defined in libs/langchain/langchain_classic/callbacks/tracers/logging.py at line 13.
What does LoggingCallbackHandler extend?
LoggingCallbackHandler extends FunctionCallbackHandler.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free