class_docstr: Handler used by child processes to forward log messages to parent.
class_docstr_tok: ["Handler","used","by","child","processes","to","forward","log","messages","to","parent","."]
docstr: Initialize the handler.
docstr_tok: ["Initialize","the","handler","."]
code: def __init__(self, conn: Connection) -> None:
      """Initialize the handler."""
      # sets the parent's queue to None - parent only touches queue
      # in enqueue() which we override
      super().__init__(None)  # type: ignore
      self.conn = conn
  
imports: from __future__ import annotations
  import logging
  import logging.handlers
  import signal
  from collections.abc import Iterable, Iterator
  from contextlib import suppress
  from enum import Enum, auto
  from itertools import islice, repeat, takewhile, zip_longest
  from multiprocessing import Pipe, Process
  from multiprocessing.connection import Connection, wait
  from typing import Callable
  from ocrmypdf import Executor, hookimpl
  from ocrmypdf._concurrent import NullProgressBar
  from ocrmypdf.exceptions import InputFileError
  from ocrmypdf.helpers import remove_all_log_handlers
label_desc: Use image node_id 1 to create a new ConnectionLogHandler object from inherited base classes: logging.handlers with example: obj = ConnectionLogHandler(conn)