Skip to content

json_formatter

JsonFormatter

Bases: Formatter

Source code in griptape/configs/logging/json_formatter.py
@define
class JsonFormatter(logging.Formatter):
    indent: int = field(default=2, kw_only=True)

    def __attrs_pre_init__(self) -> None:
        super().__init__()

    def format(self, record: Any) -> str:
        if isinstance(record.msg, dict):
            record.msg = json.dumps(record.msg, indent=self.indent)

        return super().format(record)

indent: int = field(default=2, kw_only=True) class-attribute instance-attribute

__attrs_pre_init__()

Source code in griptape/configs/logging/json_formatter.py
def __attrs_pre_init__(self) -> None:
    super().__init__()

format(record)

Source code in griptape/configs/logging/json_formatter.py
def format(self, record: Any) -> str:
    if isinstance(record.msg, dict):
        record.msg = json.dumps(record.msg, indent=self.indent)

    return super().format(record)