Async logging file handler (#4901)

* Async logging file handler

* add time rotation handle

* new layout

* address paulus comments

* fix lint
This commit is contained in:
Pascal Vizeli 2016-12-17 00:51:06 +01:00 committed by Paulus Schoutsen
parent 326cc83a17
commit 6d6abab358
2 changed files with 100 additions and 1 deletions

View file

@ -20,6 +20,7 @@ import homeassistant.loader as loader
import homeassistant.util.package as pkg_util
from homeassistant.util.async import (
run_coroutine_threadsafe, run_callback_threadsafe)
from homeassistant.util.logging import AsyncHandler
from homeassistant.util.yaml import clear_secret_cache
from homeassistant.const import EVENT_COMPONENT_LOADED, PLATFORM_FORMAT
from homeassistant.exceptions import HomeAssistantError
@ -548,8 +549,11 @@ def enable_logging(hass: core.HomeAssistant, verbose: bool=False,
err_handler.setFormatter(
logging.Formatter('%(asctime)s %(name)s: %(message)s',
datefmt='%y-%m-%d %H:%M:%S'))
async_handler = AsyncHandler(hass.loop, err_handler)
logger = logging.getLogger('')
logger.addHandler(err_handler)
logger.addHandler(async_handler)
logger.setLevel(logging.INFO)
else: