:right-sidebar: True Logger =================================================================== .. currentmodule:: gi.repository.Soup .. class:: Logger(**properties: ~typing.Any) :no-contents-entry: Superclasses: :class:`~gi.repository.GObject.Object` Implemented Interfaces: :class:`~gi.repository.Soup.SessionFeature` :Constructors: :: Logger(**properties) new(level:Soup.LoggerLogLevel) -> Soup.Logger Constructors ------------ .. rst-class:: interim-class .. class:: Logger :no-index: .. classmethod:: new(level: ~gi.repository.Soup.LoggerLogLevel) -> ~gi.repository.Soup.Logger Creates a new :obj:`~gi.repository.Soup.Logger` with the given debug level. If you need finer control over what message parts are and aren't logged, use :obj:`~gi.repository.Logger.set_request_filter` and :obj:`~gi.repository.Logger.set_response_filter`. :param level: the debug level Methods ------- .. rst-class:: interim-class .. class:: Logger :no-index: .. method:: get_max_body_size() -> int Get the maximum body size for ``logger``. .. method:: set_max_body_size(max_body_size: int) -> None Sets the maximum body size for ``logger`` (-1 means no limit). :param max_body_size: the maximum body size to log .. method:: set_printer(printer: ~typing.Callable[[...], None], *printer_data: ~typing.Any) -> None Sets up an alternate log printing routine, if you don't want the log to go to ``stdout``. :param printer: the callback for printing logging output :param printer_data: data to pass to the callback .. method:: set_request_filter(request_filter: ~typing.Callable[[...], ~gi.repository.Soup.LoggerLogLevel], *filter_data: ~typing.Any) -> None Sets up a filter to determine the log level for a given request. For each HTTP request ``logger`` will invoke ``request_filter`` to determine how much (if any) of that request to log. (If you do not set a request filter, ``logger`` will just always log requests at the level passed to :obj:`~gi.repository.Logger.new`.) :param request_filter: the callback for request debugging :param filter_data: data to pass to the callback .. method:: set_response_filter(response_filter: ~typing.Callable[[...], ~gi.repository.Soup.LoggerLogLevel], *filter_data: ~typing.Any) -> None Sets up a filter to determine the log level for a given response. For each HTTP response ``logger`` will invoke ``response_filter`` to determine how much (if any) of that response to log. (If you do not set a response filter, ``logger`` will just always log responses at the level passed to :obj:`~gi.repository.Logger.new`.) :param response_filter: the callback for response debugging :param filter_data: data to pass to the callback Properties ---------- .. rst-class:: interim-class .. class:: Logger :no-index: .. attribute:: props.level :type: ~gi.repository.Soup.LoggerLogLevel The level of logging output. .. attribute:: props.max_body_size :type: int If :obj:`~gi.repository.Soup.Logger.props.level` is :const:`~gi.repository.Soup.LoggerLogLevel.BODY`, this gives the maximum number of bytes of the body that will be logged. (-1 means "no limit".)