--- /srv/reproducible-results/rbuild-debian/r-b-build.Ubr1PEUK/b1/python-picologging_0.9.4-3_armhf.changes
+++ /srv/reproducible-results/rbuild-debian/r-b-build.Ubr1PEUK/b2/python-picologging_0.9.4-3_armhf.changes
├── Files
│ @@ -1,4 +1,4 @@
│  
│ - a376d0b813c3a660020d165468acf58e 40664 doc optional python-picologging-doc_0.9.4-3_all.deb
│ + f0f51fddbfa60f7796775e87df565e1b 71844 doc optional python-picologging-doc_0.9.4-3_all.deb
│   f344a83d6cc650f7379b3dbd18ad2501 1664644 debug optional python3-picologging-dbgsym_0.9.4-3_armhf.deb
│   ee8b7114141dfc486443132a81036f67 98252 python optional python3-picologging_0.9.4-3_armhf.deb
├── python-picologging-doc_0.9.4-3_all.deb
│ ├── file list
│ │ @@ -1,3 +1,3 @@
│ │  -rw-r--r--   0        0        0        4 2025-01-26 18:09:13.000000 debian-binary
│ │ --rw-r--r--   0        0        0     1612 2025-01-26 18:09:13.000000 control.tar.xz
│ │ --rw-r--r--   0        0        0    38860 2025-01-26 18:09:13.000000 data.tar.xz
│ │ +-rw-r--r--   0        0        0     1716 2025-01-26 18:09:13.000000 control.tar.xz
│ │ +-rw-r--r--   0        0        0    69936 2025-01-26 18:09:13.000000 data.tar.xz
│ ├── control.tar.xz
│ │ ├── control.tar
│ │ │ ├── file list
│ │ │ │ @@ -1,3 +1,3 @@
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)      752 2025-01-26 18:09:13.000000 ./control
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)     3051 2025-01-26 18:09:13.000000 ./md5sums
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)     3453 2025-01-26 18:09:13.000000 ./md5sums
│ │ │ ├── ./control
│ │ │ │ @@ -1,13 +1,13 @@
│ │ │ │  Package: python-picologging-doc
│ │ │ │  Source: python-picologging
│ │ │ │  Version: 0.9.4-3
│ │ │ │  Architecture: all
│ │ │ │  Maintainer: Debian Python Team <team+python@tracker.debian.org>
│ │ │ │ -Installed-Size: 305
│ │ │ │ +Installed-Size: 750
│ │ │ │  Depends: libjs-sphinxdoc (>= 8.1)
│ │ │ │  Section: doc
│ │ │ │  Priority: optional
│ │ │ │  Multi-Arch: foreign
│ │ │ │  Homepage: https://github.com/microsoft/picologging
│ │ │ │  Description: Fast and lightweight Python logging library (Documentation)
│ │ │ │   Picologging is a high-performance logging library for Python, it's about
│ │ │ ├── ./md5sums
│ │ │ │ ├── ./md5sums
│ │ │ │ │┄ Files differ
│ │ │ │ ├── line order
│ │ │ │ │ @@ -1,11 +1,14 @@
│ │ │ │ │  usr/share/doc-base/python-picologging-doc.python-picologging-doc
│ │ │ │ │  usr/share/doc/python-picologging-doc/changelog.Debian.gz
│ │ │ │ │  usr/share/doc/python-picologging-doc/changelog.gz
│ │ │ │ │  usr/share/doc/python-picologging-doc/copyright
│ │ │ │ │ +usr/share/doc/python-picologging-doc/html/_modules/index.html
│ │ │ │ │ +usr/share/doc/python-picologging-doc/html/_modules/picologging.html
│ │ │ │ │ +usr/share/doc/python-picologging-doc/html/_modules/picologging/handlers.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/django.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/examples.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/handlers.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/index.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/limitations.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_sources/logging.rst.txt
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/_static/basic.css
│ │ │ │ │ @@ -24,9 +27,10 @@
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/examples.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/genindex.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/handlers.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/index.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/limitations.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/logging.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/objects.inv
│ │ │ │ │ +usr/share/doc/python-picologging-doc/html/py-modindex.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/search.html
│ │ │ │ │  usr/share/doc/python-picologging-doc/html/searchindex.js
│ ├── data.tar.xz
│ │ ├── data.tar
│ │ │ ├── file list
│ │ │ │ @@ -3,14 +3,19 @@
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)      602 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/changelog.Debian.gz
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     2918 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/changelog.gz
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     3953 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/copyright
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/
│ │ │ │ +drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_modules/
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    13179 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_modules/index.html
│ │ │ │ +drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_modules/picologging/
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)   147928 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_modules/picologging/handlers.html
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    79779 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_modules/picologging.html
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_sources/
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     1612 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/django.rst.txt
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     1222 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/examples.rst.txt
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     1833 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/handlers.rst.txt
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     3007 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/index.rst.txt
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     1008 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/limitations.rst.txt
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)      109 2024-09-13 10:03:19.000000 ./usr/share/doc/python-picologging-doc/html/_sources/logging.rst.txt
│ │ │ │ @@ -27,21 +32,22 @@
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    12995 2024-08-09 07:01:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/scripts/gumshoe-patched.js
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     6034 2023-07-08 18:40:39.000000 ./usr/share/doc/python-picologging-doc/html/_static/skeleton.css
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/styles/
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)     6327 2024-08-09 07:01:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/styles/furo-extensions.css
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    62431 2024-08-09 07:01:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/styles/furo.css
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    16297 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/django.html
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    18257 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/examples.html
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)    13009 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/genindex.html
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)    19370 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/handlers.html
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    39924 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/genindex.html
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    81223 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/handlers.html
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    19175 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/index.html
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    16328 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/limitations.html
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)    14282 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/logging.html
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)      359 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/objects.inv
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    94097 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/logging.html
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)     1355 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/objects.inv
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    13503 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/py-modindex.html
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)    13281 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/search.html
│ │ │ │ --rw-r--r--   0 root         (0) root         (0)     5699 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/searchindex.js
│ │ │ │ +-rw-r--r--   0 root         (0) root         (0)    33188 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/searchindex.js
│ │ │ │  drwxr-xr-x   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc-base/
│ │ │ │  -rw-r--r--   0 root         (0) root         (0)      427 2025-01-26 18:09:13.000000 ./usr/share/doc-base/python-picologging-doc.python-picologging-doc
│ │ │ │  lrwxrwxrwx   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/doctools.js -> ../../../../javascript/sphinxdoc/1.0/doctools.js
│ │ │ │  lrwxrwxrwx   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/language_data.js -> ../../../../javascript/sphinxdoc/1.0/language_data.js
│ │ │ │  lrwxrwxrwx   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/searchtools.js -> ../../../../javascript/sphinxdoc/1.0/searchtools.js
│ │ │ │  lrwxrwxrwx   0 root         (0) root         (0)        0 2025-01-26 18:09:13.000000 ./usr/share/doc/python-picologging-doc/html/_static/sphinx_highlight.js -> ../../../../javascript/sphinxdoc/1.0/sphinx_highlight.js
│ │ │ ├── ./usr/share/doc/python-picologging-doc/html/genindex.html
│ │ │ │ @@ -235,16 +235,578 @@
│ │ │ │              <i class="icon"><svg><use href="#svg-toc"></use></svg></i>
│ │ │ │            </label>
│ │ │ │          </div>
│ │ │ │          <article role="main" id="furo-main-content">
│ │ │ │            
│ │ │ │  <section class="genindex-section">
│ │ │ │    <h1 id="index">Index</h1>
│ │ │ │ -  <div class="genindex-jumpbox"></div>
│ │ │ │ +  <div class="genindex-jumpbox"><a href="#A"><strong>A</strong></a> | <a href="#B"><strong>B</strong></a> | <a href="#C"><strong>C</strong></a> | <a href="#D"><strong>D</strong></a> | <a href="#E"><strong>E</strong></a> | <a href="#F"><strong>F</strong></a> | <a href="#G"><strong>G</strong></a> | <a href="#H"><strong>H</strong></a> | <a href="#I"><strong>I</strong></a> | <a href="#L"><strong>L</strong></a> | <a href="#M"><strong>M</strong></a> | <a href="#N"><strong>N</strong></a> | <a href="#P"><strong>P</strong></a> | <a href="#Q"><strong>Q</strong></a> | <a href="#R"><strong>R</strong></a> | <a href="#S"><strong>S</strong></a> | <a href="#T"><strong>T</strong></a> | <a href="#U"><strong>U</strong></a> | <a href="#V"><strong>V</strong></a> | <a href="#W"><strong>W</strong></a></div>
│ │ │ │  </section>
│ │ │ │ +<section id="A" class="genindex-section">
│ │ │ │ +  <h2>A</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.acquire">acquire() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.acquire">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Filterer.addFilter">addFilter() (picologging.Filterer method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.addHandler">addHandler() (picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.args">args (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.asctime">asctime (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="B" class="genindex-section">
│ │ │ │ +  <h2>B</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler">BaseRotatingHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.basicConfig">basicConfig() (in module picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BufferingHandler">BufferingHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="C" class="genindex-section">
│ │ │ │ +  <h2>C</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.FileHandler.close">close() (picologging.FileHandler method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.Handler.close">(picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.close">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.BufferingHandler.close">(picologging.handlers.BufferingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.MemoryHandler.close">(picologging.handlers.MemoryHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.SocketHandler.close">(picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.TimedRotatingFileHandler.computeRollover">computeRollover() (picologging.handlers.TimedRotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.created">created (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.createLock">createLock() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.createLock">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.SocketHandler.createSocket">createSocket() (picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.critical">critical() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.critical">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="D" class="genindex-section">
│ │ │ │ +  <h2>D</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.Formatter.datefmt">datefmt (picologging.Formatter attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.debug">debug() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.debug">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueListener.dequeue">dequeue() (picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Manager.disable">disable (picologging.Manager property)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.disable">disable() (in module picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.disabled">disabled (picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler.doRollover">doRollover() (picologging.handlers.BaseRotatingHandler method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.RotatingFileHandler.doRollover">(picologging.handlers.RotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.TimedRotatingFileHandler.doRollover">(picologging.handlers.TimedRotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="E" class="genindex-section">
│ │ │ │ +  <h2>E</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.FileHandler.emit">emit() (picologging.FileHandler method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.Handler.emit">(picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.emit">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler.emit">(picologging.handlers.BaseRotatingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.BufferingHandler.emit">(picologging.handlers.BufferingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.MemoryHandler.emit">(picologging.handlers.MemoryHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.QueueHandler.emit">(picologging.handlers.QueueHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.SocketHandler.emit">(picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.WatchedFileHandler.emit">(picologging.handlers.WatchedFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="logging.html#picologging.NullHandler.emit">(picologging.NullHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="logging.html#picologging.StreamHandler.emit">(picologging.StreamHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueHandler.enqueue">enqueue() (picologging.handlers.QueueHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueListener.enqueue_sentinel">enqueue_sentinel() (picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.error">error() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.error">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.exc_info">exc_info (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.exc_text">exc_text (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.exception">exception() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.exception">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="F" class="genindex-section">
│ │ │ │ +  <h2>F</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.fatal">fatal() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.fatal">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.FileHandler">FileHandler (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.filename">filename (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Filterer.filter">filter() (picologging.Filterer method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Filterer">Filterer (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Filterer.filters">filters (picologging.Filterer attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.flush">flush() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.flush">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.BufferingHandler.flush">(picologging.handlers.BufferingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.MemoryHandler.flush">(picologging.handlers.MemoryHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="logging.html#picologging.StreamHandler.flush">(picologging.StreamHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.FormatStyle.format">format() (picologging.FormatStyle method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Formatter.format">(picologging.Formatter method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.Handler.format">(picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.format">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.Formatter.formatException">formatException() (picologging.Formatter method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Formatter.formatMessage">formatMessage() (picologging.Formatter method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Formatter.formatStack">formatStack() (picologging.Formatter method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.FormatStyle">FormatStyle (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Formatter">Formatter (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.formatter">formatter (picologging.Handler attribute)</a>, <a href="logging.html#picologging.Handler.formatter">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.funcName">funcName (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="G" class="genindex-section">
│ │ │ │ +  <h2>G</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.get_name">get_name() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.get_name">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.getEffectiveLevel">getEffectiveLevel() (picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.TimedRotatingFileHandler.getFilesToDelete">getFilesToDelete() (picologging.handlers.TimedRotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.getLogger">getLogger() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Manager.getLogger">(picologging.Manager method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.getMessage">getMessage() (picologging.LogRecord method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="H" class="genindex-section">
│ │ │ │ +  <h2>H</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.handle">handle() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.handle">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.QueueListener.handle">(picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="logging.html#picologging.NullHandler.handle">(picologging.NullHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.handleError">handleError() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.handleError">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.SocketHandler.handleError">(picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler">Handler (class in picologging)</a>, <a href="logging.html#picologging.Handler">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.handlers">handlers (picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="I" class="genindex-section">
│ │ │ │ +  <h2>I</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.info">info() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.info">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.isEnabledFor">isEnabledFor() (picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="L" class="genindex-section">
│ │ │ │ +  <h2>L</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.level">level (picologging.Handler attribute)</a>, <a href="logging.html#picologging.Handler.level">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.level">(picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.levelname">levelname (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.levelno">levelno (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.lineno">lineno (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.log">log() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.log">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger">Logger (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord">LogRecord (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="M" class="genindex-section">
│ │ │ │ +  <h2>M</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.makeLogRecord">makeLogRecord() (in module picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.SocketHandler.makePickle">makePickle() (picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.SocketHandler.makeSocket">makeSocket() (picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Manager">Manager (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.manager">manager (picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.MemoryHandler">MemoryHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.message">message (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li>
│ │ │ │ +    module
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#module-picologging">picologging</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.module">module (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.msecs">msecs (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.msg">msg (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="N" class="genindex-section">
│ │ │ │ +  <h2>N</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.name">name (picologging.Handler attribute)</a>, <a href="logging.html#picologging.Handler.name">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.name">(picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="logging.html#picologging.LogRecord.name">(picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.NullHandler">NullHandler (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="P" class="genindex-section">
│ │ │ │ +  <h2>P</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.parent">parent (picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.pathname">pathname (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.PercentStyle">PercentStyle (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li>
│ │ │ │ +    picologging
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#module-picologging">module</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueHandler.prepare">prepare() (picologging.handlers.QueueHandler method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.QueueListener.prepare">(picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.process">process (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.processName">processName (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.propagate">propagate (picologging.Logger attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="Q" class="genindex-section">
│ │ │ │ +  <h2>Q</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueHandler">QueueHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueListener">QueueListener (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="R" class="genindex-section">
│ │ │ │ +  <h2>R</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.relativeCreated">relativeCreated (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.release">release() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.release">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Filterer.removeFilter">removeFilter() (picologging.Filterer method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Logger.removeHandler">removeHandler() (picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.WatchedFileHandler.reopenIfNeeded">reopenIfNeeded() (picologging.handlers.WatchedFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler.rotate">rotate() (picologging.handlers.BaseRotatingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.RotatingFileHandler">RotatingFileHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler.rotation_filename">rotation_filename() (picologging.handlers.BaseRotatingHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="S" class="genindex-section">
│ │ │ │ +  <h2>S</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.SocketHandler.send">send() (picologging.handlers.SocketHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.set_name">set_name() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.set_name">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.setFormatter">setFormatter() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.setFormatter">[1]</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.Handler.setLevel">setLevel() (picologging.Handler method)</a>, <a href="logging.html#picologging.Handler.setLevel">[1]</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.setLevel">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="logging.html#picologging.Manager.setLoggerClass">setLoggerClass() (picologging.Manager method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.Manager.setLogRecordFactory">setLogRecordFactory() (picologging.Manager method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.StreamHandler.setStream">setStream() (picologging.StreamHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.MemoryHandler.setTarget">setTarget() (picologging.handlers.MemoryHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.BaseRotatingHandler.shouldRollover">shouldRollover() (picologging.handlers.BaseRotatingHandler method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.RotatingFileHandler.shouldRollover">(picologging.handlers.RotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +          <li><a href="handlers.html#picologging.handlers.TimedRotatingFileHandler.shouldRollover">(picologging.handlers.TimedRotatingFileHandler method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.SocketHandler">SocketHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.stack_info">stack_info (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueListener.start">start() (picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.QueueListener.stop">stop() (picologging.handlers.QueueListener method)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.StreamHandler.stream">stream (picologging.StreamHandler attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.StreamHandler">StreamHandler (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.StrFormatStyle">StrFormatStyle (class in picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="T" class="genindex-section">
│ │ │ │ +  <h2>T</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.thread">thread (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.LogRecord.threadName">threadName (picologging.LogRecord attribute)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.TimedRotatingFileHandler">TimedRotatingFileHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="U" class="genindex-section">
│ │ │ │ +  <h2>U</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.FormatStyle.usesTime">usesTime() (picologging.FormatStyle method)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Formatter.usesTime">(picologging.Formatter method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="V" class="genindex-section">
│ │ │ │ +  <h2>V</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.FormatStyle.validate">validate() (picologging.FormatStyle method)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │ +<section id="W" class="genindex-section">
│ │ │ │ +  <h2>W</h2>
│ │ │ │ +  <table style="width: 100%" class="indextable genindextable"><tr>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="logging.html#picologging.warn">warn() (in module picologging)</a>
│ │ │ │ +</li>
│ │ │ │ +        <li><a href="logging.html#picologging.warning">warning() (in module picologging)</a>
│ │ │ │ +
│ │ │ │ +        <ul>
│ │ │ │ +          <li><a href="logging.html#picologging.Logger.warning">(picologging.Logger method)</a>
│ │ │ │ +</li>
│ │ │ │ +        </ul></li>
│ │ │ │ +    </ul></td>
│ │ │ │ +    <td style="width: 33%; vertical-align: top;"><ul>
│ │ │ │ +        <li><a href="handlers.html#picologging.handlers.WatchedFileHandler">WatchedFileHandler (class in picologging.handlers)</a>
│ │ │ │ +</li>
│ │ │ │ +    </ul></td>
│ │ │ │ +  </tr></table>
│ │ │ │ +</section>
│ │ │ │ +
│ │ │ │  
│ │ │ │          </article>
│ │ │ │        </div>
│ │ │ │        <footer>
│ │ │ │          
│ │ │ │          <div class="related-pages">
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -13,9 +13,194 @@
│ │ │ │ │      * _E_x_a_m_p_l_e_s
│ │ │ │ │      * _U_s_i_n_g_ _w_i_t_h_ _D_j_a_n_g_o
│ │ │ │ │      * _L_i_m_i_t_a_t_i_o_n_s
│ │ │ │ │  _B_a_c_k_ _t_o_ _t_o_p
│ │ │ │ │  Toggle Light / Dark / Auto color theme
│ │ │ │ │  Toggle table of contents sidebar
│ │ │ │ │  ************ IInnddeexx ************
│ │ │ │ │ +_AA | _BB | _CC | _DD | _EE | _FF | _GG | _HH | _II | _LL | _MM | _NN | _PP | _QQ | _RR | _SS | _TT | _UU | _VV | _WW
│ │ │ │ │ +********** AA **********
│ │ │ │ │ +    * _a_c_q_u_i_r_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r        * _a_d_d_H_a_n_d_l_e_r_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r
│ │ │ │ │ +      _m_e_t_h_o_d_), _[_1_]                            _m_e_t_h_o_d_)
│ │ │ │ │ +    * _a_d_d_F_i_l_t_e_r_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_t_e_r_e_r     * _a_r_g_s_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _m_e_t_h_o_d_)                                 _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +                                            * _a_s_c_t_i_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +                                              _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +********** BB **********
│ │ │ │ │ +    * _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n     * _b_a_s_i_c_C_o_n_f_i_g_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)             * _B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +                                          _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +********** CC **********
│ │ │ │ │ +    * _c_l_o_s_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_e_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)         * _c_o_m_p_u_t_e_R_o_l_l_o_v_e_r_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_), _[_1_]            _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r       _m_e_t_h_o_d_)
│ │ │ │ │ +            _m_e_t_h_o_d_)                                    * _c_r_e_a_t_e_d_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._M_e_m_o_r_y_H_a_n_d_l_e_r        * _c_r_e_a_t_e_L_o_c_k_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_), _[_1_]
│ │ │ │ │ +            _m_e_t_h_o_d_)                                    * _c_r_e_a_t_e_S_o_c_k_e_t_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r          _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +            _m_e_t_h_o_d_)                                    * _c_r_i_t_i_c_a_l_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +                                                             o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +********** DD **********
│ │ │ │ │ +    * _d_a_t_e_f_m_t_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r          * _d_i_s_a_b_l_e_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                              * _d_i_s_a_b_l_e_d_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * _d_e_b_u_g_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)         * _d_o_R_o_l_l_o_v_e_r_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)         _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +    * _d_e_q_u_e_u_e_(_)_                                     o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r             _m_e_t_h_o_d_)
│ │ │ │ │ +      _m_e_t_h_o_d_)                                       o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +    * _d_i_s_a_b_l_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._M_a_n_a_g_e_r                    _m_e_t_h_o_d_)
│ │ │ │ │ +      _p_r_o_p_e_r_t_y_)
│ │ │ │ │ +********** EE **********
│ │ │ │ │ +    * _e_m_i_t_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_e_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)             * _e_n_q_u_e_u_e_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_), _[_1_]               _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_H_a_n_d_l_e_r
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r       _m_e_t_h_o_d_)
│ │ │ │ │ +            _m_e_t_h_o_d_)                                       * _e_n_q_u_e_u_e___s_e_n_t_i_n_e_l_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r          _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r
│ │ │ │ │ +            _m_e_t_h_o_d_)                                         _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._M_e_m_o_r_y_H_a_n_d_l_e_r           * _e_r_r_o_r_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +            _m_e_t_h_o_d_)                                             o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_H_a_n_d_l_e_r            * _e_x_c___i_n_f_o_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +            _m_e_t_h_o_d_)                                         _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r           * _e_x_c___t_e_x_t_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +            _m_e_t_h_o_d_)                                         _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r      * _e_x_c_e_p_t_i_o_n_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +            _m_e_t_h_o_d_)                                             o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._N_u_l_l_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._S_t_r_e_a_m_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +********** FF **********
│ │ │ │ │ +    * _f_a_t_a_l_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)                  * _f_o_r_m_a_t_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)                  _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_S_t_y_l_e
│ │ │ │ │ +    * _F_i_l_e_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)                 _m_e_t_h_o_d_)
│ │ │ │ │ +    * _f_i_l_e_n_a_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d_ _a_t_t_r_i_b_u_t_e_)             o _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r
│ │ │ │ │ +    * _f_i_l_t_e_r_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_t_e_r_e_r_ _m_e_t_h_o_d_)                   _m_e_t_h_o_d_)
│ │ │ │ │ +    * _F_i_l_t_e_r_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)                        o _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r
│ │ │ │ │ +    * _f_i_l_t_e_r_s_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_t_e_r_e_r_ _a_t_t_r_i_b_u_t_e_)                 _m_e_t_h_o_d_), _[_1_]
│ │ │ │ │ +    * _f_l_u_s_h_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_), _[_1_]        * _f_o_r_m_a_t_E_x_c_e_p_t_i_o_n_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r       _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r
│ │ │ │ │ +            _m_e_t_h_o_d_)                                      _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._M_e_m_o_r_y_H_a_n_d_l_e_r        * _f_o_r_m_a_t_M_e_s_s_a_g_e_(_)_ 
│ │ │ │ │ +            _m_e_t_h_o_d_)                                      _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._S_t_r_e_a_m_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)           _m_e_t_h_o_d_)
│ │ │ │ │ +                                                       * _f_o_r_m_a_t_S_t_a_c_k_(_)_ 
│ │ │ │ │ +                                                         _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r
│ │ │ │ │ +                                                         _m_e_t_h_o_d_)
│ │ │ │ │ +                                                       * _F_o_r_m_a_t_S_t_y_l_e_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +                                                         _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +                                                       * _F_o_r_m_a_t_t_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +                                                         _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +                                                       * _f_o_r_m_a_t_t_e_r_ 
│ │ │ │ │ +                                                         _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r
│ │ │ │ │ +                                                         _a_t_t_r_i_b_u_t_e_), _[_1_]
│ │ │ │ │ +                                                       * _f_u_n_c_N_a_m_e_ 
│ │ │ │ │ +                                                         _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +                                                         _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +********** GG **********
│ │ │ │ │ +    * _g_e_t___n_a_m_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_), _[_1_]       * _g_e_t_L_o_g_g_e_r_(_)_ _(_i_n_ _m_o_d_u_l_e
│ │ │ │ │ +    * _g_e_t_E_f_f_e_c_t_i_v_e_L_e_v_e_l_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r              _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _m_e_t_h_o_d_)                                                  o _(_p_i_c_o_l_o_g_g_i_n_g_._M_a_n_a_g_e_r
│ │ │ │ │ +    * _g_e_t_F_i_l_e_s_T_o_D_e_l_e_t_e_(_)_                                         _m_e_t_h_o_d_)
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r     * _g_e_t_M_e_s_s_a_g_e_(_)_ 
│ │ │ │ │ +      _m_e_t_h_o_d_)                                              _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +                                                           _m_e_t_h_o_d_)
│ │ │ │ │ +********** HH **********
│ │ │ │ │ +    * _h_a_n_d_l_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r_ _m_e_t_h_o_d_),        * _h_a_n_d_l_e_E_r_r_o_r_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r
│ │ │ │ │ +      _[_1_]                                             _m_e_t_h_o_d_), _[_1_]
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r           o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r
│ │ │ │ │ +            _m_e_t_h_o_d_)                                         _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._N_u_l_l_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)        * _H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_), _[_1_]
│ │ │ │ │ +                                                    * _h_a_n_d_l_e_r_s_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +********** II **********
│ │ │ │ │ +    * _i_n_f_o_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)        * _i_s_E_n_a_b_l_e_d_F_o_r_(_)_ 
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)       _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +********** LL **********
│ │ │ │ │ +    * _l_e_v_e_l_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r           * _l_i_n_e_n_o_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_), _[_1_]                        _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r            * _l_o_g_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +            _a_t_t_r_i_b_u_t_e_)                           o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +    * _l_e_v_e_l_n_a_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d     * _L_o_g_g_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                           * _L_o_g_R_e_c_o_r_d_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +    * _l_e_v_e_l_n_o_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +********** MM **********
│ │ │ │ │ +    * _m_a_k_e_L_o_g_R_e_c_o_r_d_(_)_ _(_i_n_ _m_o_d_u_l_e              * _m_e_s_s_a_g_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _p_i_c_o_l_o_g_g_i_n_g_)                              _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * _m_a_k_e_P_i_c_k_l_e_(_)_                            * module
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r           o _p_i_c_o_l_o_g_g_i_n_g
│ │ │ │ │ +      _m_e_t_h_o_d_)                                 * _m_o_d_u_l_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +    * _m_a_k_e_S_o_c_k_e_t_(_)_                              _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r     * _m_s_e_c_s_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _m_e_t_h_o_d_)                                   _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * _M_a_n_a_g_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)          * _m_s_g_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +    * _m_a_n_a_g_e_r_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r               _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * _M_e_m_o_r_y_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +      _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +********** NN **********
│ │ │ │ │ +    * _n_a_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r        * _N_u_l_l_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_), _[_1_]
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r
│ │ │ │ │ +            _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +            _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +********** PP **********
│ │ │ │ │ +    * _p_a_r_e_n_t_                     * _p_r_e_p_a_r_e_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r          _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_H_a_n_d_l_e_r
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                   _m_e_t_h_o_d_)
│ │ │ │ │ +    * _p_a_t_h_n_a_m_e_                         o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d             _m_e_t_h_o_d_)
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                 * _p_r_o_c_e_s_s_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * _P_e_r_c_e_n_t_S_t_y_l_e_ _(_c_l_a_s_s_ _i_n     * _p_r_o_c_e_s_s_N_a_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _p_i_c_o_l_o_g_g_i_n_g_)                 _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +    * picologging                * _p_r_o_p_a_g_a_t_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +          o _m_o_d_u_l_e
│ │ │ │ │ +********** QQ **********
│ │ │ │ │ +    * _Q_u_e_u_e_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n     * _Q_u_e_u_e_L_i_s_t_e_n_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +      _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)        _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +********** RR **********
│ │ │ │ │ +    * _r_e_l_a_t_i_v_e_C_r_e_a_t_e_d_            * _r_e_o_p_e_n_I_f_N_e_e_d_e_d_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d       _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                   _m_e_t_h_o_d_)
│ │ │ │ │ +    * _r_e_l_e_a_s_e_(_)_                  * _r_o_t_a_t_e_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r         _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r
│ │ │ │ │ +      _m_e_t_h_o_d_), _[_1_]                 _m_e_t_h_o_d_)
│ │ │ │ │ +    * _r_e_m_o_v_e_F_i_l_t_e_r_(_)_             * _R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._F_i_l_t_e_r_e_r        _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +      _m_e_t_h_o_d_)                    * _r_o_t_a_t_i_o_n___f_i_l_e_n_a_m_e_(_)_ 
│ │ │ │ │ +    * _r_e_m_o_v_e_H_a_n_d_l_e_r_(_)_              _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r          _m_e_t_h_o_d_)
│ │ │ │ │ +      _m_e_t_h_o_d_)
│ │ │ │ │ +********** SS **********
│ │ │ │ │ +    * _s_e_n_d_(_)_                                  * _s_h_o_u_l_d_R_o_l_l_o_v_e_r_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._S_o_c_k_e_t_H_a_n_d_l_e_r       _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +      _m_e_t_h_o_d_)                                       o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +    * _s_e_t___n_a_m_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r                 _m_e_t_h_o_d_)
│ │ │ │ │ +      _m_e_t_h_o_d_), _[_1_]                                  o _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +    * _s_e_t_F_o_r_m_a_t_t_e_r_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r             _m_e_t_h_o_d_)
│ │ │ │ │ +      _m_e_t_h_o_d_), _[_1_]                            * _S_o_c_k_e_t_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +    * _s_e_t_L_e_v_e_l_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._H_a_n_d_l_e_r         * _s_t_a_c_k___i_n_f_o_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +      _m_e_t_h_o_d_), _[_1_]                            * _s_t_a_r_t_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)       * _s_t_o_p_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._Q_u_e_u_e_L_i_s_t_e_n_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +    * _s_e_t_L_o_g_g_e_r_C_l_a_s_s_(_)_                        * _s_t_r_e_a_m_ _(_p_i_c_o_l_o_g_g_i_n_g_._S_t_r_e_a_m_H_a_n_d_l_e_r_ _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._M_a_n_a_g_e_r_ _m_e_t_h_o_d_)            * _S_t_r_e_a_m_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +    * _s_e_t_L_o_g_R_e_c_o_r_d_F_a_c_t_o_r_y_(_)_                   * _S_t_r_F_o_r_m_a_t_S_t_y_l_e_ _(_c_l_a_s_s_ _i_n_ _p_i_c_o_l_o_g_g_i_n_g_)
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._M_a_n_a_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +    * _s_e_t_S_t_r_e_a_m_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._S_t_r_e_a_m_H_a_n_d_l_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +    * _s_e_t_T_a_r_g_e_t_(_)_ 
│ │ │ │ │ +      _(_p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_._M_e_m_o_r_y_H_a_n_d_l_e_r
│ │ │ │ │ +      _m_e_t_h_o_d_)
│ │ │ │ │ +********** TT **********
│ │ │ │ │ +    * _t_h_r_e_a_d_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d     * _t_h_r_e_a_d_N_a_m_e_ _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_R_e_c_o_r_d
│ │ │ │ │ +      _a_t_t_r_i_b_u_t_e_)                          _a_t_t_r_i_b_u_t_e_)
│ │ │ │ │ +                                        * _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +                                          _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +********** UU **********
│ │ │ │ │ +    * _u_s_e_s_T_i_m_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_S_t_y_l_e_ _m_e_t_h_o_d_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_t_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │ +********** VV **********
│ │ │ │ │ +    * _v_a_l_i_d_a_t_e_(_)_ _(_p_i_c_o_l_o_g_g_i_n_g_._F_o_r_m_a_t_S_t_y_l_e_ _m_e_t_h_o_d_)
│ │ │ │ │ +********** WW **********
│ │ │ │ │ +    * _w_a_r_n_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)        * _W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r_ _(_c_l_a_s_s_ _i_n
│ │ │ │ │ +    * _w_a_r_n_i_n_g_(_)_ _(_i_n_ _m_o_d_u_l_e_ _p_i_c_o_l_o_g_g_i_n_g_)       _p_i_c_o_l_o_g_g_i_n_g_._h_a_n_d_l_e_r_s_)
│ │ │ │ │ +          o _(_p_i_c_o_l_o_g_g_i_n_g_._L_o_g_g_e_r_ _m_e_t_h_o_d_)
│ │ │ │ │  Copyright © 2022, Microsoft
│ │ │ │ │  Made with _S_p_h_i_n_x and _@_p_r_a_d_y_u_n_s_g's _F_u_r_o
│ │ │ ├── ./usr/share/doc/python-picologging-doc/html/handlers.html
│ │ │ │ @@ -244,29 +244,332 @@
│ │ │ │            </label>
│ │ │ │          </div>
│ │ │ │          <article role="main" id="furo-main-content">
│ │ │ │            <section id="handlers">
│ │ │ │  <span id="id1"></span><h1>Handlers<a class="headerlink" href="#handlers" title="Link to this heading">¶</a></h1>
│ │ │ │  <section id="base-handler">
│ │ │ │  <h2>Base Handler<a class="headerlink" href="#base-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Handler</span></span><a class="headerlink" href="#picologging.Handler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler interface.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.acquire">
│ │ │ │ +<span class="sig-name descname"><span class="pre">acquire</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.acquire" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Acquire the lock.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Tidy up any resources used by the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.createLock">
│ │ │ │ +<span class="sig-name descname"><span class="pre">createLock</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.createLock" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Create a new lock instance.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.flush">
│ │ │ │ +<span class="sig-name descname"><span class="pre">flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.flush" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Ensure all logging output has been flushed.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.format">
│ │ │ │ +<span class="sig-name descname"><span class="pre">format</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.format" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.formatter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">formatter</span></span><a class="headerlink" href="#picologging.Handler.formatter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler formatter</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.get_name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">get_name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.get_name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get the name of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.handle">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.handle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.handleError">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handleError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.handleError" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle an error during an emit().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.level">
│ │ │ │ +<span class="sig-name descname"><span class="pre">level</span></span><a class="headerlink" href="#picologging.Handler.level" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler level</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">name</span></span><a class="headerlink" href="#picologging.Handler.name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.release">
│ │ │ │ +<span class="sig-name descname"><span class="pre">release</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.release" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Release the lock.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.setFormatter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setFormatter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.setFormatter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the formatter of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.setLevel">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setLevel</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.setLevel" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the level of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.set_name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">set_name</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.set_name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the name of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="watched-file-handler">
│ │ │ │  <h2>Watched File Handler<a class="headerlink" href="#watched-file-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.WatchedFileHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">WatchedFileHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'a'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#WatchedFileHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.WatchedFileHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A handler for logging to a file, which watches the file
│ │ │ │ +to see if it has changed while in use. This can happen because of
│ │ │ │ +usage of programs such as newsyslog and logrotate which perform
│ │ │ │ +log file rotation. This handler, intended for use under Unix,
│ │ │ │ +watches the file to see if it has changed since the last emit.
│ │ │ │ +(A file has changed if its device or inode have changed.)
│ │ │ │ +If it has changed, the old file stream is closed, and the file
│ │ │ │ +opened to get a new stream.</p>
│ │ │ │ +<p>This handler is not appropriate for use under Windows, because
│ │ │ │ +under Windows open files cannot be moved or renamed - logging
│ │ │ │ +opens the files with exclusive locks - and so there is no need
│ │ │ │ +for such a handler. Furthermore, ST_INO is not supported under
│ │ │ │ +Windows; stat always returns zero for this value.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.WatchedFileHandler.reopenIfNeeded">
│ │ │ │ +<span class="sig-name descname"><span class="pre">reopenIfNeeded</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#WatchedFileHandler.reopenIfNeeded"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.WatchedFileHandler.reopenIfNeeded" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Reopen log file if needed.</p>
│ │ │ │ +<p>Checks if the underlying file has changed, and if it
│ │ │ │ +has, close the old stream and reopen the file to get the
│ │ │ │ +current stream.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.WatchedFileHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#WatchedFileHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.WatchedFileHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +<p>If underlying file has changed, reopen the file before emitting the
│ │ │ │ +record to it.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="base-rotating-handler">
│ │ │ │  <h2>Base Rotating Handler<a class="headerlink" href="#base-rotating-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">BaseRotatingHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Base class for handlers that rotate log files at a certain point.
│ │ │ │ +Not meant to be instantiated directly.  Instead, use RotatingFileHandler
│ │ │ │ +or TimedRotatingFileHandler.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler.shouldRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">shouldRollover</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler.shouldRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler.shouldRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Determine if rollover should occur.
│ │ │ │ +Should be implemented in inherited classes.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler.doRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">doRollover</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler.doRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler.doRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Do a rollover.
│ │ │ │ +Should be implemented in inherited classes.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.
│ │ │ │ +Output the record to the file, catering for rollover as described
│ │ │ │ +in doRollover().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler.rotation_filename">
│ │ │ │ +<span class="sig-name descname"><span class="pre">rotation_filename</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">default_name</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler.rotation_filename"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler.rotation_filename" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Modify the filename of a log file when rotating.
│ │ │ │ +This is provided so that a custom filename can be provided.
│ │ │ │ +The default implementation calls the ‘namer’ attribute of the
│ │ │ │ +handler, if it’s callable, passing the default name to
│ │ │ │ +it. If the attribute isn’t callable (the default is None), the name
│ │ │ │ +is returned unchanged.
│ │ │ │ +:param default_name: The default name for the log file.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BaseRotatingHandler.rotate">
│ │ │ │ +<span class="sig-name descname"><span class="pre">rotate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">source</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dest</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BaseRotatingHandler.rotate"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BaseRotatingHandler.rotate" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>When rotating, rotate the current log.
│ │ │ │ +The default implementation calls the ‘rotator’ attribute of the
│ │ │ │ +handler, if it’s callable, passing the source and dest arguments to
│ │ │ │ +it. If the attribute isn’t callable (the default is None), the source
│ │ │ │ +is simply renamed to the destination.</p>
│ │ │ │ +<dl class="field-list simple">
│ │ │ │ +<dt class="field-odd">Parameters<span class="colon">:</span></dt>
│ │ │ │ +<dd class="field-odd"><ul class="simple">
│ │ │ │ +<li><p><strong>source</strong> – The source filename. This is normally the base
│ │ │ │ +filename, e.g. ‘test.log’</p></li>
│ │ │ │ +<li><p><strong>dest</strong> – The destination filename. This is normally
│ │ │ │ +what the source is rotated to, e.g. ‘test.log.1’.</p></li>
│ │ │ │ +</ul>
│ │ │ │ +</dd>
│ │ │ │ +</dl>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="rotating-file-handler">
│ │ │ │  <h2>Rotating File Handler<a class="headerlink" href="#rotating-file-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.RotatingFileHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">RotatingFileHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'a'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">maxBytes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">backupCount</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#RotatingFileHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.RotatingFileHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler for logging to a set of files, which switches from one file
│ │ │ │ +to the next when the current file reaches a certain size.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.RotatingFileHandler.doRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">doRollover</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#RotatingFileHandler.doRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.RotatingFileHandler.doRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Do a rollover, as described in __init__().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.RotatingFileHandler.shouldRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">shouldRollover</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#RotatingFileHandler.shouldRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.RotatingFileHandler.shouldRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Determine if rollover should occur.
│ │ │ │ +Basically, see if the supplied record would cause the file to exceed
│ │ │ │ +the size limit we have.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="timed-rotating-file-handler">
│ │ │ │  <h2>Timed Rotating File Handler<a class="headerlink" href="#timed-rotating-file-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.TimedRotatingFileHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">TimedRotatingFileHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">when</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'h'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">interval</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">backupCount</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">utc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">atTime</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#TimedRotatingFileHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.TimedRotatingFileHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler for logging to a file, rotating the log file at certain timed
│ │ │ │ +intervals.
│ │ │ │ +If backupCount is &gt; 0, when rollover is done, no more than backupCount
│ │ │ │ +files are kept - the oldest ones are deleted.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.TimedRotatingFileHandler.computeRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">computeRollover</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">current_time</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#TimedRotatingFileHandler.computeRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.TimedRotatingFileHandler.computeRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Work out the rollover time based on the specified time.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.TimedRotatingFileHandler.shouldRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">shouldRollover</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#TimedRotatingFileHandler.shouldRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.TimedRotatingFileHandler.shouldRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Determine if rollover should occur.
│ │ │ │ +record is not used, as we are just comparing times, but it is needed so
│ │ │ │ +the method signatures are the same</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.TimedRotatingFileHandler.getFilesToDelete">
│ │ │ │ +<span class="sig-name descname"><span class="pre">getFilesToDelete</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#TimedRotatingFileHandler.getFilesToDelete"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.TimedRotatingFileHandler.getFilesToDelete" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Determine the files to delete when rolling over.
│ │ │ │ +More specific than the earlier method, which just used glob.glob().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.TimedRotatingFileHandler.doRollover">
│ │ │ │ +<span class="sig-name descname"><span class="pre">doRollover</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#TimedRotatingFileHandler.doRollover"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.TimedRotatingFileHandler.doRollover" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>do a rollover; in this case, a date/time stamp is appended to the filename
│ │ │ │ +when the rollover happens.  However, you want the file to be named for the
│ │ │ │ +start of the interval, not the current time.  If there is a backup count,
│ │ │ │ +then we have to get a list of matching filenames, sort them and remove
│ │ │ │ +the one with the oldest suffix.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="queue-handler">
│ │ │ │  <h2>Queue Handler<a class="headerlink" href="#queue-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">QueueHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">queue</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>This handler sends events to a queue. Typically, it would be used together
│ │ │ │ +with a multiprocessing Queue to centralise logging to file in one process
│ │ │ │ +(in a multi-process application), so as to avoid file write contention
│ │ │ │ +between processes.</p>
│ │ │ │ +<p>This code is new in Python 3.2, but this class can be copy pasted into
│ │ │ │ +user code for use with earlier Python versions.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueHandler.enqueue">
│ │ │ │ +<span class="sig-name descname"><span class="pre">enqueue</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueHandler.enqueue"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueHandler.enqueue" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Enqueue a record.</p>
│ │ │ │ +<p>The base implementation uses put_nowait. You may want to override
│ │ │ │ +this method if you want to use blocking, timeouts or custom queue
│ │ │ │ +implementations.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueHandler.prepare">
│ │ │ │ +<span class="sig-name descname"><span class="pre">prepare</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueHandler.prepare"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueHandler.prepare" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Prepare a record for queuing. The object returned by this method is
│ │ │ │ +enqueued.</p>
│ │ │ │ +<p>The base implementation formats the record to merge the message and
│ │ │ │ +arguments, and removes unpickleable items from the record in-place.
│ │ │ │ +Specifically, it overwrites the record’s <cite>msg</cite> and
│ │ │ │ +<cite>message</cite> attributes with the merged message (obtained by
│ │ │ │ +calling the handler’s <cite>format</cite> method), and sets the <cite>args</cite>,
│ │ │ │ +<cite>exc_info</cite> and <cite>exc_text</cite> attributes to None.</p>
│ │ │ │ +<p>You might want to override this method if you want to convert
│ │ │ │ +the record to a dict or JSON string, or send a modified copy
│ │ │ │ +of the record while leaving the original intact.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="logging.html#picologging.LogRecord" title="picologging.LogRecord"><span class="pre">LogRecord</span></a></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +<p>Writes the LogRecord to the queue, copying it first.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="queue-listener">
│ │ │ │  <h2>Queue Listener<a class="headerlink" href="#queue-listener" title="Link to this heading">¶</a></h2>
│ │ │ │  <p>The queue listener and queue handler can be combined for non-blocking logging, for example:</p>
│ │ │ │  <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">logger</span> <span class="o">=</span> <span class="n">picologging</span><span class="o">.</span><span class="n">Logger</span><span class="p">(</span><span class="s2">&quot;test&quot;</span><span class="p">,</span> <span class="n">picologging</span><span class="o">.</span><span class="n">DEBUG</span><span class="p">)</span>
│ │ │ │  <span class="n">stream</span> <span class="o">=</span> <span class="n">io</span><span class="o">.</span><span class="n">StringIO</span><span class="p">()</span>
│ │ │ │  <span class="n">stream_handler</span> <span class="o">=</span> <span class="n">picologging</span><span class="o">.</span><span class="n">StreamHandler</span><span class="p">(</span><span class="n">stream</span><span class="p">)</span>
│ │ │ │ @@ -277,23 +580,215 @@
│ │ │ │  <span class="n">logger</span><span class="o">.</span><span class="n">addHandler</span><span class="p">(</span><span class="n">handler</span><span class="p">)</span>
│ │ │ │  <span class="n">logger</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="s2">&quot;test&quot;</span><span class="p">)</span>
│ │ │ │  
│ │ │ │  <span class="n">listener</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
│ │ │ │  <span class="k">assert</span> <span class="n">stream</span><span class="o">.</span><span class="n">getvalue</span><span class="p">()</span> <span class="o">==</span> <span class="s2">&quot;test</span><span class="se">\n</span><span class="s2">&quot;</span>
│ │ │ │  </pre></div>
│ │ │ │  </div>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">QueueListener</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">queue</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">handlers</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">respect_handler_level</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>This class implements an internal threaded listener which watches for
│ │ │ │ +LogRecords being added to a queue, removes them and passes them to a
│ │ │ │ +list of handlers for processing.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.dequeue">
│ │ │ │ +<span class="sig-name descname"><span class="pre">dequeue</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">block</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.dequeue"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.dequeue" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Dequeue a record and return it, optionally blocking.</p>
│ │ │ │ +<p>The base implementation uses get. You may want to override this method
│ │ │ │ +if you want to use timeouts or work with custom queue implementations.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.start">
│ │ │ │ +<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.start" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Start the listener.</p>
│ │ │ │ +<p>This starts up a background thread to monitor the queue for
│ │ │ │ +LogRecords to process.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.prepare">
│ │ │ │ +<span class="sig-name descname"><span class="pre">prepare</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.prepare"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.prepare" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Prepare a record for handling.</p>
│ │ │ │ +<p>This method just returns the passed-in record. You may want to
│ │ │ │ +override this method if you need to do any custom marshalling or
│ │ │ │ +manipulation of the record before passing it to the handlers.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.handle">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.handle"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.handle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle a record.</p>
│ │ │ │ +<p>This just loops through the handlers offering them the record
│ │ │ │ +to handle.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.enqueue_sentinel">
│ │ │ │ +<span class="sig-name descname"><span class="pre">enqueue_sentinel</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.enqueue_sentinel"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.enqueue_sentinel" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>This is used to enqueue the sentinel record.</p>
│ │ │ │ +<p>The base implementation uses put_nowait. You may want to override this
│ │ │ │ +method if you want to use timeouts or work with custom queue
│ │ │ │ +implementations.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.QueueListener.stop">
│ │ │ │ +<span class="sig-name descname"><span class="pre">stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#QueueListener.stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.QueueListener.stop" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Stop the listener.</p>
│ │ │ │ +<p>This asks the thread to terminate, and then waits for it to do so.
│ │ │ │ +Note that if you don’t call this before your application exits, there
│ │ │ │ +may be some records still left on the queue, which won’t be processed.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="buffering-handler">
│ │ │ │  <h2>Buffering Handler<a class="headerlink" href="#buffering-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BufferingHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">BufferingHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">capacity</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BufferingHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BufferingHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A handler class which buffers logging records in memory. Whenever each
│ │ │ │ +record is added to the buffer, a check is made to see if the buffer should
│ │ │ │ +be flushed. If it should, then flush() is expected to do what’s needed.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BufferingHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BufferingHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BufferingHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.
│ │ │ │ +Append the record and call flush() if criteria is met.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BufferingHandler.flush">
│ │ │ │ +<span class="sig-name descname"><span class="pre">flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BufferingHandler.flush"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BufferingHandler.flush" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Override to implement custom flushing behaviour.
│ │ │ │ +This version just zaps the buffer to empty.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.BufferingHandler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#BufferingHandler.close"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.BufferingHandler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Close the handler.
│ │ │ │ +This version just flushes and chains to the parent class’ close().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="memory-handler">
│ │ │ │  <h2>Memory Handler<a class="headerlink" href="#memory-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.MemoryHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">MemoryHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">capacity</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flushLevel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">40</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">target</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flushOnClose</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#MemoryHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.MemoryHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A handler class which buffers logging records in memory, periodically
│ │ │ │ +flushing them to a target handler. Flushing occurs whenever the buffer
│ │ │ │ +is full, or when an event of a certain severity or greater is seen.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.MemoryHandler.setTarget">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setTarget</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">target</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#MemoryHandler.setTarget"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.MemoryHandler.setTarget" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the target handler for this handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.MemoryHandler.flush">
│ │ │ │ +<span class="sig-name descname"><span class="pre">flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#MemoryHandler.flush"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.MemoryHandler.flush" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>For a MemoryHandler, flushing means just sending the buffered
│ │ │ │ +records to the target, if there is one. Override if you want
│ │ │ │ +different behaviour.
│ │ │ │ +The record buffer is also cleared by this operation.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.MemoryHandler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#MemoryHandler.close"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.MemoryHandler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Flush, if appropriately configured, set the target to None and lose the
│ │ │ │ +buffer.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.MemoryHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#MemoryHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.MemoryHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.
│ │ │ │ +Append the record and call flush() if criteria is met.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  <section id="socket-handler">
│ │ │ │  <h2>Socket Handler<a class="headerlink" href="#socket-handler" title="Link to this heading">¶</a></h2>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.handlers.</span></span><span class="sig-name descname"><span class="pre">SocketHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">host</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">port</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A handler class which writes logging records, in pickle format, to
│ │ │ │ +a streaming socket. The socket is kept open across logging calls.
│ │ │ │ +If the peer resets it, an attempt is made to reconnect on the next call.
│ │ │ │ +The pickle which is sent is that of the LogRecord’s attribute dictionary
│ │ │ │ +(__dict__), so that the receiver does not need to have the logging module
│ │ │ │ +installed in order to process the logging event.
│ │ │ │ +To unpickle the record at the receiving end into a LogRecord, use the
│ │ │ │ +makeLogRecord function.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.makeSocket">
│ │ │ │ +<span class="sig-name descname"><span class="pre">makeSocket</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.makeSocket"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.makeSocket" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A factory method which allows subclasses to define the precise
│ │ │ │ +type of socket they want.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.createSocket">
│ │ │ │ +<span class="sig-name descname"><span class="pre">createSocket</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.createSocket"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.createSocket" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Try to create a socket, using an exponential backoff with
│ │ │ │ +a max retry time.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.send">
│ │ │ │ +<span class="sig-name descname"><span class="pre">send</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">s</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.send"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.send" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Send a pickled string to the socket.
│ │ │ │ +This function allows for partial sends which can happen when the
│ │ │ │ +network is busy.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.makePickle">
│ │ │ │ +<span class="sig-name descname"><span class="pre">makePickle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.makePickle"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.makePickle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Pickles the record in binary format with a length prefix, and
│ │ │ │ +returns it ready for transmission across the socket.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.handleError">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handleError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.handleError"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.handleError" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle an error during logging.
│ │ │ │ +An error has occurred during logging. Most likely cause -
│ │ │ │ +connection lost. Close the socket so that we can retry on the
│ │ │ │ +next event.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.
│ │ │ │ +Pickles the record and writes it to the socket in binary format.
│ │ │ │ +If there is an error with the socket, silently drop the packet.
│ │ │ │ +If there was a problem with the socket, re-establishes the
│ │ │ │ +socket.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.handlers.SocketHandler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging/handlers.html#SocketHandler.close"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.handlers.SocketHandler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Closes the socket.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  </section>
│ │ │ │  
│ │ │ │          </article>
│ │ │ │        </div>
│ │ │ │        <footer>
│ │ │ │          
│ │ │ │ @@ -345,24 +840,126 @@
│ │ │ │              On this page
│ │ │ │            </span>
│ │ │ │          </div>
│ │ │ │          <div class="toc-tree-container">
│ │ │ │            <div class="toc-tree">
│ │ │ │              <ul>
│ │ │ │  <li><a class="reference internal" href="#">Handlers</a><ul>
│ │ │ │ -<li><a class="reference internal" href="#base-handler">Base Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#watched-file-handler">Watched File Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#base-rotating-handler">Base Rotating Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#rotating-file-handler">Rotating File Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#timed-rotating-file-handler">Timed Rotating File Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#queue-handler">Queue Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#queue-listener">Queue Listener</a></li>
│ │ │ │ -<li><a class="reference internal" href="#buffering-handler">Buffering Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#memory-handler">Memory Handler</a></li>
│ │ │ │ -<li><a class="reference internal" href="#socket-handler">Socket Handler</a></li>
│ │ │ │ +<li><a class="reference internal" href="#base-handler">Base Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler"><code class="docutils literal notranslate"><span class="pre">Handler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.acquire"><code class="docutils literal notranslate"><span class="pre">Handler.acquire()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.close"><code class="docutils literal notranslate"><span class="pre">Handler.close()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.createLock"><code class="docutils literal notranslate"><span class="pre">Handler.createLock()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.emit"><code class="docutils literal notranslate"><span class="pre">Handler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.flush"><code class="docutils literal notranslate"><span class="pre">Handler.flush()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.format"><code class="docutils literal notranslate"><span class="pre">Handler.format()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.formatter"><code class="docutils literal notranslate"><span class="pre">Handler.formatter</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.get_name"><code class="docutils literal notranslate"><span class="pre">Handler.get_name()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.handle"><code class="docutils literal notranslate"><span class="pre">Handler.handle()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.handleError"><code class="docutils literal notranslate"><span class="pre">Handler.handleError()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.level"><code class="docutils literal notranslate"><span class="pre">Handler.level</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.name"><code class="docutils literal notranslate"><span class="pre">Handler.name</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.release"><code class="docutils literal notranslate"><span class="pre">Handler.release()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.setFormatter"><code class="docutils literal notranslate"><span class="pre">Handler.setFormatter()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.setLevel"><code class="docutils literal notranslate"><span class="pre">Handler.setLevel()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.set_name"><code class="docutils literal notranslate"><span class="pre">Handler.set_name()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#watched-file-handler">Watched File Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.WatchedFileHandler"><code class="docutils literal notranslate"><span class="pre">WatchedFileHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.WatchedFileHandler.reopenIfNeeded"><code class="docutils literal notranslate"><span class="pre">WatchedFileHandler.reopenIfNeeded()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.WatchedFileHandler.emit"><code class="docutils literal notranslate"><span class="pre">WatchedFileHandler.emit()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#base-rotating-handler">Base Rotating Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler.shouldRollover"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler.shouldRollover()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler.doRollover"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler.doRollover()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler.emit"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler.rotation_filename"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler.rotation_filename()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BaseRotatingHandler.rotate"><code class="docutils literal notranslate"><span class="pre">BaseRotatingHandler.rotate()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#rotating-file-handler">Rotating File Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.RotatingFileHandler"><code class="docutils literal notranslate"><span class="pre">RotatingFileHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.RotatingFileHandler.doRollover"><code class="docutils literal notranslate"><span class="pre">RotatingFileHandler.doRollover()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.RotatingFileHandler.shouldRollover"><code class="docutils literal notranslate"><span class="pre">RotatingFileHandler.shouldRollover()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#timed-rotating-file-handler">Timed Rotating File Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.TimedRotatingFileHandler"><code class="docutils literal notranslate"><span class="pre">TimedRotatingFileHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.TimedRotatingFileHandler.computeRollover"><code class="docutils literal notranslate"><span class="pre">TimedRotatingFileHandler.computeRollover()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.TimedRotatingFileHandler.shouldRollover"><code class="docutils literal notranslate"><span class="pre">TimedRotatingFileHandler.shouldRollover()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.TimedRotatingFileHandler.getFilesToDelete"><code class="docutils literal notranslate"><span class="pre">TimedRotatingFileHandler.getFilesToDelete()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.TimedRotatingFileHandler.doRollover"><code class="docutils literal notranslate"><span class="pre">TimedRotatingFileHandler.doRollover()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#queue-handler">Queue Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueHandler"><code class="docutils literal notranslate"><span class="pre">QueueHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueHandler.enqueue"><code class="docutils literal notranslate"><span class="pre">QueueHandler.enqueue()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueHandler.prepare"><code class="docutils literal notranslate"><span class="pre">QueueHandler.prepare()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueHandler.emit"><code class="docutils literal notranslate"><span class="pre">QueueHandler.emit()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#queue-listener">Queue Listener</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener"><code class="docutils literal notranslate"><span class="pre">QueueListener</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.dequeue"><code class="docutils literal notranslate"><span class="pre">QueueListener.dequeue()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.start"><code class="docutils literal notranslate"><span class="pre">QueueListener.start()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.prepare"><code class="docutils literal notranslate"><span class="pre">QueueListener.prepare()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.handle"><code class="docutils literal notranslate"><span class="pre">QueueListener.handle()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.enqueue_sentinel"><code class="docutils literal notranslate"><span class="pre">QueueListener.enqueue_sentinel()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.QueueListener.stop"><code class="docutils literal notranslate"><span class="pre">QueueListener.stop()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#buffering-handler">Buffering Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BufferingHandler"><code class="docutils literal notranslate"><span class="pre">BufferingHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BufferingHandler.emit"><code class="docutils literal notranslate"><span class="pre">BufferingHandler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BufferingHandler.flush"><code class="docutils literal notranslate"><span class="pre">BufferingHandler.flush()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.BufferingHandler.close"><code class="docutils literal notranslate"><span class="pre">BufferingHandler.close()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#memory-handler">Memory Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.MemoryHandler"><code class="docutils literal notranslate"><span class="pre">MemoryHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.MemoryHandler.setTarget"><code class="docutils literal notranslate"><span class="pre">MemoryHandler.setTarget()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.MemoryHandler.flush"><code class="docutils literal notranslate"><span class="pre">MemoryHandler.flush()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.MemoryHandler.close"><code class="docutils literal notranslate"><span class="pre">MemoryHandler.close()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.MemoryHandler.emit"><code class="docutils literal notranslate"><span class="pre">MemoryHandler.emit()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#socket-handler">Socket Handler</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler"><code class="docutils literal notranslate"><span class="pre">SocketHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.makeSocket"><code class="docutils literal notranslate"><span class="pre">SocketHandler.makeSocket()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.createSocket"><code class="docutils literal notranslate"><span class="pre">SocketHandler.createSocket()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.send"><code class="docutils literal notranslate"><span class="pre">SocketHandler.send()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.makePickle"><code class="docutils literal notranslate"><span class="pre">SocketHandler.makePickle()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.handleError"><code class="docutils literal notranslate"><span class="pre">SocketHandler.handleError()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.emit"><code class="docutils literal notranslate"><span class="pre">SocketHandler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.handlers.SocketHandler.close"><code class="docutils literal notranslate"><span class="pre">SocketHandler.close()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │  </ul>
│ │ │ │  </li>
│ │ │ │  </ul>
│ │ │ │  
│ │ │ │            </div>
│ │ │ │          </div>
│ │ │ │        </div>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -15,19 +15,163 @@
│ │ │ │ │      * _L_i_m_i_t_a_t_i_o_n_s
│ │ │ │ │  _B_a_c_k_ _t_o_ _t_o_p
│ │ │ │ │  _V_i_e_w_ _t_h_i_s_ _p_a_g_e
│ │ │ │ │  Toggle Light / Dark / Auto color theme
│ │ │ │ │  Toggle table of contents sidebar
│ │ │ │ │  ************ HHaannddlleerrss_?¶ ************
│ │ │ │ │  ********** BBaassee HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.Handler_¶
│ │ │ │ │ +      Handler interface.
│ │ │ │ │ +        acquire()_¶
│ │ │ │ │ +            Acquire the lock.
│ │ │ │ │ +        close()_¶
│ │ │ │ │ +            Tidy up any resources used by the handler.
│ │ │ │ │ +        createLock()_¶
│ │ │ │ │ +            Create a new lock instance.
│ │ │ │ │ +        emit(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +        flush()_¶
│ │ │ │ │ +            Ensure all logging output has been flushed.
│ │ │ │ │ +        format(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format a record.
│ │ │ │ │ +        formatter_¶
│ │ │ │ │ +            Handler formatter
│ │ │ │ │ +        get_name()_¶
│ │ │ │ │ +            Get the name of the handler.
│ │ │ │ │ +        handle(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Handle a record.
│ │ │ │ │ +        handleError(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Handle an error during an emit().
│ │ │ │ │ +        level_¶
│ │ │ │ │ +            Handler level
│ │ │ │ │ +        name_¶
│ │ │ │ │ +            Handler name
│ │ │ │ │ +        release()_¶
│ │ │ │ │ +            Release the lock.
│ │ │ │ │ +        setFormatter(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the formatter of the handler.
│ │ │ │ │ +        setLevel(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the level of the handler.
│ │ │ │ │ +        set_name(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the name of the handler.
│ │ │ │ │  ********** WWaattcchheedd FFiillee HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.WatchedFileHandler(ffiilleennaammee, mmooddee==''aa'',
│ │ │ │ │ +  eennccooddiinngg==NNoonnee, ddeellaayy==FFaallssee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      A handler for logging to a file, which watches the file to see if it has
│ │ │ │ │ +      changed while in use. This can happen because of usage of programs such
│ │ │ │ │ +      as newsyslog and logrotate which perform log file rotation. This handler,
│ │ │ │ │ +      intended for use under Unix, watches the file to see if it has changed
│ │ │ │ │ +      since the last emit. (A file has changed if its device or inode have
│ │ │ │ │ +      changed.) If it has changed, the old file stream is closed, and the file
│ │ │ │ │ +      opened to get a new stream.
│ │ │ │ │ +      This handler is not appropriate for use under Windows, because under
│ │ │ │ │ +      Windows open files cannot be moved or renamed - logging opens the files
│ │ │ │ │ +      with exclusive locks - and so there is no need for such a handler.
│ │ │ │ │ +      Furthermore, ST_INO is not supported under Windows; stat always returns
│ │ │ │ │ +      zero for this value.
│ │ │ │ │ +        reopenIfNeeded()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Reopen log file if needed.
│ │ │ │ │ +            Checks if the underlying file has changed, and if it has, close the
│ │ │ │ │ +            old stream and reopen the file to get the current stream.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +            If underlying file has changed, reopen the file before emitting the
│ │ │ │ │ +            record to it.
│ │ │ │ │  ********** BBaassee RRoottaattiinngg HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.BaseRotatingHandler(ffiilleennaammee, mmooddee, eennccooddiinngg==NNoonnee,
│ │ │ │ │ +  ddeellaayy==FFaallssee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Base class for handlers that rotate log files at a certain point. Not
│ │ │ │ │ +      meant to be instantiated directly. Instead, use RotatingFileHandler or
│ │ │ │ │ +      TimedRotatingFileHandler.
│ │ │ │ │ +        shouldRollover(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Determine if rollover should occur. Should be implemented in
│ │ │ │ │ +            inherited classes.
│ │ │ │ │ +        doRollover(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Do a rollover. Should be implemented in inherited classes.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record. Output the record to the file, catering for rollover
│ │ │ │ │ +            as described in doRollover().
│ │ │ │ │ +        rotation_filename(ddeeffaauulltt__nnaammee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Modify the filename of a log file when rotating. This is provided
│ │ │ │ │ +            so that a custom filename can be provided. The default
│ │ │ │ │ +            implementation calls the ‘namer’ attribute of the handler, if it’s
│ │ │ │ │ +            callable, passing the default name to it. If the attribute isn’t
│ │ │ │ │ +            callable (the default is None), the name is returned unchanged. :
│ │ │ │ │ +            param default_name: The default name for the log file.
│ │ │ │ │ +        rotate(ssoouurrccee, ddeesstt)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            When rotating, rotate the current log. The default implementation
│ │ │ │ │ +            calls the ‘rotator’ attribute of the handler, if it’s callable,
│ │ │ │ │ +            passing the source and dest arguments to it. If the attribute isn’t
│ │ │ │ │ +            callable (the default is None), the source is simply renamed to the
│ │ │ │ │ +            destination.
│ │ │ │ │ +              Parameters:
│ │ │ │ │ +                      * ssoouurrccee – The source filename. This is normally the base
│ │ │ │ │ +                        filename, e.g. ‘test.log’
│ │ │ │ │ +                      * ddeesstt – The destination filename. This is normally what
│ │ │ │ │ +                        the source is rotated to, e.g. ‘test.log.1’.
│ │ │ │ │  ********** RRoottaattiinngg FFiillee HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.RotatingFileHandler(ffiilleennaammee, mmooddee==''aa'',
│ │ │ │ │ +  mmaaxxBByytteess==00, bbaacckkuuppCCoouunntt==00, eennccooddiinngg==NNoonnee, ddeellaayy==FFaallssee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Handler for logging to a set of files, which switches from one file to
│ │ │ │ │ +      the next when the current file reaches a certain size.
│ │ │ │ │ +        doRollover()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Do a rollover, as described in __init__().
│ │ │ │ │ +        shouldRollover(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Determine if rollover should occur. Basically, see if the supplied
│ │ │ │ │ +            record would cause the file to exceed the size limit we have.
│ │ │ │ │  ********** TTiimmeedd RRoottaattiinngg FFiillee HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.TimedRotatingFileHandler(ffiilleennaammee, wwhheenn==''hh'',
│ │ │ │ │ +  iinntteerrvvaall==11, bbaacckkuuppCCoouunntt==00, eennccooddiinngg==NNoonnee, ddeellaayy==FFaallssee, uuttcc==FFaallssee,
│ │ │ │ │ +  aattTTiimmee==NNoonnee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Handler for logging to a file, rotating the log file at certain timed
│ │ │ │ │ +      intervals. If backupCount is > 0, when rollover is done, no more than
│ │ │ │ │ +      backupCount files are kept - the oldest ones are deleted.
│ │ │ │ │ +        computeRollover(ccuurrrreenntt__ttiimmee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Work out the rollover time based on the specified time.
│ │ │ │ │ +        shouldRollover(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Determine if rollover should occur. record is not used, as we are
│ │ │ │ │ +            just comparing times, but it is needed so the method signatures are
│ │ │ │ │ +            the same
│ │ │ │ │ +        getFilesToDelete()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Determine the files to delete when rolling over. More specific than
│ │ │ │ │ +            the earlier method, which just used glob.glob().
│ │ │ │ │ +        doRollover()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            do a rollover; in this case, a date/time stamp is appended to the
│ │ │ │ │ +            filename when the rollover happens. However, you want the file to
│ │ │ │ │ +            be named for the start of the interval, not the current time. If
│ │ │ │ │ +            there is a backup count, then we have to get a list of matching
│ │ │ │ │ +            filenames, sort them and remove the one with the oldest suffix.
│ │ │ │ │  ********** QQuueeuuee HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.QueueHandler(qquueeuuee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      This handler sends events to a queue. Typically, it would be used
│ │ │ │ │ +      together with a multiprocessing Queue to centralise logging to file in
│ │ │ │ │ +      one process (in a multi-process application), so as to avoid file write
│ │ │ │ │ +      contention between processes.
│ │ │ │ │ +      This code is new in Python 3.2, but this class can be copy pasted into
│ │ │ │ │ +      user code for use with earlier Python versions.
│ │ │ │ │ +        enqueue(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Enqueue a record.
│ │ │ │ │ +            The base implementation uses put_nowait. You may want to override
│ │ │ │ │ +            this method if you want to use blocking, timeouts or custom queue
│ │ │ │ │ +            implementations.
│ │ │ │ │ +        prepare(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Prepare a record for queuing. The object returned by this method is
│ │ │ │ │ +            enqueued.
│ │ │ │ │ +            The base implementation formats the record to merge the message and
│ │ │ │ │ +            arguments, and removes unpickleable items from the record in-place.
│ │ │ │ │ +            Specifically, it overwrites the record’smsgandmessageattributes
│ │ │ │ │ +            with the merged message (obtained by calling the
│ │ │ │ │ +            handler’sformatmethod), and sets
│ │ │ │ │ +            theargs,exc_infoandexc_textattributes to None.
│ │ │ │ │ +            You might want to override this method if you want to convert the
│ │ │ │ │ +            record to a dict or JSON string, or send a modified copy of the
│ │ │ │ │ +            record while leaving the original intact.
│ │ │ │ │ +        emit(rreeccoorrdd:: _LL_oo_gg_RR_ee_cc_oo_rr_dd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +            Writes the LogRecord to the queue, copying it first.
│ │ │ │ │  ********** QQuueeuuee LLiisstteenneerr_?¶ **********
│ │ │ │ │  The queue listener and queue handler can be combined for non-blocking logging,
│ │ │ │ │  for example:
│ │ │ │ │  logger = picologging.Logger("test", picologging.DEBUG)
│ │ │ │ │  stream = io.StringIO()
│ │ │ │ │  stream_handler = picologging.StreamHandler(stream)
│ │ │ │ │  q = queue.Queue()
│ │ │ │ │ @@ -35,28 +179,187 @@
│ │ │ │ │  listener.start()
│ │ │ │ │  handler = QueueHandler(q)
│ │ │ │ │  logger.addHandler(handler)
│ │ │ │ │  logger.debug("test")
│ │ │ │ │  
│ │ │ │ │  listener.stop()
│ │ │ │ │  assert stream.getvalue() == "test\n"
│ │ │ │ │ +  ccllaassss picologging.handlers.QueueListener(qquueeuuee, **hhaannddlleerrss,
│ │ │ │ │ +  rreessppeecctt__hhaannddlleerr__lleevveell==FFaallssee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      This class implements an internal threaded listener which watches for
│ │ │ │ │ +      LogRecords being added to a queue, removes them and passes them to a list
│ │ │ │ │ +      of handlers for processing.
│ │ │ │ │ +        dequeue(bblloocckk)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Dequeue a record and return it, optionally blocking.
│ │ │ │ │ +            The base implementation uses get. You may want to override this
│ │ │ │ │ +            method if you want to use timeouts or work with custom queue
│ │ │ │ │ +            implementations.
│ │ │ │ │ +        start()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Start the listener.
│ │ │ │ │ +            This starts up a background thread to monitor the queue for
│ │ │ │ │ +            LogRecords to process.
│ │ │ │ │ +        prepare(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Prepare a record for handling.
│ │ │ │ │ +            This method just returns the passed-in record. You may want to
│ │ │ │ │ +            override this method if you need to do any custom marshalling or
│ │ │ │ │ +            manipulation of the record before passing it to the handlers.
│ │ │ │ │ +        handle(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Handle a record.
│ │ │ │ │ +            This just loops through the handlers offering them the record to
│ │ │ │ │ +            handle.
│ │ │ │ │ +        enqueue_sentinel()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            This is used to enqueue the sentinel record.
│ │ │ │ │ +            The base implementation uses put_nowait. You may want to override
│ │ │ │ │ +            this method if you want to use timeouts or work with custom queue
│ │ │ │ │ +            implementations.
│ │ │ │ │ +        stop()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Stop the listener.
│ │ │ │ │ +            This asks the thread to terminate, and then waits for it to do so.
│ │ │ │ │ +            Note that if you don’t call this before your application exits,
│ │ │ │ │ +            there may be some records still left on the queue, which won’t be
│ │ │ │ │ +            processed.
│ │ │ │ │  ********** BBuuffffeerriinngg HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.BufferingHandler(ccaappaacciittyy)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      A handler class which buffers logging records in memory. Whenever each
│ │ │ │ │ +      record is added to the buffer, a check is made to see if the buffer
│ │ │ │ │ +      should be flushed. If it should, then flush() is expected to do what’s
│ │ │ │ │ +      needed.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record. Append the record and call flush() if criteria is
│ │ │ │ │ +            met.
│ │ │ │ │ +        flush()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Override to implement custom flushing behaviour. This version just
│ │ │ │ │ +            zaps the buffer to empty.
│ │ │ │ │ +        close()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Close the handler. This version just flushes and chains to the
│ │ │ │ │ +            parent class’ close().
│ │ │ │ │  ********** MMeemmoorryy HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.MemoryHandler(ccaappaacciittyy, fflluusshhLLeevveell==4400,
│ │ │ │ │ +  ttaarrggeett==NNoonnee, fflluusshhOOnnCClloossee==TTrruuee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      A handler class which buffers logging records in memory, periodically
│ │ │ │ │ +      flushing them to a target handler. Flushing occurs whenever the buffer is
│ │ │ │ │ +      full, or when an event of a certain severity or greater is seen.
│ │ │ │ │ +        setTarget(ttaarrggeett)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Set the target handler for this handler.
│ │ │ │ │ +        flush()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            For a MemoryHandler, flushing means just sending the buffered
│ │ │ │ │ +            records to the target, if there is one. Override if you want
│ │ │ │ │ +            different behaviour. The record buffer is also cleared by this
│ │ │ │ │ +            operation.
│ │ │ │ │ +        close()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Flush, if appropriately configured, set the target to None and lose
│ │ │ │ │ +            the buffer.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record. Append the record and call flush() if criteria is
│ │ │ │ │ +            met.
│ │ │ │ │  ********** SSoocckkeett HHaannddlleerr_?¶ **********
│ │ │ │ │ +  ccllaassss picologging.handlers.SocketHandler(hhoosstt, ppoorrtt)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      A handler class which writes logging records, in pickle format, to a
│ │ │ │ │ +      streaming socket. The socket is kept open across logging calls. If the
│ │ │ │ │ +      peer resets it, an attempt is made to reconnect on the next call. The
│ │ │ │ │ +      pickle which is sent is that of the LogRecord’s attribute dictionary
│ │ │ │ │ +      (__dict__), so that the receiver does not need to have the logging module
│ │ │ │ │ +      installed in order to process the logging event. To unpickle the record
│ │ │ │ │ +      at the receiving end into a LogRecord, use the makeLogRecord function.
│ │ │ │ │ +        makeSocket(ttiimmeeoouutt==11)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            A factory method which allows subclasses to define the precise type
│ │ │ │ │ +            of socket they want.
│ │ │ │ │ +        createSocket()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Try to create a socket, using an exponential backoff with a max
│ │ │ │ │ +            retry time.
│ │ │ │ │ +        send(ss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Send a pickled string to the socket. This function allows for
│ │ │ │ │ +            partial sends which can happen when the network is busy.
│ │ │ │ │ +        makePickle(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Pickles the record in binary format with a length prefix, and
│ │ │ │ │ +            returns it ready for transmission across the socket.
│ │ │ │ │ +        handleError(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Handle an error during logging. An error has occurred during
│ │ │ │ │ +            logging. Most likely cause - connection lost. Close the socket so
│ │ │ │ │ +            that we can retry on the next event.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record. Pickles the record and writes it to the socket in
│ │ │ │ │ +            binary format. If there is an error with the socket, silently drop
│ │ │ │ │ +            the packet. If there was a problem with the socket, re-establishes
│ │ │ │ │ +            the socket.
│ │ │ │ │ +        close()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Closes the socket.
│ │ │ │ │  _N_e_x_t
│ │ │ │ │  _E_x_a_m_p_l_e_s
│ │ │ │ │  _P_r_e_v_i_o_u_s
│ │ │ │ │  _P_i_c_o_l_o_g_g_i_n_g_ _A_P_I
│ │ │ │ │  Copyright © 2022, Microsoft
│ │ │ │ │  Made with _S_p_h_i_n_x and _@_p_r_a_d_y_u_n_s_g's _F_u_r_o
│ │ │ │ │  On this page
│ │ │ │ │      * _H_a_n_d_l_e_r_s
│ │ │ │ │            o _B_a_s_e_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _H_a_n_d_l_e_r
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._a_c_q_u_i_r_e_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._c_r_e_a_t_e_L_o_c_k_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._f_l_u_s_h_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._f_o_r_m_a_t_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._f_o_r_m_a_t_t_e_r
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._g_e_t___n_a_m_e_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._h_a_n_d_l_e_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._h_a_n_d_l_e_E_r_r_o_r_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._l_e_v_e_l
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._n_a_m_e
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._r_e_l_e_a_s_e_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._s_e_t_F_o_r_m_a_t_t_e_r_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._s_e_t_L_e_v_e_l_(_)
│ │ │ │ │ +                      # _H_a_n_d_l_e_r_._s_e_t___n_a_m_e_(_)
│ │ │ │ │            o _W_a_t_c_h_e_d_ _F_i_l_e_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r_._r_e_o_p_e_n_I_f_N_e_e_d_e_d_(_)
│ │ │ │ │ +                      # _W_a_t_c_h_e_d_F_i_l_e_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │            o _B_a_s_e_ _R_o_t_a_t_i_n_g_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_._s_h_o_u_l_d_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │ +                      # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_._d_o_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │ +                      # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                      # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_._r_o_t_a_t_i_o_n___f_i_l_e_n_a_m_e_(_)
│ │ │ │ │ +                      # _B_a_s_e_R_o_t_a_t_i_n_g_H_a_n_d_l_e_r_._r_o_t_a_t_e_(_)
│ │ │ │ │            o _R_o_t_a_t_i_n_g_ _F_i_l_e_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._d_o_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │ +                      # _R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._s_h_o_u_l_d_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │            o _T_i_m_e_d_ _R_o_t_a_t_i_n_g_ _F_i_l_e_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._c_o_m_p_u_t_e_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │ +                      # _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._s_h_o_u_l_d_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │ +                      # _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._g_e_t_F_i_l_e_s_T_o_D_e_l_e_t_e_(_)
│ │ │ │ │ +                      # _T_i_m_e_d_R_o_t_a_t_i_n_g_F_i_l_e_H_a_n_d_l_e_r_._d_o_R_o_l_l_o_v_e_r_(_)
│ │ │ │ │            o _Q_u_e_u_e_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _Q_u_e_u_e_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _Q_u_e_u_e_H_a_n_d_l_e_r_._e_n_q_u_e_u_e_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_H_a_n_d_l_e_r_._p_r_e_p_a_r_e_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │            o _Q_u_e_u_e_ _L_i_s_t_e_n_e_r
│ │ │ │ │ +                # _Q_u_e_u_e_L_i_s_t_e_n_e_r
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._d_e_q_u_e_u_e_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._s_t_a_r_t_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._p_r_e_p_a_r_e_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._h_a_n_d_l_e_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._e_n_q_u_e_u_e___s_e_n_t_i_n_e_l_(_)
│ │ │ │ │ +                      # _Q_u_e_u_e_L_i_s_t_e_n_e_r_._s_t_o_p_(_)
│ │ │ │ │            o _B_u_f_f_e_r_i_n_g_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                      # _B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r_._f_l_u_s_h_(_)
│ │ │ │ │ +                      # _B_u_f_f_e_r_i_n_g_H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ │ │            o _M_e_m_o_r_y_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _M_e_m_o_r_y_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _M_e_m_o_r_y_H_a_n_d_l_e_r_._s_e_t_T_a_r_g_e_t_(_)
│ │ │ │ │ +                      # _M_e_m_o_r_y_H_a_n_d_l_e_r_._f_l_u_s_h_(_)
│ │ │ │ │ +                      # _M_e_m_o_r_y_H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ │ │ +                      # _M_e_m_o_r_y_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │            o _S_o_c_k_e_t_ _H_a_n_d_l_e_r
│ │ │ │ │ +                # _S_o_c_k_e_t_H_a_n_d_l_e_r
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._m_a_k_e_S_o_c_k_e_t_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._c_r_e_a_t_e_S_o_c_k_e_t_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._s_e_n_d_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._m_a_k_e_P_i_c_k_l_e_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._h_a_n_d_l_e_E_r_r_o_r_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                      # _S_o_c_k_e_t_H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ ├── ./usr/share/doc/python-picologging-doc/html/logging.html
│ │ │ │ @@ -174,15 +174,15 @@
│ │ │ │            <div class="visually-hidden">Toggle Light / Dark / Auto color theme</div>
│ │ │ │            <svg class="theme-icon-when-auto-light"><use href="#svg-sun-with-moon"></use></svg>
│ │ │ │            <svg class="theme-icon-when-auto-dark"><use href="#svg-moon-with-sun"></use></svg>
│ │ │ │            <svg class="theme-icon-when-dark"><use href="#svg-moon"></use></svg>
│ │ │ │            <svg class="theme-icon-when-light"><use href="#svg-sun"></use></svg>
│ │ │ │          </button>
│ │ │ │        </div>
│ │ │ │ -      <label class="toc-overlay-icon toc-header-icon no-toc" for="__toc">
│ │ │ │ +      <label class="toc-overlay-icon toc-header-icon" for="__toc">
│ │ │ │          <div class="visually-hidden">Toggle table of contents sidebar</div>
│ │ │ │          <i class="icon"><svg><use href="#svg-toc"></use></svg></i>
│ │ │ │        </label>
│ │ │ │      </div>
│ │ │ │    </header>
│ │ │ │    <aside class="sidebar-drawer">
│ │ │ │      <div class="sidebar-container">
│ │ │ │ @@ -234,22 +234,766 @@
│ │ │ │                <div class="visually-hidden">Toggle Light / Dark / Auto color theme</div>
│ │ │ │                <svg class="theme-icon-when-auto-light"><use href="#svg-sun-with-moon"></use></svg>
│ │ │ │                <svg class="theme-icon-when-auto-dark"><use href="#svg-moon-with-sun"></use></svg>
│ │ │ │                <svg class="theme-icon-when-dark"><use href="#svg-moon"></use></svg>
│ │ │ │                <svg class="theme-icon-when-light"><use href="#svg-sun"></use></svg>
│ │ │ │              </button>
│ │ │ │            </div>
│ │ │ │ -          <label class="toc-overlay-icon toc-content-icon no-toc" for="__toc">
│ │ │ │ +          <label class="toc-overlay-icon toc-content-icon" for="__toc">
│ │ │ │              <div class="visually-hidden">Toggle table of contents sidebar</div>
│ │ │ │              <i class="icon"><svg><use href="#svg-toc"></use></svg></i>
│ │ │ │            </label>
│ │ │ │          </div>
│ │ │ │          <article role="main" id="furo-main-content">
│ │ │ │ -          <section id="picologging-api">
│ │ │ │ -<span id="logging"></span><h1>Picologging API<a class="headerlink" href="#picologging-api" title="Link to this heading">¶</a></h1>
│ │ │ │ +          <section id="module-picologging">
│ │ │ │ +<span id="picologging-api"></span><span id="logging"></span><h1>Picologging API<a class="headerlink" href="#module-picologging" title="Link to this heading">¶</a></h1>
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FileHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">FileHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'a'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">errors</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#FileHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.FileHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>A handler class which writes formatted logging records to disk files.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FileHandler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#FileHandler.close"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.FileHandler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Closes the stream.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FileHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#FileHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.FileHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +<p>If the stream was not opened because ‘delay’ was specified in the
│ │ │ │ +constructor, open it before calling the superclass’s emit.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Filterer">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Filterer</span></span><a class="headerlink" href="#picologging.Filterer" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Filterer interface.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Filterer.addFilter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">addFilter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Filterer.addFilter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Add a filter to the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Filterer.filter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">filter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Filterer.filter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Filter a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Filterer.filters">
│ │ │ │ +<span class="sig-name descname"><span class="pre">filters</span></span><a class="headerlink" href="#picologging.Filterer.filters" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Filters</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Filterer.removeFilter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">removeFilter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Filterer.removeFilter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Remove a filter from the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FormatStyle">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">FormatStyle</span></span><a class="headerlink" href="#picologging.FormatStyle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Formatter for log records.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FormatStyle.format">
│ │ │ │ +<span class="sig-name descname"><span class="pre">format</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.FormatStyle.format" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get message</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FormatStyle.usesTime">
│ │ │ │ +<span class="sig-name descname"><span class="pre">usesTime</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.FormatStyle.usesTime" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get message</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.FormatStyle.validate">
│ │ │ │ +<span class="sig-name descname"><span class="pre">validate</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.FormatStyle.validate" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get message</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Formatter</span></span><a class="headerlink" href="#picologging.Formatter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Formatter for log records.</p>
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.datefmt">
│ │ │ │ +<span class="sig-name descname"><span class="pre">datefmt</span></span><a class="headerlink" href="#picologging.Formatter.datefmt" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Date format string</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.format">
│ │ │ │ +<span class="sig-name descname"><span class="pre">format</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Formatter.format" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format record into log event string</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.formatException">
│ │ │ │ +<span class="sig-name descname"><span class="pre">formatException</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Formatter.formatException" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format and return the specified exception information as a string.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.formatMessage">
│ │ │ │ +<span class="sig-name descname"><span class="pre">formatMessage</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Formatter.formatMessage" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format the message for a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.formatStack">
│ │ │ │ +<span class="sig-name descname"><span class="pre">formatStack</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Formatter.formatStack" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format the stack for a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Formatter.usesTime">
│ │ │ │ +<span class="sig-name descname"><span class="pre">usesTime</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Formatter.usesTime" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Return True if the format uses the creation time of the record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Handler</span></span><a class="headerlink" href="#picologging.Handler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler interface.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.acquire">
│ │ │ │ +<span class="sig-name descname"><span class="pre">acquire</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.acquire" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Acquire the lock.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.close">
│ │ │ │ +<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.close" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Tidy up any resources used by the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.createLock">
│ │ │ │ +<span class="sig-name descname"><span class="pre">createLock</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.createLock" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Create a new lock instance.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.flush">
│ │ │ │ +<span class="sig-name descname"><span class="pre">flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.flush" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Ensure all logging output has been flushed.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.format">
│ │ │ │ +<span class="sig-name descname"><span class="pre">format</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.format" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Format a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.formatter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">formatter</span></span><a class="headerlink" href="#picologging.Handler.formatter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler formatter</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.get_name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">get_name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.get_name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get the name of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.handle">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.handle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.handleError">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handleError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.handleError" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handle an error during an emit().</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.level">
│ │ │ │ +<span class="sig-name descname"><span class="pre">level</span></span><a class="headerlink" href="#picologging.Handler.level" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler level</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">name</span></span><a class="headerlink" href="#picologging.Handler.name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Handler name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.release">
│ │ │ │ +<span class="sig-name descname"><span class="pre">release</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.release" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Release the lock.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.setFormatter">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setFormatter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.setFormatter" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the formatter of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.setLevel">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setLevel</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.setLevel" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the level of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Handler.set_name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">set_name</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Handler.set_name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the name of the handler.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">LogRecord</span></span><a class="headerlink" href="#picologging.LogRecord" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>LogRecord objects are used to hold information about log events.</p>
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.args">
│ │ │ │ +<span class="sig-name descname"><span class="pre">args</span></span><a class="headerlink" href="#picologging.LogRecord.args" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Arguments (tuple)</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.asctime">
│ │ │ │ +<span class="sig-name descname"><span class="pre">asctime</span></span><a class="headerlink" href="#picologging.LogRecord.asctime" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Asctime</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.created">
│ │ │ │ +<span class="sig-name descname"><span class="pre">created</span></span><a class="headerlink" href="#picologging.LogRecord.created" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Created</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.exc_info">
│ │ │ │ +<span class="sig-name descname"><span class="pre">exc_info</span></span><a class="headerlink" href="#picologging.LogRecord.exc_info" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Exception info</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.exc_text">
│ │ │ │ +<span class="sig-name descname"><span class="pre">exc_text</span></span><a class="headerlink" href="#picologging.LogRecord.exc_text" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Exception text</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.filename">
│ │ │ │ +<span class="sig-name descname"><span class="pre">filename</span></span><a class="headerlink" href="#picologging.LogRecord.filename" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>File name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.funcName">
│ │ │ │ +<span class="sig-name descname"><span class="pre">funcName</span></span><a class="headerlink" href="#picologging.LogRecord.funcName" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Function name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.getMessage">
│ │ │ │ +<span class="sig-name descname"><span class="pre">getMessage</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.LogRecord.getMessage" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get message</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.levelname">
│ │ │ │ +<span class="sig-name descname"><span class="pre">levelname</span></span><a class="headerlink" href="#picologging.LogRecord.levelname" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Level name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.levelno">
│ │ │ │ +<span class="sig-name descname"><span class="pre">levelno</span></span><a class="headerlink" href="#picologging.LogRecord.levelno" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Level number</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.lineno">
│ │ │ │ +<span class="sig-name descname"><span class="pre">lineno</span></span><a class="headerlink" href="#picologging.LogRecord.lineno" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Line number</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.message">
│ │ │ │ +<span class="sig-name descname"><span class="pre">message</span></span><a class="headerlink" href="#picologging.LogRecord.message" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Message</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.module">
│ │ │ │ +<span class="sig-name descname"><span class="pre">module</span></span><a class="headerlink" href="#picologging.LogRecord.module" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Module name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.msecs">
│ │ │ │ +<span class="sig-name descname"><span class="pre">msecs</span></span><a class="headerlink" href="#picologging.LogRecord.msecs" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Milliseconds</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.msg">
│ │ │ │ +<span class="sig-name descname"><span class="pre">msg</span></span><a class="headerlink" href="#picologging.LogRecord.msg" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Message (string)</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">name</span></span><a class="headerlink" href="#picologging.LogRecord.name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.pathname">
│ │ │ │ +<span class="sig-name descname"><span class="pre">pathname</span></span><a class="headerlink" href="#picologging.LogRecord.pathname" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>File pathname</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.process">
│ │ │ │ +<span class="sig-name descname"><span class="pre">process</span></span><a class="headerlink" href="#picologging.LogRecord.process" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Process</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.processName">
│ │ │ │ +<span class="sig-name descname"><span class="pre">processName</span></span><a class="headerlink" href="#picologging.LogRecord.processName" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Process name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.relativeCreated">
│ │ │ │ +<span class="sig-name descname"><span class="pre">relativeCreated</span></span><a class="headerlink" href="#picologging.LogRecord.relativeCreated" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Relative created</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.stack_info">
│ │ │ │ +<span class="sig-name descname"><span class="pre">stack_info</span></span><a class="headerlink" href="#picologging.LogRecord.stack_info" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Stack info</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.thread">
│ │ │ │ +<span class="sig-name descname"><span class="pre">thread</span></span><a class="headerlink" href="#picologging.LogRecord.thread" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Thread</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.LogRecord.threadName">
│ │ │ │ +<span class="sig-name descname"><span class="pre">threadName</span></span><a class="headerlink" href="#picologging.LogRecord.threadName" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Thread name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Logger</span></span><a class="headerlink" href="#picologging.Logger" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logging interface.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.addHandler">
│ │ │ │ +<span class="sig-name descname"><span class="pre">addHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.addHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Add a handler to the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.critical">
│ │ │ │ +<span class="sig-name descname"><span class="pre">critical</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.critical" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level CRITICAL.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.debug">
│ │ │ │ +<span class="sig-name descname"><span class="pre">debug</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.debug" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level DEBUG.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.disabled">
│ │ │ │ +<span class="sig-name descname"><span class="pre">disabled</span></span><a class="headerlink" href="#picologging.Logger.disabled" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger disabled</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.error">
│ │ │ │ +<span class="sig-name descname"><span class="pre">error</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.error" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level ERROR.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.exception">
│ │ │ │ +<span class="sig-name descname"><span class="pre">exception</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.exception" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level ERROR.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.fatal">
│ │ │ │ +<span class="sig-name descname"><span class="pre">fatal</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.fatal" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level FATAL.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.getEffectiveLevel">
│ │ │ │ +<span class="sig-name descname"><span class="pre">getEffectiveLevel</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.getEffectiveLevel" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get the effective level of the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.handlers">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handlers</span></span><a class="headerlink" href="#picologging.Logger.handlers" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger handlers</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.info">
│ │ │ │ +<span class="sig-name descname"><span class="pre">info</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.info" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level INFO.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.isEnabledFor">
│ │ │ │ +<span class="sig-name descname"><span class="pre">isEnabledFor</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.isEnabledFor" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Check if logger enabled for this level.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.level">
│ │ │ │ +<span class="sig-name descname"><span class="pre">level</span></span><a class="headerlink" href="#picologging.Logger.level" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger level</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.log">
│ │ │ │ +<span class="sig-name descname"><span class="pre">log</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.log" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at the specified level.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.manager">
│ │ │ │ +<span class="sig-name descname"><span class="pre">manager</span></span><a class="headerlink" href="#picologging.Logger.manager" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger manager</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.name">
│ │ │ │ +<span class="sig-name descname"><span class="pre">name</span></span><a class="headerlink" href="#picologging.Logger.name" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger name</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.parent">
│ │ │ │ +<span class="sig-name descname"><span class="pre">parent</span></span><a class="headerlink" href="#picologging.Logger.parent" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger parent</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.propagate">
│ │ │ │ +<span class="sig-name descname"><span class="pre">propagate</span></span><a class="headerlink" href="#picologging.Logger.propagate" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Logger propagate</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.removeHandler">
│ │ │ │ +<span class="sig-name descname"><span class="pre">removeHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.removeHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Remove a handler from the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.setLevel">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setLevel</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.setLevel" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the level of the logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Logger.warning">
│ │ │ │ +<span class="sig-name descname"><span class="pre">warning</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.Logger.warning" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message at level WARNING.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Manager">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">Manager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">rootnode</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cls</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#Manager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.Manager" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>There is [under normal circumstances] just one Manager instance, which
│ │ │ │ +holds the hierarchy of loggers.</p>
│ │ │ │ +<dl class="py property">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Manager.disable">
│ │ │ │ +<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">disable</span></span><a class="headerlink" href="#picologging.Manager.disable" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Manager.getLogger">
│ │ │ │ +<span class="sig-name descname"><span class="pre">getLogger</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#Manager.getLogger"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.Manager.getLogger" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Get a logger with the specified name (channel name), creating it
│ │ │ │ +if it doesn’t yet exist. This name is a dot-separated hierarchical
│ │ │ │ +name, such as “a”, “a.b”, “a.b.c” or similar.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Manager.setLogRecordFactory">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setLogRecordFactory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">factory</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#Manager.setLogRecordFactory"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.Manager.setLogRecordFactory" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.Manager.setLoggerClass">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setLoggerClass</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">klass</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#Manager.setLoggerClass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.Manager.setLoggerClass" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.NullHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">NullHandler</span></span><a class="reference internal" href="_modules/picologging.html#NullHandler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.NullHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>This handler does nothing. It’s intended to be used to avoid the
│ │ │ │ +“No handlers could be found for logger XXX” one-off warning. This is
│ │ │ │ +important for library code, which may contain code to log events. If a user
│ │ │ │ +of the library does not configure logging, the one-off warning might be
│ │ │ │ +produced; to avoid this, the library developer simply needs to instantiate
│ │ │ │ +a NullHandler and add it to the top-level logger of the library module or
│ │ │ │ +package.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.NullHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#NullHandler.emit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.NullHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Stub.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.NullHandler.handle">
│ │ │ │ +<span class="sig-name descname"><span class="pre">handle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">record</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#NullHandler.handle"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.NullHandler.handle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Stub.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.PercentStyle">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">PercentStyle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#PercentStyle"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.PercentStyle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StrFormatStyle">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">StrFormatStyle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#StrFormatStyle"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.StrFormatStyle" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py class">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StreamHandler">
│ │ │ │ +<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">StreamHandler</span></span><a class="headerlink" href="#picologging.StreamHandler" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>StreamHandler interface.</p>
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StreamHandler.emit">
│ │ │ │ +<span class="sig-name descname"><span class="pre">emit</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.StreamHandler.emit" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Emit a record.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StreamHandler.flush">
│ │ │ │ +<span class="sig-name descname"><span class="pre">flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#picologging.StreamHandler.flush" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Flush the stream.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py method">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StreamHandler.setStream">
│ │ │ │ +<span class="sig-name descname"><span class="pre">setStream</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#picologging.StreamHandler.setStream" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Set the stream to write to.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py attribute">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.StreamHandler.stream">
│ │ │ │ +<span class="sig-name descname"><span class="pre">stream</span></span><a class="headerlink" href="#picologging.StreamHandler.stream" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Stream</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.basicConfig">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">basicConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#basicConfig"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.basicConfig" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Do basic configuration for the logging system.</p>
│ │ │ │ +<p>This function does nothing if the root logger already has handlers
│ │ │ │ +configured, unless the keyword argument <em>force</em> is set to <code class="docutils literal notranslate"><span class="pre">True</span></code>.
│ │ │ │ +It is a convenience method intended for use by simple scripts
│ │ │ │ +to do one-shot configuration of the logging package.</p>
│ │ │ │ +<p>The default behaviour is to create a StreamHandler which writes to
│ │ │ │ +sys.stderr, set a formatter using the BASIC_FORMAT format string, and
│ │ │ │ +add the handler to the root logger.</p>
│ │ │ │ +<p>A number of optional keyword arguments may be specified, which can alter
│ │ │ │ +the default behaviour.</p>
│ │ │ │ +<dl class="simple">
│ │ │ │ +<dt>filename  Specifies that a FileHandler be created, using the specified</dt><dd><p>filename, rather than a StreamHandler.</p>
│ │ │ │ +</dd>
│ │ │ │ +<dt>filemode  Specifies the mode to open the file, if filename is specified</dt><dd><p>(if filemode is unspecified, it defaults to ‘a’).</p>
│ │ │ │ +</dd>
│ │ │ │ +</dl>
│ │ │ │ +<p>format    Use the specified format string for the handler.
│ │ │ │ +datefmt   Use the specified date/time format.
│ │ │ │ +style     If a format string is specified, use this to specify the</p>
│ │ │ │ +<blockquote>
│ │ │ │ +<div><p>type of format string (possible values ‘%’, ‘{’, ‘$’, for
│ │ │ │ +%-formatting, <code class="xref py py-meth docutils literal notranslate"><span class="pre">str.format()</span></code> and <code class="xref py py-class docutils literal notranslate"><span class="pre">string.Template</span></code>
│ │ │ │ +- defaults to ‘%’).</p>
│ │ │ │ +</div></blockquote>
│ │ │ │ +<p>level     Set the root logger level to the specified level.
│ │ │ │ +stream    Use the specified stream to initialize the StreamHandler. Note</p>
│ │ │ │ +<blockquote>
│ │ │ │ +<div><p>that this argument is incompatible with ‘filename’ - if both
│ │ │ │ +are present, ‘stream’ is ignored.</p>
│ │ │ │ +</div></blockquote>
│ │ │ │ +<dl class="simple">
│ │ │ │ +<dt>handlers  If specified, this should be an iterable of already created</dt><dd><p>handlers, which will be added to the root handler. Any handler
│ │ │ │ +in the list which does not have a formatter assigned will be
│ │ │ │ +assigned the formatter created in this function.</p>
│ │ │ │ +</dd>
│ │ │ │ +<dt>force     If this keyword  is specified as true, any existing handlers</dt><dd><p>attached to the root logger are removed and closed, before
│ │ │ │ +carrying out the configuration as specified by the other
│ │ │ │ +arguments.</p>
│ │ │ │ +</dd>
│ │ │ │ +<dt>encoding  If specified together with a filename, this encoding is passed to</dt><dd><p>the created FileHandler, causing it to be used when the file is
│ │ │ │ +opened.</p>
│ │ │ │ +</dd>
│ │ │ │ +<dt>errors    If specified together with a filename, this value is passed to the</dt><dd><p>created FileHandler, causing it to be used when the file is
│ │ │ │ +opened in text mode. If not specified, the default value is
│ │ │ │ +<cite>backslashreplace</cite>.</p>
│ │ │ │ +</dd>
│ │ │ │ +</dl>
│ │ │ │ +<p>Note that you could specify a stream created using open(filename, mode)
│ │ │ │ +rather than passing the filename and mode in. However, it should be
│ │ │ │ +remembered that StreamHandler does not close its stream (since it may be
│ │ │ │ +using sys.stdout or sys.stderr), whereas FileHandler closes its stream
│ │ │ │ +when the handler is closed.</p>
│ │ │ │ +<div class="versionchanged">
│ │ │ │ +<p><span class="versionmodified changed">Changed in version 3.2: </span>Added the <code class="docutils literal notranslate"><span class="pre">style</span></code> parameter.</p>
│ │ │ │ +</div>
│ │ │ │ +<div class="versionchanged">
│ │ │ │ +<p><span class="versionmodified changed">Changed in version 3.3: </span>Added the <code class="docutils literal notranslate"><span class="pre">handlers</span></code> parameter. A <code class="docutils literal notranslate"><span class="pre">ValueError</span></code> is now thrown for
│ │ │ │ +incompatible arguments (e.g. <code class="docutils literal notranslate"><span class="pre">handlers</span></code> specified together with
│ │ │ │ +<code class="docutils literal notranslate"><span class="pre">filename</span></code>/<code class="docutils literal notranslate"><span class="pre">filemode</span></code>, or <code class="docutils literal notranslate"><span class="pre">filename</span></code>/<code class="docutils literal notranslate"><span class="pre">filemode</span></code> specified
│ │ │ │ +together with <code class="docutils literal notranslate"><span class="pre">stream</span></code>, or <code class="docutils literal notranslate"><span class="pre">handlers</span></code> specified together with
│ │ │ │ +<code class="docutils literal notranslate"><span class="pre">stream</span></code>.</p>
│ │ │ │ +</div>
│ │ │ │ +<div class="versionchanged">
│ │ │ │ +<p><span class="versionmodified changed">Changed in version 3.8: </span>Added the <code class="docutils literal notranslate"><span class="pre">force</span></code> parameter.</p>
│ │ │ │ +</div>
│ │ │ │ +<div class="versionchanged">
│ │ │ │ +<p><span class="versionmodified changed">Changed in version 3.9: </span>Added the <code class="docutils literal notranslate"><span class="pre">encoding</span></code> and <code class="docutils literal notranslate"><span class="pre">errors</span></code> parameters.</p>
│ │ │ │ +</div>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.critical">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">critical</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#critical"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.critical" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘CRITICAL’ on the root logger. If the logger
│ │ │ │ +has no handlers, call basicConfig() to add a console handler with a
│ │ │ │ +pre-defined format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.debug">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">debug</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#debug"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.debug" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘DEBUG’ on the root logger. If the logger has
│ │ │ │ +no handlers, call basicConfig() to add a console handler with a pre-defined
│ │ │ │ +format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.disable">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">disable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">level</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">50</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#disable"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.disable" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Disable all logging calls of severity ‘level’ and below.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.error">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">error</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#error"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.error" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘ERROR’ on the root logger. If the logger has
│ │ │ │ +no handlers, call basicConfig() to add a console handler with a pre-defined
│ │ │ │ +format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.exception">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">exception</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exc_info</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#exception"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.exception" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘ERROR’ on the root logger, with exception
│ │ │ │ +information. If the logger has no handlers, basicConfig() is called to add
│ │ │ │ +a console handler with a pre-defined format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.fatal">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">fatal</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#fatal"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.fatal" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Don’t use this function, use critical() instead.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.getLogger">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">getLogger</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#getLogger"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.getLogger" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Return a logger with the specified name, creating it if necessary.</p>
│ │ │ │ +<p>If no name is specified, return the root logger.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.info">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">info</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#info"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.info" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘INFO’ on the root logger. If the logger has
│ │ │ │ +no handlers, call basicConfig() to add a console handler with a pre-defined
│ │ │ │ +format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.log">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">log</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">level</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#log"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.log" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log ‘msg % args’ with the integer severity ‘level’ on the root logger. If
│ │ │ │ +the logger has no handlers, call basicConfig() to add a console handler
│ │ │ │ +with a pre-defined format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.makeLogRecord">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">makeLogRecord</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dict</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#makeLogRecord"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.makeLogRecord" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Make a LogRecord whose attributes are defined by the specified dictionary,
│ │ │ │ +This function is useful for converting a logging event received over
│ │ │ │ +a socket connection (which is sent as a dictionary) into a LogRecord
│ │ │ │ +instance.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.warn">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">warn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#warn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.warn" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd></dd></dl>
│ │ │ │ +
│ │ │ │ +<dl class="py function">
│ │ │ │ +<dt class="sig sig-object py" id="picologging.warning">
│ │ │ │ +<span class="sig-prename descclassname"><span class="pre">picologging.</span></span><span class="sig-name descname"><span class="pre">warning</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">msg</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/picologging.html#warning"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#picologging.warning" title="Link to this definition">¶</a></dt>
│ │ │ │ +<dd><p>Log a message with severity ‘WARNING’ on the root logger. If the logger has
│ │ │ │ +no handlers, call basicConfig() to add a console handler with a pre-defined
│ │ │ │ +format.</p>
│ │ │ │ +</dd></dl>
│ │ │ │ +
│ │ │ │  </section>
│ │ │ │  
│ │ │ │          </article>
│ │ │ │        </div>
│ │ │ │        <footer>
│ │ │ │          
│ │ │ │          <div class="related-pages">
│ │ │ │ @@ -287,17 +1031,164 @@
│ │ │ │            <div class="right-details">
│ │ │ │              
│ │ │ │            </div>
│ │ │ │          </div>
│ │ │ │          
│ │ │ │        </footer>
│ │ │ │      </div>
│ │ │ │ -    <aside class="toc-drawer no-toc">
│ │ │ │ +    <aside class="toc-drawer">
│ │ │ │        
│ │ │ │        
│ │ │ │ +      <div class="toc-sticky toc-scroll">
│ │ │ │ +        <div class="toc-title-container">
│ │ │ │ +          <span class="toc-title">
│ │ │ │ +            On this page
│ │ │ │ +          </span>
│ │ │ │ +        </div>
│ │ │ │ +        <div class="toc-tree-container">
│ │ │ │ +          <div class="toc-tree">
│ │ │ │ +            <ul>
│ │ │ │ +<li><a class="reference internal" href="#">Picologging API</a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FileHandler"><code class="docutils literal notranslate"><span class="pre">FileHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FileHandler.close"><code class="docutils literal notranslate"><span class="pre">FileHandler.close()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FileHandler.emit"><code class="docutils literal notranslate"><span class="pre">FileHandler.emit()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Filterer"><code class="docutils literal notranslate"><span class="pre">Filterer</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Filterer.addFilter"><code class="docutils literal notranslate"><span class="pre">Filterer.addFilter()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Filterer.filter"><code class="docutils literal notranslate"><span class="pre">Filterer.filter()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Filterer.filters"><code class="docutils literal notranslate"><span class="pre">Filterer.filters</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Filterer.removeFilter"><code class="docutils literal notranslate"><span class="pre">Filterer.removeFilter()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FormatStyle"><code class="docutils literal notranslate"><span class="pre">FormatStyle</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FormatStyle.format"><code class="docutils literal notranslate"><span class="pre">FormatStyle.format()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FormatStyle.usesTime"><code class="docutils literal notranslate"><span class="pre">FormatStyle.usesTime()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.FormatStyle.validate"><code class="docutils literal notranslate"><span class="pre">FormatStyle.validate()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter"><code class="docutils literal notranslate"><span class="pre">Formatter</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.datefmt"><code class="docutils literal notranslate"><span class="pre">Formatter.datefmt</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.format"><code class="docutils literal notranslate"><span class="pre">Formatter.format()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.formatException"><code class="docutils literal notranslate"><span class="pre">Formatter.formatException()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.formatMessage"><code class="docutils literal notranslate"><span class="pre">Formatter.formatMessage()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.formatStack"><code class="docutils literal notranslate"><span class="pre">Formatter.formatStack()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Formatter.usesTime"><code class="docutils literal notranslate"><span class="pre">Formatter.usesTime()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler"><code class="docutils literal notranslate"><span class="pre">Handler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.acquire"><code class="docutils literal notranslate"><span class="pre">Handler.acquire()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.close"><code class="docutils literal notranslate"><span class="pre">Handler.close()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.createLock"><code class="docutils literal notranslate"><span class="pre">Handler.createLock()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.emit"><code class="docutils literal notranslate"><span class="pre">Handler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.flush"><code class="docutils literal notranslate"><span class="pre">Handler.flush()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.format"><code class="docutils literal notranslate"><span class="pre">Handler.format()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.formatter"><code class="docutils literal notranslate"><span class="pre">Handler.formatter</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.get_name"><code class="docutils literal notranslate"><span class="pre">Handler.get_name()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.handle"><code class="docutils literal notranslate"><span class="pre">Handler.handle()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.handleError"><code class="docutils literal notranslate"><span class="pre">Handler.handleError()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.level"><code class="docutils literal notranslate"><span class="pre">Handler.level</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.name"><code class="docutils literal notranslate"><span class="pre">Handler.name</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.release"><code class="docutils literal notranslate"><span class="pre">Handler.release()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.setFormatter"><code class="docutils literal notranslate"><span class="pre">Handler.setFormatter()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.setLevel"><code class="docutils literal notranslate"><span class="pre">Handler.setLevel()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Handler.set_name"><code class="docutils literal notranslate"><span class="pre">Handler.set_name()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord"><code class="docutils literal notranslate"><span class="pre">LogRecord</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.args"><code class="docutils literal notranslate"><span class="pre">LogRecord.args</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.asctime"><code class="docutils literal notranslate"><span class="pre">LogRecord.asctime</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.created"><code class="docutils literal notranslate"><span class="pre">LogRecord.created</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.exc_info"><code class="docutils literal notranslate"><span class="pre">LogRecord.exc_info</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.exc_text"><code class="docutils literal notranslate"><span class="pre">LogRecord.exc_text</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.filename"><code class="docutils literal notranslate"><span class="pre">LogRecord.filename</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.funcName"><code class="docutils literal notranslate"><span class="pre">LogRecord.funcName</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.getMessage"><code class="docutils literal notranslate"><span class="pre">LogRecord.getMessage()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.levelname"><code class="docutils literal notranslate"><span class="pre">LogRecord.levelname</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.levelno"><code class="docutils literal notranslate"><span class="pre">LogRecord.levelno</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.lineno"><code class="docutils literal notranslate"><span class="pre">LogRecord.lineno</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.message"><code class="docutils literal notranslate"><span class="pre">LogRecord.message</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.module"><code class="docutils literal notranslate"><span class="pre">LogRecord.module</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.msecs"><code class="docutils literal notranslate"><span class="pre">LogRecord.msecs</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.msg"><code class="docutils literal notranslate"><span class="pre">LogRecord.msg</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.name"><code class="docutils literal notranslate"><span class="pre">LogRecord.name</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.pathname"><code class="docutils literal notranslate"><span class="pre">LogRecord.pathname</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.process"><code class="docutils literal notranslate"><span class="pre">LogRecord.process</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.processName"><code class="docutils literal notranslate"><span class="pre">LogRecord.processName</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.relativeCreated"><code class="docutils literal notranslate"><span class="pre">LogRecord.relativeCreated</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.stack_info"><code class="docutils literal notranslate"><span class="pre">LogRecord.stack_info</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.thread"><code class="docutils literal notranslate"><span class="pre">LogRecord.thread</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.LogRecord.threadName"><code class="docutils literal notranslate"><span class="pre">LogRecord.threadName</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger"><code class="docutils literal notranslate"><span class="pre">Logger</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.addHandler"><code class="docutils literal notranslate"><span class="pre">Logger.addHandler()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.critical"><code class="docutils literal notranslate"><span class="pre">Logger.critical()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.debug"><code class="docutils literal notranslate"><span class="pre">Logger.debug()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.disabled"><code class="docutils literal notranslate"><span class="pre">Logger.disabled</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.error"><code class="docutils literal notranslate"><span class="pre">Logger.error()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.exception"><code class="docutils literal notranslate"><span class="pre">Logger.exception()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.fatal"><code class="docutils literal notranslate"><span class="pre">Logger.fatal()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.getEffectiveLevel"><code class="docutils literal notranslate"><span class="pre">Logger.getEffectiveLevel()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.handlers"><code class="docutils literal notranslate"><span class="pre">Logger.handlers</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.info"><code class="docutils literal notranslate"><span class="pre">Logger.info()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.isEnabledFor"><code class="docutils literal notranslate"><span class="pre">Logger.isEnabledFor()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.level"><code class="docutils literal notranslate"><span class="pre">Logger.level</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.log"><code class="docutils literal notranslate"><span class="pre">Logger.log()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.manager"><code class="docutils literal notranslate"><span class="pre">Logger.manager</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.name"><code class="docutils literal notranslate"><span class="pre">Logger.name</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.parent"><code class="docutils literal notranslate"><span class="pre">Logger.parent</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.propagate"><code class="docutils literal notranslate"><span class="pre">Logger.propagate</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.removeHandler"><code class="docutils literal notranslate"><span class="pre">Logger.removeHandler()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.setLevel"><code class="docutils literal notranslate"><span class="pre">Logger.setLevel()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Logger.warning"><code class="docutils literal notranslate"><span class="pre">Logger.warning()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Manager"><code class="docutils literal notranslate"><span class="pre">Manager</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Manager.disable"><code class="docutils literal notranslate"><span class="pre">Manager.disable</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Manager.getLogger"><code class="docutils literal notranslate"><span class="pre">Manager.getLogger()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Manager.setLogRecordFactory"><code class="docutils literal notranslate"><span class="pre">Manager.setLogRecordFactory()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.Manager.setLoggerClass"><code class="docutils literal notranslate"><span class="pre">Manager.setLoggerClass()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.NullHandler"><code class="docutils literal notranslate"><span class="pre">NullHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.NullHandler.emit"><code class="docutils literal notranslate"><span class="pre">NullHandler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.NullHandler.handle"><code class="docutils literal notranslate"><span class="pre">NullHandler.handle()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.PercentStyle"><code class="docutils literal notranslate"><span class="pre">PercentStyle</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StrFormatStyle"><code class="docutils literal notranslate"><span class="pre">StrFormatStyle</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StreamHandler"><code class="docutils literal notranslate"><span class="pre">StreamHandler</span></code></a><ul>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StreamHandler.emit"><code class="docutils literal notranslate"><span class="pre">StreamHandler.emit()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StreamHandler.flush"><code class="docutils literal notranslate"><span class="pre">StreamHandler.flush()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StreamHandler.setStream"><code class="docutils literal notranslate"><span class="pre">StreamHandler.setStream()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.StreamHandler.stream"><code class="docutils literal notranslate"><span class="pre">StreamHandler.stream</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.basicConfig"><code class="docutils literal notranslate"><span class="pre">basicConfig()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.critical"><code class="docutils literal notranslate"><span class="pre">critical()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.debug"><code class="docutils literal notranslate"><span class="pre">debug()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.disable"><code class="docutils literal notranslate"><span class="pre">disable()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.error"><code class="docutils literal notranslate"><span class="pre">error()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.exception"><code class="docutils literal notranslate"><span class="pre">exception()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.fatal"><code class="docutils literal notranslate"><span class="pre">fatal()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.getLogger"><code class="docutils literal notranslate"><span class="pre">getLogger()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.info"><code class="docutils literal notranslate"><span class="pre">info()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.log"><code class="docutils literal notranslate"><span class="pre">log()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.makeLogRecord"><code class="docutils literal notranslate"><span class="pre">makeLogRecord()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.warn"><code class="docutils literal notranslate"><span class="pre">warn()</span></code></a></li>
│ │ │ │ +<li><a class="reference internal" href="#picologging.warning"><code class="docutils literal notranslate"><span class="pre">warning()</span></code></a></li>
│ │ │ │ +</ul>
│ │ │ │ +</li>
│ │ │ │ +</ul>
│ │ │ │ +
│ │ │ │ +          </div>
│ │ │ │ +        </div>
│ │ │ │ +      </div>
│ │ │ │ +      
│ │ │ │        
│ │ │ │      </aside>
│ │ │ │    </div>
│ │ │ │  </div><script src="_static/documentation_options.js?v=5929fcd5"></script>
│ │ │ │      <script src="_static/doctools.js?v=9bcbadda"></script>
│ │ │ │      <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
│ │ │ │      <script type="module" src="_static/scripts/furo.js?v=d32f1409"></script>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -14,13 +14,417 @@
│ │ │ │ │      * _U_s_i_n_g_ _w_i_t_h_ _D_j_a_n_g_o
│ │ │ │ │      * _L_i_m_i_t_a_t_i_o_n_s
│ │ │ │ │  _B_a_c_k_ _t_o_ _t_o_p
│ │ │ │ │  _V_i_e_w_ _t_h_i_s_ _p_a_g_e
│ │ │ │ │  Toggle Light / Dark / Auto color theme
│ │ │ │ │  Toggle table of contents sidebar
│ │ │ │ │  ************ PPiiccoollooggggiinngg AAPPII_?¶ ************
│ │ │ │ │ +  ccllaassss picologging.FileHandler(ffiilleennaammee, mmooddee==''aa'', eennccooddiinngg==NNoonnee, ddeellaayy==FFaallssee,
│ │ │ │ │ +  eerrrroorrss==NNoonnee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      A handler class which writes formatted logging records to disk files.
│ │ │ │ │ +        close()_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Closes the stream.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +            If the stream was not opened because ‘delay’ was specified in the
│ │ │ │ │ +            constructor, open it before calling the superclass’s emit.
│ │ │ │ │ +  ccllaassss picologging.Filterer_¶
│ │ │ │ │ +      Filterer interface.
│ │ │ │ │ +        addFilter(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Add a filter to the logger.
│ │ │ │ │ +        filter(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Filter a record.
│ │ │ │ │ +        filters_¶
│ │ │ │ │ +            Filters
│ │ │ │ │ +        removeFilter(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Remove a filter from the logger.
│ │ │ │ │ +  ccllaassss picologging.FormatStyle_¶
│ │ │ │ │ +      Formatter for log records.
│ │ │ │ │ +        format(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Get message
│ │ │ │ │ +        usesTime()_¶
│ │ │ │ │ +            Get message
│ │ │ │ │ +        validate()_¶
│ │ │ │ │ +            Get message
│ │ │ │ │ +  ccllaassss picologging.Formatter_¶
│ │ │ │ │ +      Formatter for log records.
│ │ │ │ │ +        datefmt_¶
│ │ │ │ │ +            Date format string
│ │ │ │ │ +        format(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format record into log event string
│ │ │ │ │ +        formatException(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format and return the specified exception information as a string.
│ │ │ │ │ +        formatMessage(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format the message for a record.
│ │ │ │ │ +        formatStack(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format the stack for a record.
│ │ │ │ │ +        usesTime()_¶
│ │ │ │ │ +            Return True if the format uses the creation time of the record.
│ │ │ │ │ +  ccllaassss picologging.Handler_¶
│ │ │ │ │ +      Handler interface.
│ │ │ │ │ +        acquire()_¶
│ │ │ │ │ +            Acquire the lock.
│ │ │ │ │ +        close()_¶
│ │ │ │ │ +            Tidy up any resources used by the handler.
│ │ │ │ │ +        createLock()_¶
│ │ │ │ │ +            Create a new lock instance.
│ │ │ │ │ +        emit(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +        flush()_¶
│ │ │ │ │ +            Ensure all logging output has been flushed.
│ │ │ │ │ +        format(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Format a record.
│ │ │ │ │ +        formatter_¶
│ │ │ │ │ +            Handler formatter
│ │ │ │ │ +        get_name()_¶
│ │ │ │ │ +            Get the name of the handler.
│ │ │ │ │ +        handle(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Handle a record.
│ │ │ │ │ +        handleError(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Handle an error during an emit().
│ │ │ │ │ +        level_¶
│ │ │ │ │ +            Handler level
│ │ │ │ │ +        name_¶
│ │ │ │ │ +            Handler name
│ │ │ │ │ +        release()_¶
│ │ │ │ │ +            Release the lock.
│ │ │ │ │ +        setFormatter(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the formatter of the handler.
│ │ │ │ │ +        setLevel(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the level of the handler.
│ │ │ │ │ +        set_name(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the name of the handler.
│ │ │ │ │ +  ccllaassss picologging.LogRecord_¶
│ │ │ │ │ +      LogRecord objects are used to hold information about log events.
│ │ │ │ │ +        args_¶
│ │ │ │ │ +            Arguments (tuple)
│ │ │ │ │ +        asctime_¶
│ │ │ │ │ +            Asctime
│ │ │ │ │ +        created_¶
│ │ │ │ │ +            Created
│ │ │ │ │ +        exc_info_¶
│ │ │ │ │ +            Exception info
│ │ │ │ │ +        exc_text_¶
│ │ │ │ │ +            Exception text
│ │ │ │ │ +        filename_¶
│ │ │ │ │ +            File name
│ │ │ │ │ +        funcName_¶
│ │ │ │ │ +            Function name
│ │ │ │ │ +        getMessage()_¶
│ │ │ │ │ +            Get message
│ │ │ │ │ +        levelname_¶
│ │ │ │ │ +            Level name
│ │ │ │ │ +        levelno_¶
│ │ │ │ │ +            Level number
│ │ │ │ │ +        lineno_¶
│ │ │ │ │ +            Line number
│ │ │ │ │ +        message_¶
│ │ │ │ │ +            Message
│ │ │ │ │ +        module_¶
│ │ │ │ │ +            Module name
│ │ │ │ │ +        msecs_¶
│ │ │ │ │ +            Milliseconds
│ │ │ │ │ +        msg_¶
│ │ │ │ │ +            Message (string)
│ │ │ │ │ +        name_¶
│ │ │ │ │ +            Logger name
│ │ │ │ │ +        pathname_¶
│ │ │ │ │ +            File pathname
│ │ │ │ │ +        process_¶
│ │ │ │ │ +            Process
│ │ │ │ │ +        processName_¶
│ │ │ │ │ +            Process name
│ │ │ │ │ +        relativeCreated_¶
│ │ │ │ │ +            Relative created
│ │ │ │ │ +        stack_info_¶
│ │ │ │ │ +            Stack info
│ │ │ │ │ +        thread_¶
│ │ │ │ │ +            Thread
│ │ │ │ │ +        threadName_¶
│ │ │ │ │ +            Thread name
│ │ │ │ │ +  ccllaassss picologging.Logger_¶
│ │ │ │ │ +      Logging interface.
│ │ │ │ │ +        addHandler(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Add a handler to the logger.
│ │ │ │ │ +        critical()_¶
│ │ │ │ │ +            Log a message at level CRITICAL.
│ │ │ │ │ +        debug()_¶
│ │ │ │ │ +            Log a message at level DEBUG.
│ │ │ │ │ +        disabled_¶
│ │ │ │ │ +            Logger disabled
│ │ │ │ │ +        error()_¶
│ │ │ │ │ +            Log a message at level ERROR.
│ │ │ │ │ +        exception()_¶
│ │ │ │ │ +            Log a message at level ERROR.
│ │ │ │ │ +        fatal()_¶
│ │ │ │ │ +            Log a message at level FATAL.
│ │ │ │ │ +        getEffectiveLevel()_¶
│ │ │ │ │ +            Get the effective level of the logger.
│ │ │ │ │ +        handlers_¶
│ │ │ │ │ +            Logger handlers
│ │ │ │ │ +        info()_¶
│ │ │ │ │ +            Log a message at level INFO.
│ │ │ │ │ +        isEnabledFor(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Check if logger enabled for this level.
│ │ │ │ │ +        level_¶
│ │ │ │ │ +            Logger level
│ │ │ │ │ +        log()_¶
│ │ │ │ │ +            Log a message at the specified level.
│ │ │ │ │ +        manager_¶
│ │ │ │ │ +            Logger manager
│ │ │ │ │ +        name_¶
│ │ │ │ │ +            Logger name
│ │ │ │ │ +        parent_¶
│ │ │ │ │ +            Logger parent
│ │ │ │ │ +        propagate_¶
│ │ │ │ │ +            Logger propagate
│ │ │ │ │ +        removeHandler(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Remove a handler from the logger.
│ │ │ │ │ +        setLevel(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the level of the logger.
│ │ │ │ │ +        warning()_¶
│ │ │ │ │ +            Log a message at level WARNING.
│ │ │ │ │ +  ccllaassss picologging.Manager(rroooottnnooddee, ccllss==NNoonnee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      There is [under normal circumstances] just one Manager instance, which
│ │ │ │ │ +      holds the hierarchy of loggers.
│ │ │ │ │ +        pprrooppeerrttyy disable_¶
│ │ │ │ │ +        getLogger(nnaammee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Get a logger with the specified name (channel name), creating it if
│ │ │ │ │ +            it doesn’t yet exist. This name is a dot-separated hierarchical
│ │ │ │ │ +            name, such as “a”, “a.b”, “a.b.c” or similar.
│ │ │ │ │ +        setLogRecordFactory(ffaaccttoorryy)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +        setLoggerClass(kkllaassss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +  ccllaassss picologging.NullHandler_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      This handler does nothing. It’s intended to be used to avoid the “No
│ │ │ │ │ +      handlers could be found for logger XXX” one-off warning. This is
│ │ │ │ │ +      important for library code, which may contain code to log events. If a
│ │ │ │ │ +      user of the library does not configure logging, the one-off warning might
│ │ │ │ │ +      be produced; to avoid this, the library developer simply needs to
│ │ │ │ │ +      instantiate a NullHandler and add it to the top-level logger of the
│ │ │ │ │ +      library module or package.
│ │ │ │ │ +        emit(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Stub.
│ │ │ │ │ +        handle(rreeccoorrdd)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +            Stub.
│ │ │ │ │ +  ccllaassss picologging.PercentStyle(**aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +  ccllaassss picologging.StrFormatStyle(**aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +  ccllaassss picologging.StreamHandler_¶
│ │ │ │ │ +      StreamHandler interface.
│ │ │ │ │ +        emit()_¶
│ │ │ │ │ +            Emit a record.
│ │ │ │ │ +        flush()_¶
│ │ │ │ │ +            Flush the stream.
│ │ │ │ │ +        setStream(oobbjjeecctt, //)_¶
│ │ │ │ │ +            Set the stream to write to.
│ │ │ │ │ +        stream_¶
│ │ │ │ │ +            Stream
│ │ │ │ │ +  picologging.basicConfig(****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Do basic configuration for the logging system.
│ │ │ │ │ +      This function does nothing if the root logger already has handlers
│ │ │ │ │ +      configured, unless the keyword argument ffoorrccee is set to True. It is a
│ │ │ │ │ +      convenience method intended for use by simple scripts to do one-shot
│ │ │ │ │ +      configuration of the logging package.
│ │ │ │ │ +      The default behaviour is to create a StreamHandler which writes to
│ │ │ │ │ +      sys.stderr, set a formatter using the BASIC_FORMAT format string, and add
│ │ │ │ │ +      the handler to the root logger.
│ │ │ │ │ +      A number of optional keyword arguments may be specified, which can alter
│ │ │ │ │ +      the default behaviour.
│ │ │ │ │ +        filename Specifies that a FileHandler be created, using the specified
│ │ │ │ │ +            filename, rather than a StreamHandler.
│ │ │ │ │ +        filemode Specifies the mode to open the file, if filename is specified
│ │ │ │ │ +            (if filemode is unspecified, it defaults to ‘a’).
│ │ │ │ │ +      format Use the specified format string for the handler. datefmt Use the
│ │ │ │ │ +      specified date/time format. style If a format string is specified, use
│ │ │ │ │ +      this to specify the
│ │ │ │ │ +           type of format string (possible values ‘%’, ‘{’, ‘$’, for %-
│ │ │ │ │ +           formatting, str.format() and string.Template - defaults to
│ │ │ │ │ +           ‘%’).
│ │ │ │ │ +      level Set the root logger level to the specified level. stream Use the
│ │ │ │ │ +      specified stream to initialize the StreamHandler. Note
│ │ │ │ │ +           that this argument is incompatible with ‘filename’ - if both
│ │ │ │ │ +           are present, ‘stream’ is ignored.
│ │ │ │ │ +        handlers If specified, this should be an iterable of already created
│ │ │ │ │ +            handlers, which will be added to the root handler. Any handler in
│ │ │ │ │ +            the list which does not have a formatter assigned will be assigned
│ │ │ │ │ +            the formatter created in this function.
│ │ │ │ │ +        force If this keyword is specified as true, any existing handlers
│ │ │ │ │ +            attached to the root logger are removed and closed, before carrying
│ │ │ │ │ +            out the configuration as specified by the other arguments.
│ │ │ │ │ +        encoding If specified together with a filename, this encoding is passed
│ │ │ │ │ +        to
│ │ │ │ │ +            the created FileHandler, causing it to be used when the file is
│ │ │ │ │ +            opened.
│ │ │ │ │ +        errors If specified together with a filename, this value is passed to
│ │ │ │ │ +        the
│ │ │ │ │ +            created FileHandler, causing it to be used when the file is opened
│ │ │ │ │ +            in text mode. If not specified, the default value
│ │ │ │ │ +            isbackslashreplace.
│ │ │ │ │ +      Note that you could specify a stream created using open(filename, mode)
│ │ │ │ │ +      rather than passing the filename and mode in. However, it should be
│ │ │ │ │ +      remembered that StreamHandler does not close its stream (since it may be
│ │ │ │ │ +      using sys.stdout or sys.stderr), whereas FileHandler closes its stream
│ │ │ │ │ +      when the handler is closed.
│ │ │ │ │ +      Changed in version 3.2: Added the style parameter.
│ │ │ │ │ +      Changed in version 3.3: Added the handlers parameter. A ValueError is now
│ │ │ │ │ +      thrown for incompatible arguments (e.g. handlers specified together with
│ │ │ │ │ +      filename/filemode, or filename/filemode specified together with stream,
│ │ │ │ │ +      or handlers specified together with stream.
│ │ │ │ │ +      Changed in version 3.8: Added the force parameter.
│ │ │ │ │ +      Changed in version 3.9: Added the encoding and errors parameters.
│ │ │ │ │ +  picologging.critical(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘CRITICAL’ on the root logger. If the logger
│ │ │ │ │ +      has no handlers, call basicConfig() to add a console handler with a pre-
│ │ │ │ │ +      defined format.
│ │ │ │ │ +  picologging.debug(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘DEBUG’ on the root logger. If the logger has
│ │ │ │ │ +      no handlers, call basicConfig() to add a console handler with a pre-
│ │ │ │ │ +      defined format.
│ │ │ │ │ +  picologging.disable(lleevveell==5500)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Disable all logging calls of severity ‘level’ and below.
│ │ │ │ │ +  picologging.error(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘ERROR’ on the root logger. If the logger has
│ │ │ │ │ +      no handlers, call basicConfig() to add a console handler with a pre-
│ │ │ │ │ +      defined format.
│ │ │ │ │ +  picologging.exception(mmssgg, **aarrggss, eexxcc__iinnffoo==TTrruuee, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘ERROR’ on the root logger, with exception
│ │ │ │ │ +      information. If the logger has no handlers, basicConfig() is called to
│ │ │ │ │ +      add a console handler with a pre-defined format.
│ │ │ │ │ +  picologging.fatal(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Don’t use this function, use critical() instead.
│ │ │ │ │ +  picologging.getLogger(nnaammee==NNoonnee)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Return a logger with the specified name, creating it if necessary.
│ │ │ │ │ +      If no name is specified, return the root logger.
│ │ │ │ │ +  picologging.info(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘INFO’ on the root logger. If the logger has
│ │ │ │ │ +      no handlers, call basicConfig() to add a console handler with a pre-
│ │ │ │ │ +      defined format.
│ │ │ │ │ +  picologging.log(lleevveell, mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log ‘msg % args’ with the integer severity ‘level’ on the root logger. If
│ │ │ │ │ +      the logger has no handlers, call basicConfig() to add a console handler
│ │ │ │ │ +      with a pre-defined format.
│ │ │ │ │ +  picologging.makeLogRecord(ddiicctt)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Make a LogRecord whose attributes are defined by the specified
│ │ │ │ │ +      dictionary, This function is useful for converting a logging event
│ │ │ │ │ +      received over a socket connection (which is sent as a dictionary) into a
│ │ │ │ │ +      LogRecord instance.
│ │ │ │ │ +  picologging.warn(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +  picologging.warning(mmssgg, **aarrggss, ****kkwwaarrggss)_[_s_o_u_r_c_e_]_¶
│ │ │ │ │ +      Log a message with severity ‘WARNING’ on the root logger. If the logger
│ │ │ │ │ +      has no handlers, call basicConfig() to add a console handler with a pre-
│ │ │ │ │ +      defined format.
│ │ │ │ │  _N_e_x_t
│ │ │ │ │  _H_a_n_d_l_e_r_s
│ │ │ │ │  _P_r_e_v_i_o_u_s
│ │ │ │ │  _H_o_m_e
│ │ │ │ │  Copyright © 2022, Microsoft
│ │ │ │ │  Made with _S_p_h_i_n_x and _@_p_r_a_d_y_u_n_s_g's _F_u_r_o
│ │ │ │ │ +On this page
│ │ │ │ │ +    * _P_i_c_o_l_o_g_g_i_n_g_ _A_P_I
│ │ │ │ │ +          o _F_i_l_e_H_a_n_d_l_e_r
│ │ │ │ │ +                # _F_i_l_e_H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ │ │ +                # _F_i_l_e_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +          o _F_i_l_t_e_r_e_r
│ │ │ │ │ +                # _F_i_l_t_e_r_e_r_._a_d_d_F_i_l_t_e_r_(_)
│ │ │ │ │ +                # _F_i_l_t_e_r_e_r_._f_i_l_t_e_r_(_)
│ │ │ │ │ +                # _F_i_l_t_e_r_e_r_._f_i_l_t_e_r_s
│ │ │ │ │ +                # _F_i_l_t_e_r_e_r_._r_e_m_o_v_e_F_i_l_t_e_r_(_)
│ │ │ │ │ +          o _F_o_r_m_a_t_S_t_y_l_e
│ │ │ │ │ +                # _F_o_r_m_a_t_S_t_y_l_e_._f_o_r_m_a_t_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_S_t_y_l_e_._u_s_e_s_T_i_m_e_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_S_t_y_l_e_._v_a_l_i_d_a_t_e_(_)
│ │ │ │ │ +          o _F_o_r_m_a_t_t_e_r
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._d_a_t_e_f_m_t
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._f_o_r_m_a_t_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._f_o_r_m_a_t_E_x_c_e_p_t_i_o_n_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._f_o_r_m_a_t_M_e_s_s_a_g_e_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._f_o_r_m_a_t_S_t_a_c_k_(_)
│ │ │ │ │ +                # _F_o_r_m_a_t_t_e_r_._u_s_e_s_T_i_m_e_(_)
│ │ │ │ │ +          o _H_a_n_d_l_e_r
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._a_c_q_u_i_r_e_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._c_l_o_s_e_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._c_r_e_a_t_e_L_o_c_k_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._f_l_u_s_h_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._f_o_r_m_a_t_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._f_o_r_m_a_t_t_e_r
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._g_e_t___n_a_m_e_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._h_a_n_d_l_e_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._h_a_n_d_l_e_E_r_r_o_r_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._l_e_v_e_l
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._n_a_m_e
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._r_e_l_e_a_s_e_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._s_e_t_F_o_r_m_a_t_t_e_r_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._s_e_t_L_e_v_e_l_(_)
│ │ │ │ │ +                # _H_a_n_d_l_e_r_._s_e_t___n_a_m_e_(_)
│ │ │ │ │ +          o _L_o_g_R_e_c_o_r_d
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._a_r_g_s
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._a_s_c_t_i_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._c_r_e_a_t_e_d
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._e_x_c___i_n_f_o
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._e_x_c___t_e_x_t
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._f_i_l_e_n_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._f_u_n_c_N_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._g_e_t_M_e_s_s_a_g_e_(_)
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._l_e_v_e_l_n_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._l_e_v_e_l_n_o
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._l_i_n_e_n_o
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._m_e_s_s_a_g_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._m_o_d_u_l_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._m_s_e_c_s
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._m_s_g
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._n_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._p_a_t_h_n_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._p_r_o_c_e_s_s
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._p_r_o_c_e_s_s_N_a_m_e
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._r_e_l_a_t_i_v_e_C_r_e_a_t_e_d
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._s_t_a_c_k___i_n_f_o
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._t_h_r_e_a_d
│ │ │ │ │ +                # _L_o_g_R_e_c_o_r_d_._t_h_r_e_a_d_N_a_m_e
│ │ │ │ │ +          o _L_o_g_g_e_r
│ │ │ │ │ +                # _L_o_g_g_e_r_._a_d_d_H_a_n_d_l_e_r_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._c_r_i_t_i_c_a_l_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._d_e_b_u_g_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._d_i_s_a_b_l_e_d
│ │ │ │ │ +                # _L_o_g_g_e_r_._e_r_r_o_r_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._e_x_c_e_p_t_i_o_n_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._f_a_t_a_l_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._g_e_t_E_f_f_e_c_t_i_v_e_L_e_v_e_l_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._h_a_n_d_l_e_r_s
│ │ │ │ │ +                # _L_o_g_g_e_r_._i_n_f_o_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._i_s_E_n_a_b_l_e_d_F_o_r_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._l_e_v_e_l
│ │ │ │ │ +                # _L_o_g_g_e_r_._l_o_g_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._m_a_n_a_g_e_r
│ │ │ │ │ +                # _L_o_g_g_e_r_._n_a_m_e
│ │ │ │ │ +                # _L_o_g_g_e_r_._p_a_r_e_n_t
│ │ │ │ │ +                # _L_o_g_g_e_r_._p_r_o_p_a_g_a_t_e
│ │ │ │ │ +                # _L_o_g_g_e_r_._r_e_m_o_v_e_H_a_n_d_l_e_r_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._s_e_t_L_e_v_e_l_(_)
│ │ │ │ │ +                # _L_o_g_g_e_r_._w_a_r_n_i_n_g_(_)
│ │ │ │ │ +          o _M_a_n_a_g_e_r
│ │ │ │ │ +                # _M_a_n_a_g_e_r_._d_i_s_a_b_l_e
│ │ │ │ │ +                # _M_a_n_a_g_e_r_._g_e_t_L_o_g_g_e_r_(_)
│ │ │ │ │ +                # _M_a_n_a_g_e_r_._s_e_t_L_o_g_R_e_c_o_r_d_F_a_c_t_o_r_y_(_)
│ │ │ │ │ +                # _M_a_n_a_g_e_r_._s_e_t_L_o_g_g_e_r_C_l_a_s_s_(_)
│ │ │ │ │ +          o _N_u_l_l_H_a_n_d_l_e_r
│ │ │ │ │ +                # _N_u_l_l_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                # _N_u_l_l_H_a_n_d_l_e_r_._h_a_n_d_l_e_(_)
│ │ │ │ │ +          o _P_e_r_c_e_n_t_S_t_y_l_e
│ │ │ │ │ +          o _S_t_r_F_o_r_m_a_t_S_t_y_l_e
│ │ │ │ │ +          o _S_t_r_e_a_m_H_a_n_d_l_e_r
│ │ │ │ │ +                # _S_t_r_e_a_m_H_a_n_d_l_e_r_._e_m_i_t_(_)
│ │ │ │ │ +                # _S_t_r_e_a_m_H_a_n_d_l_e_r_._f_l_u_s_h_(_)
│ │ │ │ │ +                # _S_t_r_e_a_m_H_a_n_d_l_e_r_._s_e_t_S_t_r_e_a_m_(_)
│ │ │ │ │ +                # _S_t_r_e_a_m_H_a_n_d_l_e_r_._s_t_r_e_a_m
│ │ │ │ │ +          o _b_a_s_i_c_C_o_n_f_i_g_(_)
│ │ │ │ │ +          o _c_r_i_t_i_c_a_l_(_)
│ │ │ │ │ +          o _d_e_b_u_g_(_)
│ │ │ │ │ +          o _d_i_s_a_b_l_e_(_)
│ │ │ │ │ +          o _e_r_r_o_r_(_)
│ │ │ │ │ +          o _e_x_c_e_p_t_i_o_n_(_)
│ │ │ │ │ +          o _f_a_t_a_l_(_)
│ │ │ │ │ +          o _g_e_t_L_o_g_g_e_r_(_)
│ │ │ │ │ +          o _i_n_f_o_(_)
│ │ │ │ │ +          o _l_o_g_(_)
│ │ │ │ │ +          o _m_a_k_e_L_o_g_R_e_c_o_r_d_(_)
│ │ │ │ │ +          o _w_a_r_n_(_)
│ │ │ │ │ +          o _w_a_r_n_i_n_g_(_)
│ │ │ ├── ./usr/share/doc/python-picologging-doc/html/objects.inv
│ │ │ │ ├── Sphinx inventory
│ │ │ │ │ @@ -1,12 +1,167 @@
│ │ │ │ │  # Sphinx inventory version 2
│ │ │ │ │  # Project: picologging
│ │ │ │ │  # Version: 
│ │ │ │ │  # The remainder of this file is compressed using zlib.
│ │ │ │ │  
│ │ │ │ │ +picologging py:module 0 logging.html#module-$ -
│ │ │ │ │ +picologging.FileHandler py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.FileHandler.close py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.FileHandler.emit py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Filterer py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.Filterer.addFilter py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Filterer.filter py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Filterer.filters py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Filterer.removeFilter py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.FormatStyle py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.FormatStyle.format py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.FormatStyle.usesTime py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.FormatStyle.validate py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.datefmt py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.format py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.formatException py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.formatMessage py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.formatStack py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Formatter.usesTime py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.acquire py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.close py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.createLock py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.emit py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.flush py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.format py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.formatter py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.get_name py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.handle py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.handleError py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.level py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.name py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.release py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.setFormatter py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.setLevel py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Handler.set_name py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.args py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.asctime py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.created py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.exc_info py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.exc_text py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.filename py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.funcName py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.getMessage py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.levelname py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.levelno py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.lineno py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.message py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.module py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.msecs py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.msg py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.name py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.pathname py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.process py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.processName py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.relativeCreated py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.stack_info py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.thread py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.LogRecord.threadName py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.addHandler py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.critical py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.debug py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.disabled py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.error py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.exception py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.fatal py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.getEffectiveLevel py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.handlers py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.info py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.isEnabledFor py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.level py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.log py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.manager py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.name py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.parent py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.propagate py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.removeHandler py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.setLevel py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Logger.warning py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Manager py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.Manager.disable py:property 1 logging.html#$ -
│ │ │ │ │ +picologging.Manager.getLogger py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Manager.setLogRecordFactory py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.Manager.setLoggerClass py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.NullHandler py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.NullHandler.emit py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.NullHandler.handle py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.PercentStyle py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.StrFormatStyle py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.StreamHandler py:class 1 logging.html#$ -
│ │ │ │ │ +picologging.StreamHandler.emit py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.StreamHandler.flush py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.StreamHandler.setStream py:method 1 logging.html#$ -
│ │ │ │ │ +picologging.StreamHandler.stream py:attribute 1 logging.html#$ -
│ │ │ │ │ +picologging.basicConfig py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.critical py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.debug py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.disable py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.error py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.exception py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.fatal py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.getLogger py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler.doRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler.rotate py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler.rotation_filename py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BaseRotatingHandler.shouldRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BufferingHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BufferingHandler.close py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BufferingHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.BufferingHandler.flush py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.MemoryHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.MemoryHandler.close py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.MemoryHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.MemoryHandler.flush py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.MemoryHandler.setTarget py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueHandler.enqueue py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueHandler.prepare py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.dequeue py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.enqueue_sentinel py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.handle py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.prepare py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.start py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.QueueListener.stop py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.RotatingFileHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.RotatingFileHandler.doRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.RotatingFileHandler.shouldRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.close py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.createSocket py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.handleError py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.makePickle py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.makeSocket py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.SocketHandler.send py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.TimedRotatingFileHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.TimedRotatingFileHandler.computeRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.TimedRotatingFileHandler.doRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.TimedRotatingFileHandler.getFilesToDelete py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.TimedRotatingFileHandler.shouldRollover py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.WatchedFileHandler py:class 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.WatchedFileHandler.emit py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.handlers.WatchedFileHandler.reopenIfNeeded py:method 1 handlers.html#$ -
│ │ │ │ │ +picologging.info py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.log py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.makeLogRecord py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.warn py:function 1 logging.html#$ -
│ │ │ │ │ +picologging.warning py:function 1 logging.html#$ -
│ │ │ │ │  django std:doc -1 django.html Using with Django
│ │ │ │ │  django std:label -1 django.html#$ Using with Django
│ │ │ │ │  examples std:doc -1 examples.html Examples
│ │ │ │ │  examples std:label -1 examples.html#$ Examples
│ │ │ │ │  genindex std:label -1 genindex.html Index
│ │ │ │ │  handlers std:doc -1 handlers.html Handlers
│ │ │ │ │  handlers std:label -1 handlers.html#$ Handlers
│ │ │ ├── ./usr/share/doc/python-picologging-doc/html/searchindex.js
│ │ │ │ ├── js-beautify {}
│ │ │ │ │ @@ -92,273 +92,1369 @@
│ │ │ │ │          "sphinx.domains.math": 2,
│ │ │ │ │          "sphinx.domains.python": 4,
│ │ │ │ │          "sphinx.domains.rst": 2,
│ │ │ │ │          "sphinx.domains.std": 2,
│ │ │ │ │          "sphinx.ext.viewcode": 1
│ │ │ │ │      },
│ │ │ │ │      "filenames": ["django.rst", "examples.rst", "handlers.rst", "index.rst", "limitations.rst", "logging.rst"],
│ │ │ │ │ -    "indexentries": {},
│ │ │ │ │ -    "objects": {},
│ │ │ │ │ -    "objnames": {},
│ │ │ │ │ -    "objtypes": {},
│ │ │ │ │ +    "indexentries": {
│ │ │ │ │ +        "acquire() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.acquire", false],
│ │ │ │ │ +            [5, "picologging.Handler.acquire", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "addfilter() (picologging.filterer method)": [
│ │ │ │ │ +            [5, "picologging.Filterer.addFilter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "addhandler() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.addHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "args (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.args", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "asctime (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.asctime", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "baserotatinghandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "basicconfig() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.basicConfig", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "bufferinghandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.BufferingHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "close() (picologging.filehandler method)": [
│ │ │ │ │ +            [5, "picologging.FileHandler.close", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "close() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.close", false],
│ │ │ │ │ +            [5, "picologging.Handler.close", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "close() (picologging.handlers.bufferinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BufferingHandler.close", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "close() (picologging.handlers.memoryhandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.MemoryHandler.close", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "close() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.close", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "computerollover() (picologging.handlers.timedrotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.TimedRotatingFileHandler.computeRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "created (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.created", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "createlock() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.createLock", false],
│ │ │ │ │ +            [5, "picologging.Handler.createLock", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "createsocket() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.createSocket", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "critical() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.critical", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "critical() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.critical", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "datefmt (picologging.formatter attribute)": [
│ │ │ │ │ +            [5, "picologging.Formatter.datefmt", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "debug() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.debug", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "debug() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.debug", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "dequeue() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.dequeue", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "disable (picologging.manager property)": [
│ │ │ │ │ +            [5, "picologging.Manager.disable", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "disable() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.disable", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "disabled (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.disabled", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "dorollover() (picologging.handlers.baserotatinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler.doRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "dorollover() (picologging.handlers.rotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.RotatingFileHandler.doRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "dorollover() (picologging.handlers.timedrotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.TimedRotatingFileHandler.doRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.filehandler method)": [
│ │ │ │ │ +            [5, "picologging.FileHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.emit", false],
│ │ │ │ │ +            [5, "picologging.Handler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.baserotatinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.bufferinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BufferingHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.memoryhandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.MemoryHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.queuehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.handlers.watchedfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.WatchedFileHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.nullhandler method)": [
│ │ │ │ │ +            [5, "picologging.NullHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "emit() (picologging.streamhandler method)": [
│ │ │ │ │ +            [5, "picologging.StreamHandler.emit", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "enqueue() (picologging.handlers.queuehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueHandler.enqueue", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "enqueue_sentinel() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.enqueue_sentinel", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "error() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.error", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "error() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.error", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "exc_info (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.exc_info", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "exc_text (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.exc_text", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "exception() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.exception", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "exception() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.exception", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "fatal() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.fatal", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "fatal() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.fatal", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "filehandler (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.FileHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "filename (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.filename", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "filter() (picologging.filterer method)": [
│ │ │ │ │ +            [5, "picologging.Filterer.filter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "filterer (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.Filterer", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "filters (picologging.filterer attribute)": [
│ │ │ │ │ +            [5, "picologging.Filterer.filters", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "flush() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.flush", false],
│ │ │ │ │ +            [5, "picologging.Handler.flush", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "flush() (picologging.handlers.bufferinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BufferingHandler.flush", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "flush() (picologging.handlers.memoryhandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.MemoryHandler.flush", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "flush() (picologging.streamhandler method)": [
│ │ │ │ │ +            [5, "picologging.StreamHandler.flush", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "format() (picologging.formatstyle method)": [
│ │ │ │ │ +            [5, "picologging.FormatStyle.format", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "format() (picologging.formatter method)": [
│ │ │ │ │ +            [5, "picologging.Formatter.format", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "format() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.format", false],
│ │ │ │ │ +            [5, "picologging.Handler.format", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatexception() (picologging.formatter method)": [
│ │ │ │ │ +            [5, "picologging.Formatter.formatException", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatmessage() (picologging.formatter method)": [
│ │ │ │ │ +            [5, "picologging.Formatter.formatMessage", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatstack() (picologging.formatter method)": [
│ │ │ │ │ +            [5, "picologging.Formatter.formatStack", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatstyle (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.FormatStyle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatter (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.Formatter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "formatter (picologging.handler attribute)": [
│ │ │ │ │ +            [2, "picologging.Handler.formatter", false],
│ │ │ │ │ +            [5, "picologging.Handler.formatter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "funcname (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.funcName", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "get_name() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.get_name", false],
│ │ │ │ │ +            [5, "picologging.Handler.get_name", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "geteffectivelevel() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.getEffectiveLevel", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "getfilestodelete() (picologging.handlers.timedrotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.TimedRotatingFileHandler.getFilesToDelete", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "getlogger() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.getLogger", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "getlogger() (picologging.manager method)": [
│ │ │ │ │ +            [5, "picologging.Manager.getLogger", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "getmessage() (picologging.logrecord method)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.getMessage", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handle() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.handle", false],
│ │ │ │ │ +            [5, "picologging.Handler.handle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handle() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.handle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handle() (picologging.nullhandler method)": [
│ │ │ │ │ +            [5, "picologging.NullHandler.handle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handleerror() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.handleError", false],
│ │ │ │ │ +            [5, "picologging.Handler.handleError", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handleerror() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.handleError", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handler (class in picologging)": [
│ │ │ │ │ +            [2, "picologging.Handler", false],
│ │ │ │ │ +            [5, "picologging.Handler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "handlers (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.handlers", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "info() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.info", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "info() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.info", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "isenabledfor() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.isEnabledFor", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "level (picologging.handler attribute)": [
│ │ │ │ │ +            [2, "picologging.Handler.level", false],
│ │ │ │ │ +            [5, "picologging.Handler.level", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "level (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.level", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "levelname (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.levelname", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "levelno (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.levelno", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "lineno (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.lineno", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "log() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.log", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "log() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.log", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "logger (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.Logger", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "logrecord (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.LogRecord", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "makelogrecord() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.makeLogRecord", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "makepickle() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.makePickle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "makesocket() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.makeSocket", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "manager (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.Manager", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "manager (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.manager", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "memoryhandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.MemoryHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "message (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.message", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "module": [
│ │ │ │ │ +            [5, "module-picologging", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "module (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.module", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "msecs (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.msecs", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "msg (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.msg", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "name (picologging.handler attribute)": [
│ │ │ │ │ +            [2, "picologging.Handler.name", false],
│ │ │ │ │ +            [5, "picologging.Handler.name", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "name (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.name", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "name (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.name", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "nullhandler (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.NullHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "parent (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.parent", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "pathname (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.pathname", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "percentstyle (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.PercentStyle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging": [
│ │ │ │ │ +            [5, "module-picologging", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "prepare() (picologging.handlers.queuehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueHandler.prepare", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "prepare() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.prepare", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "process (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.process", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "processname (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.processName", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "propagate (picologging.logger attribute)": [
│ │ │ │ │ +            [5, "picologging.Logger.propagate", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "queuehandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "queuelistener (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "relativecreated (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.relativeCreated", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "release() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.release", false],
│ │ │ │ │ +            [5, "picologging.Handler.release", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "removefilter() (picologging.filterer method)": [
│ │ │ │ │ +            [5, "picologging.Filterer.removeFilter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "removehandler() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.removeHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "reopenifneeded() (picologging.handlers.watchedfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.WatchedFileHandler.reopenIfNeeded", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "rotate() (picologging.handlers.baserotatinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler.rotate", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "rotatingfilehandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.RotatingFileHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "rotation_filename() (picologging.handlers.baserotatinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler.rotation_filename", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "send() (picologging.handlers.sockethandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler.send", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "set_name() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.set_name", false],
│ │ │ │ │ +            [5, "picologging.Handler.set_name", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setformatter() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.setFormatter", false],
│ │ │ │ │ +            [5, "picologging.Handler.setFormatter", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setlevel() (picologging.handler method)": [
│ │ │ │ │ +            [2, "picologging.Handler.setLevel", false],
│ │ │ │ │ +            [5, "picologging.Handler.setLevel", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setlevel() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.setLevel", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setloggerclass() (picologging.manager method)": [
│ │ │ │ │ +            [5, "picologging.Manager.setLoggerClass", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setlogrecordfactory() (picologging.manager method)": [
│ │ │ │ │ +            [5, "picologging.Manager.setLogRecordFactory", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "setstream() (picologging.streamhandler method)": [
│ │ │ │ │ +            [5, "picologging.StreamHandler.setStream", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "settarget() (picologging.handlers.memoryhandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.MemoryHandler.setTarget", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "shouldrollover() (picologging.handlers.baserotatinghandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.BaseRotatingHandler.shouldRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "shouldrollover() (picologging.handlers.rotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.RotatingFileHandler.shouldRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "shouldrollover() (picologging.handlers.timedrotatingfilehandler method)": [
│ │ │ │ │ +            [2, "picologging.handlers.TimedRotatingFileHandler.shouldRollover", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "sockethandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.SocketHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "stack_info (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.stack_info", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "start() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.start", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "stop() (picologging.handlers.queuelistener method)": [
│ │ │ │ │ +            [2, "picologging.handlers.QueueListener.stop", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "stream (picologging.streamhandler attribute)": [
│ │ │ │ │ +            [5, "picologging.StreamHandler.stream", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "streamhandler (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.StreamHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "strformatstyle (class in picologging)": [
│ │ │ │ │ +            [5, "picologging.StrFormatStyle", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "thread (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.thread", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "threadname (picologging.logrecord attribute)": [
│ │ │ │ │ +            [5, "picologging.LogRecord.threadName", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "timedrotatingfilehandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.TimedRotatingFileHandler", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "usestime() (picologging.formatstyle method)": [
│ │ │ │ │ +            [5, "picologging.FormatStyle.usesTime", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "usestime() (picologging.formatter method)": [
│ │ │ │ │ +            [5, "picologging.Formatter.usesTime", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "validate() (picologging.formatstyle method)": [
│ │ │ │ │ +            [5, "picologging.FormatStyle.validate", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "warn() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.warn", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "warning() (in module picologging)": [
│ │ │ │ │ +            [5, "picologging.warning", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "warning() (picologging.logger method)": [
│ │ │ │ │ +            [5, "picologging.Logger.warning", false]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "watchedfilehandler (class in picologging.handlers)": [
│ │ │ │ │ +            [2, "picologging.handlers.WatchedFileHandler", false]
│ │ │ │ │ +        ]
│ │ │ │ │ +    },
│ │ │ │ │ +    "objects": {
│ │ │ │ │ +        "": [
│ │ │ │ │ +            [5, 0, 0, "-", "picologging"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging": [
│ │ │ │ │ +            [5, 1, 1, "", "FileHandler"],
│ │ │ │ │ +            [5, 1, 1, "", "Filterer"],
│ │ │ │ │ +            [5, 1, 1, "", "FormatStyle"],
│ │ │ │ │ +            [5, 1, 1, "", "Formatter"],
│ │ │ │ │ +            [5, 1, 1, "", "Handler"],
│ │ │ │ │ +            [5, 1, 1, "", "LogRecord"],
│ │ │ │ │ +            [5, 1, 1, "", "Logger"],
│ │ │ │ │ +            [5, 1, 1, "", "Manager"],
│ │ │ │ │ +            [5, 1, 1, "", "NullHandler"],
│ │ │ │ │ +            [5, 1, 1, "", "PercentStyle"],
│ │ │ │ │ +            [5, 1, 1, "", "StrFormatStyle"],
│ │ │ │ │ +            [5, 1, 1, "", "StreamHandler"],
│ │ │ │ │ +            [5, 5, 1, "", "basicConfig"],
│ │ │ │ │ +            [5, 5, 1, "", "critical"],
│ │ │ │ │ +            [5, 5, 1, "", "debug"],
│ │ │ │ │ +            [5, 5, 1, "", "disable"],
│ │ │ │ │ +            [5, 5, 1, "", "error"],
│ │ │ │ │ +            [5, 5, 1, "", "exception"],
│ │ │ │ │ +            [5, 5, 1, "", "fatal"],
│ │ │ │ │ +            [5, 5, 1, "", "getLogger"],
│ │ │ │ │ +            [5, 5, 1, "", "info"],
│ │ │ │ │ +            [5, 5, 1, "", "log"],
│ │ │ │ │ +            [5, 5, 1, "", "makeLogRecord"],
│ │ │ │ │ +            [5, 5, 1, "", "warn"],
│ │ │ │ │ +            [5, 5, 1, "", "warning"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.FileHandler": [
│ │ │ │ │ +            [5, 2, 1, "", "close"],
│ │ │ │ │ +            [5, 2, 1, "", "emit"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.Filterer": [
│ │ │ │ │ +            [5, 2, 1, "", "addFilter"],
│ │ │ │ │ +            [5, 2, 1, "", "filter"],
│ │ │ │ │ +            [5, 3, 1, "", "filters"],
│ │ │ │ │ +            [5, 2, 1, "", "removeFilter"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.FormatStyle": [
│ │ │ │ │ +            [5, 2, 1, "", "format"],
│ │ │ │ │ +            [5, 2, 1, "", "usesTime"],
│ │ │ │ │ +            [5, 2, 1, "", "validate"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.Formatter": [
│ │ │ │ │ +            [5, 3, 1, "", "datefmt"],
│ │ │ │ │ +            [5, 2, 1, "", "format"],
│ │ │ │ │ +            [5, 2, 1, "", "formatException"],
│ │ │ │ │ +            [5, 2, 1, "", "formatMessage"],
│ │ │ │ │ +            [5, 2, 1, "", "formatStack"],
│ │ │ │ │ +            [5, 2, 1, "", "usesTime"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.Handler": [
│ │ │ │ │ +            [5, 2, 1, "", "acquire"],
│ │ │ │ │ +            [5, 2, 1, "", "close"],
│ │ │ │ │ +            [5, 2, 1, "", "createLock"],
│ │ │ │ │ +            [5, 2, 1, "", "emit"],
│ │ │ │ │ +            [5, 2, 1, "", "flush"],
│ │ │ │ │ +            [5, 2, 1, "", "format"],
│ │ │ │ │ +            [5, 3, 1, "", "formatter"],
│ │ │ │ │ +            [5, 2, 1, "", "get_name"],
│ │ │ │ │ +            [5, 2, 1, "", "handle"],
│ │ │ │ │ +            [5, 2, 1, "", "handleError"],
│ │ │ │ │ +            [5, 3, 1, "", "level"],
│ │ │ │ │ +            [5, 3, 1, "", "name"],
│ │ │ │ │ +            [5, 2, 1, "", "release"],
│ │ │ │ │ +            [5, 2, 1, "", "setFormatter"],
│ │ │ │ │ +            [5, 2, 1, "", "setLevel"],
│ │ │ │ │ +            [5, 2, 1, "", "set_name"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.LogRecord": [
│ │ │ │ │ +            [5, 3, 1, "", "args"],
│ │ │ │ │ +            [5, 3, 1, "", "asctime"],
│ │ │ │ │ +            [5, 3, 1, "", "created"],
│ │ │ │ │ +            [5, 3, 1, "", "exc_info"],
│ │ │ │ │ +            [5, 3, 1, "", "exc_text"],
│ │ │ │ │ +            [5, 3, 1, "", "filename"],
│ │ │ │ │ +            [5, 3, 1, "", "funcName"],
│ │ │ │ │ +            [5, 2, 1, "", "getMessage"],
│ │ │ │ │ +            [5, 3, 1, "", "levelname"],
│ │ │ │ │ +            [5, 3, 1, "", "levelno"],
│ │ │ │ │ +            [5, 3, 1, "", "lineno"],
│ │ │ │ │ +            [5, 3, 1, "", "message"],
│ │ │ │ │ +            [5, 3, 1, "", "module"],
│ │ │ │ │ +            [5, 3, 1, "", "msecs"],
│ │ │ │ │ +            [5, 3, 1, "", "msg"],
│ │ │ │ │ +            [5, 3, 1, "", "name"],
│ │ │ │ │ +            [5, 3, 1, "", "pathname"],
│ │ │ │ │ +            [5, 3, 1, "", "process"],
│ │ │ │ │ +            [5, 3, 1, "", "processName"],
│ │ │ │ │ +            [5, 3, 1, "", "relativeCreated"],
│ │ │ │ │ +            [5, 3, 1, "", "stack_info"],
│ │ │ │ │ +            [5, 3, 1, "", "thread"],
│ │ │ │ │ +            [5, 3, 1, "", "threadName"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.Logger": [
│ │ │ │ │ +            [5, 2, 1, "", "addHandler"],
│ │ │ │ │ +            [5, 2, 1, "", "critical"],
│ │ │ │ │ +            [5, 2, 1, "", "debug"],
│ │ │ │ │ +            [5, 3, 1, "", "disabled"],
│ │ │ │ │ +            [5, 2, 1, "", "error"],
│ │ │ │ │ +            [5, 2, 1, "", "exception"],
│ │ │ │ │ +            [5, 2, 1, "", "fatal"],
│ │ │ │ │ +            [5, 2, 1, "", "getEffectiveLevel"],
│ │ │ │ │ +            [5, 3, 1, "", "handlers"],
│ │ │ │ │ +            [5, 2, 1, "", "info"],
│ │ │ │ │ +            [5, 2, 1, "", "isEnabledFor"],
│ │ │ │ │ +            [5, 3, 1, "", "level"],
│ │ │ │ │ +            [5, 2, 1, "", "log"],
│ │ │ │ │ +            [5, 3, 1, "", "manager"],
│ │ │ │ │ +            [5, 3, 1, "", "name"],
│ │ │ │ │ +            [5, 3, 1, "", "parent"],
│ │ │ │ │ +            [5, 3, 1, "", "propagate"],
│ │ │ │ │ +            [5, 2, 1, "", "removeHandler"],
│ │ │ │ │ +            [5, 2, 1, "", "setLevel"],
│ │ │ │ │ +            [5, 2, 1, "", "warning"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.Manager": [
│ │ │ │ │ +            [5, 4, 1, "", "disable"],
│ │ │ │ │ +            [5, 2, 1, "", "getLogger"],
│ │ │ │ │ +            [5, 2, 1, "", "setLogRecordFactory"],
│ │ │ │ │ +            [5, 2, 1, "", "setLoggerClass"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.NullHandler": [
│ │ │ │ │ +            [5, 2, 1, "", "emit"],
│ │ │ │ │ +            [5, 2, 1, "", "handle"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.StreamHandler": [
│ │ │ │ │ +            [5, 2, 1, "", "emit"],
│ │ │ │ │ +            [5, 2, 1, "", "flush"],
│ │ │ │ │ +            [5, 2, 1, "", "setStream"],
│ │ │ │ │ +            [5, 3, 1, "", "stream"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers": [
│ │ │ │ │ +            [2, 1, 1, "", "BaseRotatingHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "BufferingHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "MemoryHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "QueueHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "QueueListener"],
│ │ │ │ │ +            [2, 1, 1, "", "RotatingFileHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "SocketHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "TimedRotatingFileHandler"],
│ │ │ │ │ +            [2, 1, 1, "", "WatchedFileHandler"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.BaseRotatingHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "doRollover"],
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "rotate"],
│ │ │ │ │ +            [2, 2, 1, "", "rotation_filename"],
│ │ │ │ │ +            [2, 2, 1, "", "shouldRollover"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.BufferingHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "close"],
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "flush"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.MemoryHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "close"],
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "flush"],
│ │ │ │ │ +            [2, 2, 1, "", "setTarget"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.QueueHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "enqueue"],
│ │ │ │ │ +            [2, 2, 1, "", "prepare"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.QueueListener": [
│ │ │ │ │ +            [2, 2, 1, "", "dequeue"],
│ │ │ │ │ +            [2, 2, 1, "", "enqueue_sentinel"],
│ │ │ │ │ +            [2, 2, 1, "", "handle"],
│ │ │ │ │ +            [2, 2, 1, "", "prepare"],
│ │ │ │ │ +            [2, 2, 1, "", "start"],
│ │ │ │ │ +            [2, 2, 1, "", "stop"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.RotatingFileHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "doRollover"],
│ │ │ │ │ +            [2, 2, 1, "", "shouldRollover"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.SocketHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "close"],
│ │ │ │ │ +            [2, 2, 1, "", "createSocket"],
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "handleError"],
│ │ │ │ │ +            [2, 2, 1, "", "makePickle"],
│ │ │ │ │ +            [2, 2, 1, "", "makeSocket"],
│ │ │ │ │ +            [2, 2, 1, "", "send"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.TimedRotatingFileHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "computeRollover"],
│ │ │ │ │ +            [2, 2, 1, "", "doRollover"],
│ │ │ │ │ +            [2, 2, 1, "", "getFilesToDelete"],
│ │ │ │ │ +            [2, 2, 1, "", "shouldRollover"]
│ │ │ │ │ +        ],
│ │ │ │ │ +        "picologging.handlers.WatchedFileHandler": [
│ │ │ │ │ +            [2, 2, 1, "", "emit"],
│ │ │ │ │ +            [2, 2, 1, "", "reopenIfNeeded"]
│ │ │ │ │ +        ]
│ │ │ │ │ +    },
│ │ │ │ │ +    "objnames": {
│ │ │ │ │ +        "0": ["py", "module", "Python module"],
│ │ │ │ │ +        "1": ["py", "class", "Python class"],
│ │ │ │ │ +        "2": ["py", "method", "Python method"],
│ │ │ │ │ +        "3": ["py", "attribute", "Python attribute"],
│ │ │ │ │ +        "4": ["py", "property", "Python property"],
│ │ │ │ │ +        "5": ["py", "function", "Python function"]
│ │ │ │ │ +    },
│ │ │ │ │ +    "objtypes": {
│ │ │ │ │ +        "0": "py:module",
│ │ │ │ │ +        "1": "py:class",
│ │ │ │ │ +        "2": "py:method",
│ │ │ │ │ +        "3": "py:attribute",
│ │ │ │ │ +        "4": "py:property",
│ │ │ │ │ +        "5": "py:function"
│ │ │ │ │ +    },
│ │ │ │ │      "terms": {
│ │ │ │ │ -        "": [1, 3],
│ │ │ │ │ +        "": [1, 2, 3, 5],
│ │ │ │ │ +        "0": 2,
│ │ │ │ │ +        "1": 2,
│ │ │ │ │          "10x": 3,
│ │ │ │ │          "11": 3,
│ │ │ │ │ +        "2": [2, 5],
│ │ │ │ │          "2001": 3,
│ │ │ │ │          "2019": 3,
│ │ │ │ │ -        "3": 3,
│ │ │ │ │ +        "3": [2, 3, 5],
│ │ │ │ │          "4": 3,
│ │ │ │ │ -        "A": 3,
│ │ │ │ │ +        "40": 2,
│ │ │ │ │ +        "50": 5,
│ │ │ │ │ +        "8": 5,
│ │ │ │ │ +        "9": 5,
│ │ │ │ │ +        "A": [2, 3, 5],
│ │ │ │ │          "By": 0,
│ │ │ │ │ -        "For": 3,
│ │ │ │ │ -        "It": 4,
│ │ │ │ │ -        "The": [1, 2, 3, 4],
│ │ │ │ │ +        "For": [2, 3],
│ │ │ │ │ +        "If": [2, 5],
│ │ │ │ │ +        "It": [4, 5],
│ │ │ │ │ +        "No": 5,
│ │ │ │ │ +        "Not": 2,
│ │ │ │ │ +        "The": [1, 2, 3, 4, 5],
│ │ │ │ │          "Then": 0,
│ │ │ │ │ -        "There": [1, 3, 4],
│ │ │ │ │ -        "To": 0,
│ │ │ │ │ -        "across": 3,
│ │ │ │ │ +        "There": [1, 3, 4, 5],
│ │ │ │ │ +        "To": [0, 2],
│ │ │ │ │ +        "__dict__": 2,
│ │ │ │ │ +        "__init__": 2,
│ │ │ │ │ +        "about": 5,
│ │ │ │ │ +        "acquir": [2, 5],
│ │ │ │ │ +        "across": [2, 3],
│ │ │ │ │          "actual": 3,
│ │ │ │ │ -        "addhandl": 2,
│ │ │ │ │ +        "ad": [2, 5],
│ │ │ │ │ +        "add": 5,
│ │ │ │ │ +        "addfilt": 5,
│ │ │ │ │ +        "addhandl": [2, 5],
│ │ │ │ │          "addit": 3,
│ │ │ │ │          "adopt": 3,
│ │ │ │ │          "agre": 3,
│ │ │ │ │          "agreement": 3,
│ │ │ │ │ -        "all": 3,
│ │ │ │ │ -        "alreadi": 3,
│ │ │ │ │ -        "alwai": 4,
│ │ │ │ │ -        "an": [1, 4],
│ │ │ │ │ -        "ani": [3, 4],
│ │ │ │ │ +        "all": [2, 3, 5],
│ │ │ │ │ +        "allow": 2,
│ │ │ │ │ +        "alreadi": [3, 5],
│ │ │ │ │ +        "also": 2,
│ │ │ │ │ +        "alter": 5,
│ │ │ │ │ +        "alwai": [2, 4],
│ │ │ │ │ +        "an": [1, 2, 4, 5],
│ │ │ │ │ +        "ani": [2, 3, 4, 5],
│ │ │ │ │          "api": 3,
│ │ │ │ │ -        "applic": [0, 3],
│ │ │ │ │ -        "appropri": 3,
│ │ │ │ │ -        "ar": [1, 3, 4],
│ │ │ │ │ -        "argument": [1, 3],
│ │ │ │ │ +        "append": 2,
│ │ │ │ │ +        "applic": [0, 2, 3],
│ │ │ │ │ +        "appropri": [2, 3],
│ │ │ │ │ +        "ar": [1, 2, 3, 4, 5],
│ │ │ │ │ +        "arg": [2, 5],
│ │ │ │ │ +        "argument": [1, 2, 3, 5],
│ │ │ │ │ +        "asctim": 5,
│ │ │ │ │ +        "ask": 2,
│ │ │ │ │          "assert": 2,
│ │ │ │ │ +        "assign": 5,
│ │ │ │ │ +        "attach": 5,
│ │ │ │ │ +        "attempt": 2,
│ │ │ │ │ +        "attim": 2,
│ │ │ │ │ +        "attribut": [2, 5],
│ │ │ │ │          "author": 3,
│ │ │ │ │          "automat": 3,
│ │ │ │ │ -        "basicconfig": [1, 3],
│ │ │ │ │ -        "becaus": 4,
│ │ │ │ │ +        "avoid": [2, 5],
│ │ │ │ │ +        "b": 5,
│ │ │ │ │ +        "background": 2,
│ │ │ │ │ +        "backoff": 2,
│ │ │ │ │ +        "backslashreplac": 5,
│ │ │ │ │ +        "backup": 2,
│ │ │ │ │ +        "backupcount": 2,
│ │ │ │ │ +        "baserotatinghandl": 2,
│ │ │ │ │ +        "basic": [2, 5],
│ │ │ │ │ +        "basic_format": 5,
│ │ │ │ │ +        "basicconfig": [1, 3, 5],
│ │ │ │ │ +        "becaus": [2, 4, 5],
│ │ │ │ │ +        "been": [2, 5],
│ │ │ │ │ +        "befor": [2, 5],
│ │ │ │ │ +        "behaviour": [2, 5],
│ │ │ │ │ +        "being": 2,
│ │ │ │ │ +        "below": 5,
│ │ │ │ │          "beta": 3,
│ │ │ │ │ +        "between": 2,
│ │ │ │ │          "beyond": 1,
│ │ │ │ │ +        "binari": 2,
│ │ │ │ │          "block": 2,
│ │ │ │ │          "bot": 3,
│ │ │ │ │ +        "both": 5,
│ │ │ │ │          "brand": 3,
│ │ │ │ │ +        "bufferinghandl": 2,
│ │ │ │ │          "built": 1,
│ │ │ │ │ -        "c": 3,
│ │ │ │ │ -        "call": [0, 1],
│ │ │ │ │ -        "can": [1, 2],
│ │ │ │ │ +        "busi": 2,
│ │ │ │ │ +        "c": [3, 5],
│ │ │ │ │ +        "call": [0, 1, 2, 5],
│ │ │ │ │ +        "callabl": 2,
│ │ │ │ │ +        "can": [1, 2, 5],
│ │ │ │ │ +        "cannot": 2,
│ │ │ │ │ +        "capac": 2,
│ │ │ │ │          "captur": 4,
│ │ │ │ │ -        "caus": 3,
│ │ │ │ │ -        "chang": 0,
│ │ │ │ │ -        "check": [3, 4],
│ │ │ │ │ +        "carri": 5,
│ │ │ │ │ +        "case": 2,
│ │ │ │ │ +        "cater": 2,
│ │ │ │ │ +        "caus": [2, 3, 5],
│ │ │ │ │ +        "centralis": 2,
│ │ │ │ │ +        "certain": 2,
│ │ │ │ │ +        "chain": 2,
│ │ │ │ │ +        "chang": [0, 2, 5],
│ │ │ │ │ +        "channel": 5,
│ │ │ │ │ +        "check": [2, 3, 4, 5],
│ │ │ │ │ +        "circumst": 5,
│ │ │ │ │ +        "cl": 5,
│ │ │ │ │          "cla": 3,
│ │ │ │ │ -        "class": [0, 1],
│ │ │ │ │ -        "code": 3,
│ │ │ │ │ +        "class": [0, 1, 2, 5],
│ │ │ │ │ +        "clear": 2,
│ │ │ │ │ +        "close": [2, 5],
│ │ │ │ │ +        "code": [2, 3, 5],
│ │ │ │ │          "collect": 1,
│ │ │ │ │          "com": 3,
│ │ │ │ │          "combin": 2,
│ │ │ │ │          "comment": 3,
│ │ │ │ │ +        "compar": 2,
│ │ │ │ │          "compat": 3,
│ │ │ │ │          "complet": 0,
│ │ │ │ │          "compon": 3,
│ │ │ │ │ +        "computerollov": 2,
│ │ │ │ │          "conduct": 3,
│ │ │ │ │          "config": 0,
│ │ │ │ │ -        "configur": 0,
│ │ │ │ │ +        "configur": [0, 2, 5],
│ │ │ │ │          "confus": 3,
│ │ │ │ │ +        "connect": [2, 5],
│ │ │ │ │ +        "consol": 5,
│ │ │ │ │ +        "constructor": 5,
│ │ │ │ │          "contact": 3,
│ │ │ │ │ -        "contain": 3,
│ │ │ │ │ +        "contain": [3, 5],
│ │ │ │ │ +        "content": 2,
│ │ │ │ │          "contributor": 3,
│ │ │ │ │ +        "conveni": 5,
│ │ │ │ │ +        "convert": [2, 5],
│ │ │ │ │ +        "copi": 2,
│ │ │ │ │          "copyright": 3,
│ │ │ │ │ +        "could": 5,
│ │ │ │ │ +        "count": 2,
│ │ │ │ │          "cpython": 3,
│ │ │ │ │ -        "critic": 1,
│ │ │ │ │ -        "custom": 4,
│ │ │ │ │ -        "debug": [1, 2],
│ │ │ │ │ +        "creat": [2, 5],
│ │ │ │ │ +        "createlock": [2, 5],
│ │ │ │ │ +        "createsocket": 2,
│ │ │ │ │ +        "creation": 5,
│ │ │ │ │ +        "criteria": 2,
│ │ │ │ │ +        "critic": [1, 5],
│ │ │ │ │ +        "current": 2,
│ │ │ │ │ +        "current_tim": 2,
│ │ │ │ │ +        "custom": [2, 4],
│ │ │ │ │ +        "date": [2, 5],
│ │ │ │ │ +        "datefmt": 5,
│ │ │ │ │ +        "debug": [1, 2, 5],
│ │ │ │ │          "declar": 3,
│ │ │ │ │          "decor": 3,
│ │ │ │ │ -        "default": [0, 1, 4],
│ │ │ │ │ -        "defin": 0,
│ │ │ │ │ +        "default": [0, 1, 2, 4, 5],
│ │ │ │ │ +        "default_nam": 2,
│ │ │ │ │ +        "defin": [0, 2, 5],
│ │ │ │ │ +        "delai": [2, 5],
│ │ │ │ │ +        "delet": 2,
│ │ │ │ │ +        "dequeu": 2,
│ │ │ │ │ +        "describ": 2,
│ │ │ │ │          "design": 3,
│ │ │ │ │ +        "dest": 2,
│ │ │ │ │ +        "destin": 2,
│ │ │ │ │          "detail": 3,
│ │ │ │ │ -        "determin": 3,
│ │ │ │ │ +        "determin": [2, 3],
│ │ │ │ │ +        "develop": 5,
│ │ │ │ │ +        "devic": 2,
│ │ │ │ │ +        "dict": [2, 5],
│ │ │ │ │          "dictconfig": [0, 4],
│ │ │ │ │ -        "differ": 1,
│ │ │ │ │ -        "directli": 1,
│ │ │ │ │ -        "do": 3,
│ │ │ │ │ -        "doe": 4,
│ │ │ │ │ -        "drop": 3,
│ │ │ │ │ -        "e": [0, 3],
│ │ │ │ │ +        "dictionari": [2, 5],
│ │ │ │ │ +        "differ": [1, 2],
│ │ │ │ │ +        "directli": [1, 2],
│ │ │ │ │ +        "disabl": 5,
│ │ │ │ │ +        "disk": 5,
│ │ │ │ │ +        "do": [2, 3, 5],
│ │ │ │ │ +        "doe": [2, 4, 5],
│ │ │ │ │ +        "doesn": 5,
│ │ │ │ │ +        "don": [2, 5],
│ │ │ │ │ +        "done": 2,
│ │ │ │ │ +        "dorollov": 2,
│ │ │ │ │ +        "dot": 5,
│ │ │ │ │ +        "drop": [2, 3],
│ │ │ │ │ +        "dure": [2, 5],
│ │ │ │ │ +        "e": [0, 2, 3, 5],
│ │ │ │ │ +        "each": 2,
│ │ │ │ │ +        "earlier": 2,
│ │ │ │ │ +        "effect": 5,
│ │ │ │ │ +        "emit": [2, 5],
│ │ │ │ │          "emittednohandlerwarn": 4,
│ │ │ │ │ -        "error": 1,
│ │ │ │ │ +        "empti": 2,
│ │ │ │ │ +        "enabl": 5,
│ │ │ │ │ +        "encod": [2, 5],
│ │ │ │ │ +        "end": 2,
│ │ │ │ │ +        "enqueu": 2,
│ │ │ │ │ +        "enqueue_sentinel": 2,
│ │ │ │ │ +        "ensur": [2, 5],
│ │ │ │ │ +        "error": [1, 2, 5],
│ │ │ │ │ +        "establish": 2,
│ │ │ │ │ +        "event": [2, 5],
│ │ │ │ │          "exampl": [0, 2],
│ │ │ │ │ -        "except": 1,
│ │ │ │ │ +        "exc_info": [2, 5],
│ │ │ │ │ +        "exc_text": [2, 5],
│ │ │ │ │ +        "exce": 2,
│ │ │ │ │ +        "except": [1, 5],
│ │ │ │ │ +        "exclus": 2,
│ │ │ │ │          "execut": 0,
│ │ │ │ │ -        "factori": 4,
│ │ │ │ │ +        "exist": 5,
│ │ │ │ │ +        "exit": 2,
│ │ │ │ │ +        "expect": 2,
│ │ │ │ │ +        "exponenti": 2,
│ │ │ │ │ +        "factori": [2, 4, 5],
│ │ │ │ │ +        "fals": [2, 5],
│ │ │ │ │          "faq": 3,
│ │ │ │ │          "faster": 3,
│ │ │ │ │ +        "fatal": 5,
│ │ │ │ │          "featur": 3,
│ │ │ │ │ -        "file": 0,
│ │ │ │ │ -        "filehandl": 1,
│ │ │ │ │ +        "file": [0, 5],
│ │ │ │ │ +        "filehandl": [1, 5],
│ │ │ │ │ +        "filemod": 5,
│ │ │ │ │ +        "filenam": [2, 5],
│ │ │ │ │ +        "filter": 5,
│ │ │ │ │ +        "first": 2,
│ │ │ │ │          "flag": 4,
│ │ │ │ │ +        "flush": [2, 5],
│ │ │ │ │ +        "flushlevel": 2,
│ │ │ │ │ +        "flushonclos": 2,
│ │ │ │ │          "follow": 3,
│ │ │ │ │ -        "format": 4,
│ │ │ │ │ -        "formatstack": 4,
│ │ │ │ │ -        "formatt": [1, 3],
│ │ │ │ │ -        "from": [0, 3],
│ │ │ │ │ -        "function": 1,
│ │ │ │ │ -        "g": [0, 3],
│ │ │ │ │ -        "getlogg": 3,
│ │ │ │ │ +        "forc": 5,
│ │ │ │ │ +        "format": [2, 4, 5],
│ │ │ │ │ +        "formatexcept": 5,
│ │ │ │ │ +        "formatmessag": 5,
│ │ │ │ │ +        "formatstack": [4, 5],
│ │ │ │ │ +        "formatstyl": 5,
│ │ │ │ │ +        "formatt": [1, 2, 3, 5],
│ │ │ │ │ +        "found": 5,
│ │ │ │ │ +        "from": [0, 2, 3, 5],
│ │ │ │ │ +        "full": 2,
│ │ │ │ │ +        "funcnam": 5,
│ │ │ │ │ +        "function": [1, 2, 5],
│ │ │ │ │ +        "furthermor": 2,
│ │ │ │ │ +        "g": [0, 2, 3, 5],
│ │ │ │ │ +        "get": [2, 5],
│ │ │ │ │ +        "get_nam": [2, 5],
│ │ │ │ │ +        "geteffectivelevel": 5,
│ │ │ │ │ +        "getfilestodelet": 2,
│ │ │ │ │ +        "getlogg": [3, 5],
│ │ │ │ │ +        "getmessag": 5,
│ │ │ │ │          "getvalu": 2,
│ │ │ │ │ +        "glob": 2,
│ │ │ │ │          "global": 4,
│ │ │ │ │          "grant": 3,
│ │ │ │ │ +        "greater": 2,
│ │ │ │ │          "guidelin": 3,
│ │ │ │ │ -        "ha": [0, 1, 3],
│ │ │ │ │ -        "handler": 0,
│ │ │ │ │ -        "have": 3,
│ │ │ │ │ +        "h": 2,
│ │ │ │ │ +        "ha": [0, 1, 2, 3, 5],
│ │ │ │ │ +        "handl": [2, 5],
│ │ │ │ │ +        "handleerror": [2, 5],
│ │ │ │ │ +        "handler": [0, 5],
│ │ │ │ │ +        "happen": 2,
│ │ │ │ │ +        "have": [2, 3, 5],
│ │ │ │ │          "here": 0,
│ │ │ │ │ +        "hierarch": 5,
│ │ │ │ │ +        "hierarchi": 5,
│ │ │ │ │          "high": 3,
│ │ │ │ │ +        "hold": 5,
│ │ │ │ │ +        "host": 2,
│ │ │ │ │ +        "howev": [2, 5],
│ │ │ │ │          "http": 3,
│ │ │ │ │ -        "i": [0, 1, 3, 4],
│ │ │ │ │ +        "i": [0, 1, 2, 3, 4, 5],
│ │ │ │ │          "id": 4,
│ │ │ │ │ -        "implement": 1,
│ │ │ │ │ +        "ignor": 5,
│ │ │ │ │ +        "implement": [1, 2],
│ │ │ │ │          "impli": 3,
│ │ │ │ │ -        "import": [0, 1, 3],
│ │ │ │ │ +        "import": [0, 1, 3, 5],
│ │ │ │ │ +        "incompat": 5,
│ │ │ │ │          "incomplet": 3,
│ │ │ │ │          "increment": 4,
│ │ │ │ │ -        "info": [1, 3],
│ │ │ │ │ -        "inform": 3,
│ │ │ │ │ -        "initi": 0,
│ │ │ │ │ -        "instead": 3,
│ │ │ │ │ +        "info": [1, 3, 5],
│ │ │ │ │ +        "inform": [3, 5],
│ │ │ │ │ +        "inherit": 2,
│ │ │ │ │ +        "initi": [0, 5],
│ │ │ │ │ +        "inod": 2,
│ │ │ │ │ +        "instal": 2,
│ │ │ │ │ +        "instanc": [2, 5],
│ │ │ │ │ +        "instanti": [2, 5],
│ │ │ │ │ +        "instead": [2, 3, 5],
│ │ │ │ │          "instruct": 3,
│ │ │ │ │ +        "intact": 2,
│ │ │ │ │ +        "integ": 5,
│ │ │ │ │ +        "intend": [2, 5],
│ │ │ │ │ +        "interfac": [2, 5],
│ │ │ │ │ +        "intern": 2,
│ │ │ │ │ +        "interv": 2,
│ │ │ │ │          "io": 2,
│ │ │ │ │ +        "isenabledfor": 5,
│ │ │ │ │ +        "isn": 2,
│ │ │ │ │          "issu": 3,
│ │ │ │ │ -        "keyword": 1,
│ │ │ │ │ -        "level": [1, 4],
│ │ │ │ │ -        "levelnam": 1,
│ │ │ │ │ -        "librari": [0, 3, 4],
│ │ │ │ │ +        "item": 2,
│ │ │ │ │ +        "iter": 5,
│ │ │ │ │ +        "its": [2, 5],
│ │ │ │ │ +        "json": 2,
│ │ │ │ │ +        "just": [2, 5],
│ │ │ │ │ +        "kept": 2,
│ │ │ │ │ +        "keyword": [1, 5],
│ │ │ │ │ +        "klass": 5,
│ │ │ │ │ +        "kwarg": 5,
│ │ │ │ │ +        "last": 2,
│ │ │ │ │ +        "leav": 2,
│ │ │ │ │ +        "left": 2,
│ │ │ │ │ +        "length": 2,
│ │ │ │ │ +        "level": [1, 2, 4, 5],
│ │ │ │ │ +        "levelnam": [1, 5],
│ │ │ │ │ +        "levelno": 5,
│ │ │ │ │ +        "librari": [0, 3, 4, 5],
│ │ │ │ │          "licens": 3,
│ │ │ │ │ -        "log": [0, 2, 3, 4],
│ │ │ │ │ -        "logger": [0, 2, 3],
│ │ │ │ │ +        "like": 2,
│ │ │ │ │ +        "limit": 2,
│ │ │ │ │ +        "line": 5,
│ │ │ │ │ +        "lineno": 5,
│ │ │ │ │ +        "list": [2, 5],
│ │ │ │ │ +        "lock": [2, 5],
│ │ │ │ │ +        "log": [0, 2, 3, 4, 5],
│ │ │ │ │ +        "logger": [0, 2, 3, 5],
│ │ │ │ │          "logging_config": 0,
│ │ │ │ │          "logmultiprocess": 4,
│ │ │ │ │          "logo": 3,
│ │ │ │ │          "logprocess": 4,
│ │ │ │ │ +        "logrecord": [2, 5],
│ │ │ │ │ +        "logrot": 2,
│ │ │ │ │          "logthread": 4,
│ │ │ │ │ -        "mai": 3,
│ │ │ │ │ -        "messag": [1, 3],
│ │ │ │ │ -        "method": 4,
│ │ │ │ │ +        "loop": 2,
│ │ │ │ │ +        "lose": 2,
│ │ │ │ │ +        "lost": 2,
│ │ │ │ │ +        "made": 2,
│ │ │ │ │ +        "mai": [2, 3, 5],
│ │ │ │ │ +        "make": 5,
│ │ │ │ │ +        "makelogrecord": [2, 5],
│ │ │ │ │ +        "makepickl": 2,
│ │ │ │ │ +        "makesocket": 2,
│ │ │ │ │ +        "manag": 5,
│ │ │ │ │ +        "manipul": 2,
│ │ │ │ │ +        "marshal": 2,
│ │ │ │ │ +        "match": 2,
│ │ │ │ │ +        "max": 2,
│ │ │ │ │ +        "maxbyt": 2,
│ │ │ │ │ +        "mean": 2,
│ │ │ │ │ +        "meant": 2,
│ │ │ │ │ +        "memoryhandl": 2,
│ │ │ │ │ +        "merg": 2,
│ │ │ │ │ +        "messag": [1, 2, 3, 5],
│ │ │ │ │ +        "met": 2,
│ │ │ │ │ +        "method": [2, 4, 5],
│ │ │ │ │          "microsoft": 3,
│ │ │ │ │ -        "modifi": 3,
│ │ │ │ │ -        "modul": [0, 1, 3],
│ │ │ │ │ -        "more": 3,
│ │ │ │ │ -        "most": [1, 3],
│ │ │ │ │ +        "might": [2, 5],
│ │ │ │ │ +        "millisecond": 5,
│ │ │ │ │ +        "mode": [2, 5],
│ │ │ │ │ +        "modifi": [2, 3],
│ │ │ │ │ +        "modul": [0, 1, 2, 3, 5],
│ │ │ │ │ +        "monitor": 2,
│ │ │ │ │ +        "more": [2, 3],
│ │ │ │ │ +        "most": [1, 2, 3],
│ │ │ │ │ +        "move": 2,
│ │ │ │ │ +        "msec": 5,
│ │ │ │ │ +        "msg": [2, 5],
│ │ │ │ │ +        "multi": 2,
│ │ │ │ │ +        "multiprocess": 2,
│ │ │ │ │          "must": 3,
│ │ │ │ │          "n": 2,
│ │ │ │ │ -        "name": 4,
│ │ │ │ │ -        "need": [0, 3],
│ │ │ │ │ +        "name": [2, 4, 5],
│ │ │ │ │ +        "namer": 2,
│ │ │ │ │ +        "necessari": 5,
│ │ │ │ │ +        "need": [0, 2, 3, 5],
│ │ │ │ │ +        "network": 2,
│ │ │ │ │ +        "new": [2, 5],
│ │ │ │ │ +        "newsyslog": 2,
│ │ │ │ │ +        "next": 2,
│ │ │ │ │          "non": 2,
│ │ │ │ │ -        "none": [0, 4],
│ │ │ │ │ -        "object": 4,
│ │ │ │ │ +        "none": [0, 2, 4, 5],
│ │ │ │ │ +        "normal": [2, 5],
│ │ │ │ │ +        "note": [2, 5],
│ │ │ │ │ +        "noth": 5,
│ │ │ │ │ +        "now": 5,
│ │ │ │ │ +        "nullhandl": 5,
│ │ │ │ │ +        "number": 5,
│ │ │ │ │ +        "object": [2, 4, 5],
│ │ │ │ │          "observ": 4,
│ │ │ │ │ +        "obtain": 2,
│ │ │ │ │ +        "occur": 2,
│ │ │ │ │ +        "off": 5,
│ │ │ │ │ +        "offer": 2,
│ │ │ │ │ +        "old": 2,
│ │ │ │ │ +        "oldest": 2,
│ │ │ │ │          "onc": 3,
│ │ │ │ │ +        "one": [2, 5],
│ │ │ │ │ +        "ones": 2,
│ │ │ │ │          "onli": 3,
│ │ │ │ │ -        "open": 3,
│ │ │ │ │ +        "open": [2, 3, 5],
│ │ │ │ │          "opencod": 3,
│ │ │ │ │          "opensourc": 3,
│ │ │ │ │ -        "option": 4,
│ │ │ │ │ -        "other": 4,
│ │ │ │ │ +        "oper": 2,
│ │ │ │ │ +        "option": [2, 4, 5],
│ │ │ │ │ +        "order": 2,
│ │ │ │ │ +        "origin": 2,
│ │ │ │ │ +        "other": [4, 5],
│ │ │ │ │          "our": 3,
│ │ │ │ │ -        "output": 1,
│ │ │ │ │ -        "overrid": 4,
│ │ │ │ │ +        "out": [2, 5],
│ │ │ │ │ +        "output": [1, 2, 5],
│ │ │ │ │ +        "over": [2, 5],
│ │ │ │ │ +        "overrid": [2, 4],
│ │ │ │ │ +        "overwrit": 2,
│ │ │ │ │          "own": 1,
│ │ │ │ │ -        "packag": 3,
│ │ │ │ │ +        "packag": [3, 5],
│ │ │ │ │ +        "packet": 2,
│ │ │ │ │ +        "param": 2,
│ │ │ │ │ +        "paramet": [2, 5],
│ │ │ │ │ +        "parent": [2, 5],
│ │ │ │ │          "parti": 3,
│ │ │ │ │ +        "partial": 2,
│ │ │ │ │ +        "pass": [2, 5],
│ │ │ │ │ +        "past": 2,
│ │ │ │ │          "patch": 3,
│ │ │ │ │ -        "perform": 3,
│ │ │ │ │ +        "pathnam": 5,
│ │ │ │ │ +        "peer": 2,
│ │ │ │ │ +        "percentstyl": 5,
│ │ │ │ │ +        "perform": [2, 3],
│ │ │ │ │ +        "period": 2,
│ │ │ │ │ +        "pickl": 2,
│ │ │ │ │          "picolog": [0, 1, 2, 4],
│ │ │ │ │          "pip": 3,
│ │ │ │ │ +        "place": 2,
│ │ │ │ │ +        "point": 2,
│ │ │ │ │          "polici": 3,
│ │ │ │ │ +        "port": 2,
│ │ │ │ │ +        "possibl": 5,
│ │ │ │ │          "pr": 3,
│ │ │ │ │ -        "pre": 1,
│ │ │ │ │ +        "pre": [1, 5],
│ │ │ │ │ +        "precis": 2,
│ │ │ │ │ +        "prefix": 2,
│ │ │ │ │ +        "prepar": 2,
│ │ │ │ │ +        "present": 5,
│ │ │ │ │          "prevent": 0,
│ │ │ │ │ -        "process": 4,
│ │ │ │ │ -        "processnam": 4,
│ │ │ │ │ +        "problem": 2,
│ │ │ │ │ +        "process": [2, 4, 5],
│ │ │ │ │ +        "processnam": [4, 5],
│ │ │ │ │ +        "produc": 5,
│ │ │ │ │          "product": 3,
│ │ │ │ │ +        "program": 2,
│ │ │ │ │          "project": 3,
│ │ │ │ │ -        "provid": 3,
│ │ │ │ │ +        "propag": 5,
│ │ │ │ │ +        "properti": 5,
│ │ │ │ │ +        "provid": [2, 3],
│ │ │ │ │          "psf": 3,
│ │ │ │ │          "pull": 3,
│ │ │ │ │ +        "put_nowait": 2,
│ │ │ │ │          "py": 0,
│ │ │ │ │ -        "python": [3, 4],
│ │ │ │ │ +        "python": [2, 3, 4],
│ │ │ │ │          "q": 2,
│ │ │ │ │          "question": 3,
│ │ │ │ │ +        "queu": 2,
│ │ │ │ │          "queuehandl": 2,
│ │ │ │ │          "queuelisten": 2,
│ │ │ │ │ +        "rather": 5,
│ │ │ │ │ +        "re": 2,
│ │ │ │ │ +        "reach": 2,
│ │ │ │ │ +        "readi": 2,
│ │ │ │ │          "reason": 3,
│ │ │ │ │ -        "record": 4,
│ │ │ │ │ +        "receiv": [2, 5],
│ │ │ │ │ +        "reconnect": 2,
│ │ │ │ │ +        "record": [2, 4, 5],
│ │ │ │ │          "regist": 3,
│ │ │ │ │ +        "rel": 5,
│ │ │ │ │ +        "relativecr": 5,
│ │ │ │ │ +        "releas": [2, 5],
│ │ │ │ │ +        "rememb": 5,
│ │ │ │ │ +        "remov": [2, 5],
│ │ │ │ │ +        "removefilt": 5,
│ │ │ │ │ +        "removehandl": 5,
│ │ │ │ │ +        "renam": 2,
│ │ │ │ │ +        "reopen": 2,
│ │ │ │ │ +        "reopenifneed": 2,
│ │ │ │ │          "replac": 3,
│ │ │ │ │          "repo": 3,
│ │ │ │ │          "request": 3,
│ │ │ │ │          "requir": 3,
│ │ │ │ │          "reserv": 3,
│ │ │ │ │ +        "reset": 2,
│ │ │ │ │ +        "resourc": [2, 5],
│ │ │ │ │ +        "respect_handler_level": 2,
│ │ │ │ │ +        "retri": 2,
│ │ │ │ │ +        "return": [2, 5],
│ │ │ │ │          "right": 3,
│ │ │ │ │ +        "roll": 2,
│ │ │ │ │ +        "rollov": 2,
│ │ │ │ │ +        "root": 5,
│ │ │ │ │ +        "rootnod": 5,
│ │ │ │ │ +        "rotatingfilehandl": 2,
│ │ │ │ │ +        "rotation_filenam": 2,
│ │ │ │ │          "sajip": 3,
│ │ │ │ │ -        "same": 3,
│ │ │ │ │ -        "see": 3,
│ │ │ │ │ +        "same": [2, 3],
│ │ │ │ │ +        "script": 5,
│ │ │ │ │ +        "see": [2, 3],
│ │ │ │ │ +        "seen": 2,
│ │ │ │ │ +        "send": 2,
│ │ │ │ │ +        "sent": [2, 5],
│ │ │ │ │ +        "sentinel": 2,
│ │ │ │ │ +        "separ": 5,
│ │ │ │ │          "servic": 3,
│ │ │ │ │ -        "set": 0,
│ │ │ │ │ -        "simpli": 3,
│ │ │ │ │ +        "set": [0, 2, 5],
│ │ │ │ │ +        "set_nam": [2, 5],
│ │ │ │ │ +        "setformatt": [2, 5],
│ │ │ │ │ +        "setlevel": [2, 5],
│ │ │ │ │ +        "setloggerclass": 5,
│ │ │ │ │ +        "setlogrecordfactori": 5,
│ │ │ │ │ +        "setstream": 5,
│ │ │ │ │ +        "settarget": 2,
│ │ │ │ │ +        "sever": [2, 5],
│ │ │ │ │ +        "shot": 5,
│ │ │ │ │ +        "should": [2, 5],
│ │ │ │ │ +        "shouldrollov": 2,
│ │ │ │ │ +        "signatur": 2,
│ │ │ │ │ +        "silent": 2,
│ │ │ │ │ +        "similar": 5,
│ │ │ │ │ +        "simpl": 5,
│ │ │ │ │ +        "simpli": [2, 3, 5],
│ │ │ │ │ +        "sinc": [2, 5],
│ │ │ │ │ +        "size": 2,
│ │ │ │ │          "slower": 4,
│ │ │ │ │ -        "some": [0, 3],
│ │ │ │ │ -        "sourc": 3,
│ │ │ │ │ -        "specifi": 1,
│ │ │ │ │ +        "so": 2,
│ │ │ │ │ +        "socket": 5,
│ │ │ │ │ +        "sockethandl": 2,
│ │ │ │ │ +        "some": [0, 2, 3],
│ │ │ │ │ +        "sort": 2,
│ │ │ │ │ +        "sourc": [2, 3, 5],
│ │ │ │ │ +        "specif": 2,
│ │ │ │ │ +        "specifi": [1, 2, 5],
│ │ │ │ │          "sponsorship": 3,
│ │ │ │ │ +        "st_ino": 2,
│ │ │ │ │ +        "stack": 5,
│ │ │ │ │ +        "stack_info": 5,
│ │ │ │ │ +        "stamp": 2,
│ │ │ │ │          "standard": [0, 3, 4],
│ │ │ │ │          "start": 2,
│ │ │ │ │ +        "stat": 2,
│ │ │ │ │          "statu": 3,
│ │ │ │ │ -        "stderr": 4,
│ │ │ │ │ +        "stderr": [4, 5],
│ │ │ │ │ +        "stdout": 5,
│ │ │ │ │ +        "still": 2,
│ │ │ │ │          "stop": 2,
│ │ │ │ │ -        "stream": [0, 2],
│ │ │ │ │ +        "str": 5,
│ │ │ │ │ +        "stream": [0, 2, 5],
│ │ │ │ │          "stream_handl": 2,
│ │ │ │ │ -        "streamhandl": [0, 1, 2],
│ │ │ │ │ +        "streamhandl": [0, 1, 2, 5],
│ │ │ │ │ +        "strformatstyl": 5,
│ │ │ │ │ +        "string": [2, 5],
│ │ │ │ │          "stringio": 2,
│ │ │ │ │ +        "stub": 5,
│ │ │ │ │ +        "style": 5,
│ │ │ │ │ +        "subclass": 2,
│ │ │ │ │          "subject": 3,
│ │ │ │ │          "submit": 3,
│ │ │ │ │ +        "suffix": 2,
│ │ │ │ │          "suggest": 3,
│ │ │ │ │ -        "support": [3, 4],
│ │ │ │ │ -        "sy": 4,
│ │ │ │ │ -        "system": 0,
│ │ │ │ │ +        "superclass": 5,
│ │ │ │ │ +        "suppli": 2,
│ │ │ │ │ +        "support": [2, 3, 4],
│ │ │ │ │ +        "switch": 2,
│ │ │ │ │ +        "sy": [4, 5],
│ │ │ │ │ +        "system": [0, 5],
│ │ │ │ │ +        "t": [2, 5],
│ │ │ │ │ +        "target": 2,
│ │ │ │ │ +        "templat": 5,
│ │ │ │ │ +        "termin": 2,
│ │ │ │ │          "test": 2,
│ │ │ │ │ -        "than": [3, 4],
│ │ │ │ │ -        "thi": [0, 1, 3],
│ │ │ │ │ +        "text": 5,
│ │ │ │ │ +        "than": [2, 3, 4, 5],
│ │ │ │ │ +        "thei": 2,
│ │ │ │ │ +        "them": 2,
│ │ │ │ │ +        "thi": [0, 1, 2, 3, 5],
│ │ │ │ │          "third": 3,
│ │ │ │ │          "those": [0, 3],
│ │ │ │ │ -        "thread": 4,
│ │ │ │ │ -        "threadnam": 4,
│ │ │ │ │ +        "thread": [2, 4, 5],
│ │ │ │ │ +        "threadnam": [4, 5],
│ │ │ │ │ +        "through": 2,
│ │ │ │ │ +        "thrown": 5,
│ │ │ │ │ +        "tidi": [2, 5],
│ │ │ │ │ +        "time": 5,
│ │ │ │ │ +        "timedrotatingfilehandl": 2,
│ │ │ │ │ +        "timeout": 2,
│ │ │ │ │ +        "togeth": [2, 5],
│ │ │ │ │ +        "top": 5,
│ │ │ │ │ +        "transmiss": 2,
│ │ │ │ │ +        "true": [2, 5],
│ │ │ │ │ +        "try": 2,
│ │ │ │ │ +        "tupl": 5,
│ │ │ │ │ +        "type": [2, 5],
│ │ │ │ │ +        "typic": 2,
│ │ │ │ │          "u": 3,
│ │ │ │ │ -        "under": 3,
│ │ │ │ │ +        "unchang": 2,
│ │ │ │ │ +        "under": [2, 3, 5],
│ │ │ │ │ +        "underli": 2,
│ │ │ │ │          "undocu": 4,
│ │ │ │ │ -        "us": [3, 4],
│ │ │ │ │ -        "usag": 1,
│ │ │ │ │ +        "unix": 2,
│ │ │ │ │ +        "unless": 5,
│ │ │ │ │ +        "unpickl": 2,
│ │ │ │ │ +        "unspecifi": 5,
│ │ │ │ │ +        "up": [2, 5],
│ │ │ │ │ +        "us": [2, 3, 4, 5],
│ │ │ │ │ +        "usag": [1, 2],
│ │ │ │ │ +        "user": [2, 5],
│ │ │ │ │ +        "usestim": 5,
│ │ │ │ │ +        "utc": 2,
│ │ │ │ │ +        "valid": 5,
│ │ │ │ │ +        "valu": [2, 5],
│ │ │ │ │ +        "valueerror": 5,
│ │ │ │ │          "variabl": 0,
│ │ │ │ │ -        "version": 3,
│ │ │ │ │ +        "version": [2, 3, 5],
│ │ │ │ │          "view": 0,
│ │ │ │ │          "vinai": 3,
│ │ │ │ │          "visit": 3,
│ │ │ │ │ -        "warn": [1, 3],
│ │ │ │ │ +        "wa": [2, 5],
│ │ │ │ │ +        "wait": 2,
│ │ │ │ │ +        "want": 2,
│ │ │ │ │ +        "warn": [1, 3, 5],
│ │ │ │ │ +        "watchedfilehandl": 2,
│ │ │ │ │ +        "we": 2,
│ │ │ │ │          "welcom": 3,
│ │ │ │ │ -        "when": [0, 3],
│ │ │ │ │ +        "what": 2,
│ │ │ │ │ +        "when": [0, 2, 3, 5],
│ │ │ │ │ +        "whenev": 2,
│ │ │ │ │          "where": 0,
│ │ │ │ │ +        "wherea": 5,
│ │ │ │ │          "whether": 3,
│ │ │ │ │ -        "which": 3,
│ │ │ │ │ -        "write": 1,
│ │ │ │ │ -        "xxx": 0,
│ │ │ │ │ -        "you": [0, 1, 3],
│ │ │ │ │ -        "your": [0, 1, 3]
│ │ │ │ │ +        "which": [2, 3, 5],
│ │ │ │ │ +        "while": 2,
│ │ │ │ │ +        "whose": 5,
│ │ │ │ │ +        "window": 2,
│ │ │ │ │ +        "won": 2,
│ │ │ │ │ +        "work": 2,
│ │ │ │ │ +        "would": 2,
│ │ │ │ │ +        "write": [1, 2, 5],
│ │ │ │ │ +        "xxx": [0, 5],
│ │ │ │ │ +        "yet": 5,
│ │ │ │ │ +        "you": [0, 1, 2, 3, 5],
│ │ │ │ │ +        "your": [0, 1, 2, 3],
│ │ │ │ │ +        "zap": 2,
│ │ │ │ │ +        "zero": 2
│ │ │ │ │      },
│ │ │ │ │      "titles": ["Using with Django", "Examples", "Handlers", "picologging", "Limitations", "Picologging API"],
│ │ │ │ │      "titleterms": {
│ │ │ │ │          "api": 5,
│ │ │ │ │          "base": 2,
│ │ │ │ │          "basic": 1,
│ │ │ │ │          "buffer": 2,