sshmitm.logger module

class sshmitm.logger.FailSaveLogStream(debug=False)

Bases: object

Parameters:

debug (bool, default: False)

classmethod activate_format(*, debug=False)
Parameters:

debug (bool, default: False)

Return type:

None

flush()
Return type:

None

write(text)
Parameters:

text (str)

Return type:

None

class sshmitm.logger.PlainJsonFormatter(*args, json_default=None, json_encoder=None, json_serializer=<function dumps>, json_indent=None, json_ensure_ascii=True, **kwargs)

Bases: JsonFormatter

Parameters:
  • json_default (Callable | None, default: None)

  • json_encoder (Callable | None, default: None)

  • json_serializer (Callable, default: <function dumps at 0x7efe7c566de0>)

  • json_indent (int | str | None, default: None)

  • json_ensure_ascii (bool, default: True)

add_fields(log_data, record, message_dict)

Extract fields from a LogRecord for logging

This method can be overridden to implement custom logic for adding fields.

Parameters:
  • log_data (dict[str, Any]) – data that will be logged

  • record (LogRecord) – the record to extract data from

  • message_dict (dict[str, Any]) – dictionary that was logged instead of a message. e.g logger.info({“is_this_message_dict”: True})

Return type:

None

Changed in 4.0: log_record renamed to log_data

process_log_record(log_data)

Custom processing of the data to be logged.

Child classes can override this method to alter the log record before it is serialized.

Parameters:

log_data (dict[str, Any]) – incoming data

Return type:

dict[str, Any]

Changed in 4.0: log_record renamed to log_data