:py:mod:`logz`
==============

.. py:module:: conda.auxlib.logz


Classes
-------

.. autoapisummary::

   conda.auxlib.logz.DumpEncoder



Functions
---------

.. autoapisummary::

   conda.auxlib.logz.set_root_level
   conda.auxlib.logz.attach_stderr
   conda.auxlib.logz.detach_stderr
   conda.auxlib.logz.initialize_logging
   conda.auxlib.logz.jsondumps
   conda.auxlib.logz.fullname
   conda.auxlib.logz.request_header_sort_key
   conda.auxlib.logz.response_header_sort_key
   conda.auxlib.logz.stringify



Attributes
----------

.. autoapisummary::

   conda.auxlib.logz.root_log
   conda.auxlib.logz.NullHandler
   conda.auxlib.logz.DEBUG_FORMATTER
   conda.auxlib.logz.INFO_FORMATTER
   conda.auxlib.logz._DUMPS
   conda.auxlib.logz.request_header_sort_dict
   conda.auxlib.logz.response_header_sort_dict


.. py:data:: root_log

   

.. py:data:: NullHandler

   

.. py:data:: DEBUG_FORMATTER

   

.. py:data:: INFO_FORMATTER

   

.. py:function:: set_root_level(level=INFO)


.. py:function:: attach_stderr(level=INFO)


.. py:function:: detach_stderr()


.. py:function:: initialize_logging(level=INFO)


.. py:class:: DumpEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)


   Bases: :py:obj:`json.JSONEncoder`

   Extensible JSON <https://json.org> encoder for Python data structures.

   Supports the following objects and types by default:

   +-------------------+---------------+
   | Python            | JSON          |
   +===================+===============+
   | dict              | object        |
   +-------------------+---------------+
   | list, tuple       | array         |
   +-------------------+---------------+
   | str               | string        |
   +-------------------+---------------+
   | int, float        | number        |
   +-------------------+---------------+
   | True              | true          |
   +-------------------+---------------+
   | False             | false         |
   +-------------------+---------------+
   | None              | null          |
   +-------------------+---------------+

   To extend this to recognize other objects, subclass and implement a
   ``.default()`` method with another method that returns a serializable
   object for ``o`` if possible, otherwise it should call the superclass
   implementation (to raise ``TypeError``).


   Constructor for JSONEncoder, with sensible defaults.

   If skipkeys is false, then it is a TypeError to attempt
   encoding of keys that are not str, int, float or None.  If
   skipkeys is True, such items are simply skipped.

   If ensure_ascii is true, the output is guaranteed to be str
   objects with all incoming non-ASCII characters escaped.  If
   ensure_ascii is false, the output can contain non-ASCII characters.

   If check_circular is true, then lists, dicts, and custom encoded
   objects will be checked for circular references during encoding to
   prevent an infinite recursion (which would cause an RecursionError).
   Otherwise, no such check takes place.

   If allow_nan is true, then NaN, Infinity, and -Infinity will be
   encoded as such.  This behavior is not JSON specification compliant,
   but is consistent with most JavaScript based encoders and decoders.
   Otherwise, it will be a ValueError to encode such floats.

   If sort_keys is true, then the output of dictionaries will be
   sorted by key; this is useful for regression tests to ensure
   that JSON serializations can be compared on a day-to-day basis.

   If indent is a non-negative integer, then JSON array
   elements and object members will be pretty-printed with that
   indent level.  An indent level of 0 will only insert newlines.
   None is the most compact representation.

   If specified, separators should be an (item_separator, key_separator)
   tuple.  The default is (', ', ': ') if *indent* is ``None`` and
   (',', ': ') otherwise.  To get the most compact JSON representation,
   you should specify (',', ':') to eliminate whitespace.

   If specified, default is a function that gets called for objects
   that can't otherwise be serialized.  It should return a JSON encodable
   version of the object or raise a ``TypeError``.


   .. py:method:: default(obj)

      Implement this method in a subclass such that it returns
      a serializable object for ``o``, or calls the base implementation
      (to raise a ``TypeError``).

      For example, to support arbitrary iterators, you could
      implement default like this::

          def default(self, o):
              try:
                  iterable = iter(o)
              except TypeError:
                  pass
              else:
                  return list(iterable)
              # Let the base class default method raise the TypeError
              return JSONEncoder.default(self, o)




.. py:data:: _DUMPS

   

.. py:function:: jsondumps(obj)


.. py:function:: fullname(obj)


.. py:data:: request_header_sort_dict

   

.. py:function:: request_header_sort_key(item)


.. py:data:: response_header_sort_dict

   

.. py:function:: response_header_sort_key(item)


.. py:function:: stringify(obj, content_max_len=0)