prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Bug: Picologging not behaving correctly 
  **Describe the bug**
  i reported an earlier issue to @peterschutt about logging configuration not visible in the console output.
  that was fixed in https://github.com/starlite-api/starlite/pull/594
  
  i now wanted to test this out with picologging but it seems to override the LoggingConfig settings.
  
  **To Reproduce**
  checkout https://github.com/starlite-api/starlite-pg-redis-docker    and add picologging to the application.
  then you see the behaviour i describe here.
  
  nothing else changes so only add picologging.
  
  **Additional context**
  you can see the behaviour already at starting the project with docker-compose up.
  
  without picologging in project:
  
  app_1      | Starting Starlite App...
  app_1      | INFO:     Will watch for changes in these directories: ['/app']
  app_1      | INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
  app_1      | INFO:     Started reloader process [10] using WatchFiles
  app_1      | INFO:     Started server process [12]
  app_1      | INFO:     Waiting for application startup.
  app_1      | 2022-10-16 18:38:14,888 loglevel=INFO   logger=uvicorn.error serve() L75   Started server process [12]
  app_1      | 2022-10-16 18:38:14,888 loglevel=INFO   logger=uvicorn.error startup() L47   Waiting for application startup.
  app_1      | INFO:     Application startup complete.
  app_1      | 2022-10-16 18:38:14,908 loglevel=INFO   logger=uvicorn.error startup() L61   Application startup complete.
  
  with picologging in project:
  
  app_1      | Starting Starlite App...
  app_1      | INFO:     Will watch for changes in these directories: ['/app']
  app_1      | INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
  app_1      | INFO:     Started reloader process [10] using WatchFiles
  app_1      | INFO:     Started server process [12]
  app_1      | INFO:     Waiting for application startup.
  app_1      | INFO:     Application startup complete.
  
  
  i tried looking at the documentation of picologging https://microsoft.github.io/picologging/handlers.html   section Queue Listener but it seems to be correct. at this point im lacking knowledge in the logging department to troubleshoot this deeper.
  
  Kind regards,
  Niels
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `starlite/logging/picologging.py`
  Content:
  ```
  1 import atexit
  2 from logging import StreamHandler
  3 from queue import Queue
  4 from typing import Any, List, Optional
  5 
  6 from starlite.exceptions import MissingDependencyException
  7 from starlite.logging.utils import resolve_handlers
  8 
  9 try:
  10     from picologging.handlers import QueueHandler, QueueListener
  11 except ImportError as e:
  12     raise MissingDependencyException("picologging is not installed") from e
  13 
  14 
  15 class QueueListenerHandler(QueueHandler):  # type: ignore[misc]
  16     def __init__(self, handlers: Optional[List[Any]] = None) -> None:
  17         """Configures queue listener and handler to support non-blocking
  18         logging configuration.
  19 
  20         Args:
  21             handlers: Optional 'ConvertingList'
  22 
  23         Notes:
  24             - Requires `picologging` to be installed.
  25         """
  26         super().__init__(Queue(-1))
  27         if handlers:
  28             handlers = resolve_handlers(handlers)
  29         else:
  30             handlers = [StreamHandler()]
  31         self.listener = QueueListener(self.queue, *handlers)
  32         self.listener.start()
  33 
  34         atexit.register(self.listener.stop)
  35
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/starlite/logging/picologging.py b/starlite/logging/picologging.py
  --- a/starlite/logging/picologging.py
  +++ b/starlite/logging/picologging.py
  @@ -1,5 +1,4 @@
   import atexit
  -from logging import StreamHandler
   from queue import Queue
   from typing import Any, List, Optional
   
  @@ -7,6 +6,7 @@
   from starlite.logging.utils import resolve_handlers
   
   try:
  +    from picologging import StreamHandler
       from picologging.handlers import QueueHandler, QueueListener
   except ImportError as e:
       raise MissingDependencyException("picologging is not installed") from e
  
verification_info: {"golden_diff": "diff --git a/starlite/logging/picologging.py b/starlite/logging/picologging.py\n--- a/starlite/logging/picologging.py\n+++ b/starlite/logging/picologging.py\n@@ -1,5 +1,4 @@\n import atexit\n-from logging import StreamHandler\n from queue import Queue\n from typing import Any, List, Optional\n \n@@ -7,6 +6,7 @@\n from starlite.logging.utils import resolve_handlers\n \n try:\n+    from picologging import StreamHandler\n     from picologging.handlers import QueueHandler, QueueListener\n except ImportError as e:\n     raise MissingDependencyException(\"picologging is not installed\") from e\n", "issue": "Bug: Picologging not behaving correctly \n**Describe the bug**\r\ni reported an earlier issue to @peterschutt about logging configuration not visible in the console output.\r\nthat was fixed in https://github.com/starlite-api/starlite/pull/594\r\n\r\ni now wanted to test this out with picologging but it seems to override the LoggingConfig settings.\r\n\r\n**To Reproduce**\r\ncheckout https://github.com/starlite-api/starlite-pg-redis-docker    and add picologging to the application.\r\nthen you see the behaviour i describe here.\r\n\r\nnothing else changes so only add picologging.\r\n\r\n**Additional context**\r\nyou can see the behaviour already at starting the project with docker-compose up.\r\n\r\nwithout picologging in project:\r\n\r\napp_1      | Starting Starlite App...\r\napp_1      | INFO:     Will watch for changes in these directories: ['/app']\r\napp_1      | INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)\r\napp_1      | INFO:     Started reloader process [10] using WatchFiles\r\napp_1      | INFO:     Started server process [12]\r\napp_1      | INFO:     Waiting for application startup.\r\napp_1      | 2022-10-16 18:38:14,888 loglevel=INFO   logger=uvicorn.error serve() L75   Started server process [12]\r\napp_1      | 2022-10-16 18:38:14,888 loglevel=INFO   logger=uvicorn.error startup() L47   Waiting for application startup.\r\napp_1      | INFO:     Application startup complete.\r\napp_1      | 2022-10-16 18:38:14,908 loglevel=INFO   logger=uvicorn.error startup() L61   Application startup complete.\r\n\r\nwith picologging in project:\r\n\r\napp_1      | Starting Starlite App...\r\napp_1      | INFO:     Will watch for changes in these directories: ['/app']\r\napp_1      | INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)\r\napp_1      | INFO:     Started reloader process [10] using WatchFiles\r\napp_1      | INFO:     Started server process [12]\r\napp_1      | INFO:     Waiting for application startup.\r\napp_1      | INFO:     Application startup complete.\r\n\r\n\r\ni tried looking at the documentation of picologging https://microsoft.github.io/picologging/handlers.html   section Queue Listener but it seems to be correct. at this point im lacking knowledge in the logging department to troubleshoot this deeper.\r\n\r\nKind regards,\r\nNiels\r\n\n", "before_files": [{"content": "import atexit\nfrom logging import StreamHandler\nfrom queue import Queue\nfrom typing import Any, List, Optional\n\nfrom starlite.exceptions import MissingDependencyException\nfrom starlite.logging.utils import resolve_handlers\n\ntry:\n    from picologging.handlers import QueueHandler, QueueListener\nexcept ImportError as e:\n    raise MissingDependencyException(\"picologging is not installed\") from e\n\n\nclass QueueListenerHandler(QueueHandler):  # type: ignore[misc]\n    def __init__(self, handlers: Optional[List[Any]] = None) -> None:\n        \"\"\"Configures queue listener and handler to support non-blocking\n        logging configuration.\n\n        Args:\n            handlers: Optional 'ConvertingList'\n\n        Notes:\n            - Requires `picologging` to be installed.\n        \"\"\"\n        super().__init__(Queue(-1))\n        if handlers:\n            handlers = resolve_handlers(handlers)\n        else:\n            handlers = [StreamHandler()]\n        self.listener = QueueListener(self.queue, *handlers)\n        self.listener.start()\n\n        atexit.register(self.listener.stop)\n", "path": "starlite/logging/picologging.py"}], "after_files": [{"content": "import atexit\nfrom queue import Queue\nfrom typing import Any, List, Optional\n\nfrom starlite.exceptions import MissingDependencyException\nfrom starlite.logging.utils import resolve_handlers\n\ntry:\n    from picologging import StreamHandler\n    from picologging.handlers import QueueHandler, QueueListener\nexcept ImportError as e:\n    raise MissingDependencyException(\"picologging is not installed\") from e\n\n\nclass QueueListenerHandler(QueueHandler):  # type: ignore[misc]\n    def __init__(self, handlers: Optional[List[Any]] = None) -> None:\n        \"\"\"Configures queue listener and handler to support non-blocking\n        logging configuration.\n\n        Args:\n            handlers: Optional 'ConvertingList'\n\n        Notes:\n            - Requires `picologging` to be installed.\n        \"\"\"\n        super().__init__(Queue(-1))\n        if handlers:\n            handlers = resolve_handlers(handlers)\n        else:\n            handlers = [StreamHandler()]\n        self.listener = QueueListener(self.queue, *handlers)\n        self.listener.start()\n\n        atexit.register(self.listener.stop)\n", "path": "starlite/logging/picologging.py"}]}