Beispiel #1
0
    def emit(self, record):
        """Relay log message via dispatcher."""
        stack = []
        if record.levelno >= logging.WARN:
            if not record.exc_info:
                stack = [f for f, _, _, _ in traceback.extract_stack()]

        entry = LogEntry(record, stack, _figure_out_source(record, stack, self.hass))
        async_dispatcher_send(
            self.hass, ZHA_GW_MSG, {TYPE: LOG_OUTPUT, LOG_ENTRY: entry.to_dict()}
        )
Beispiel #2
0
    def emit(self, record):
        """Relay log message via dispatcher."""
        stack = []
        if record.levelno >= logging.WARN:
            if not record.exc_info:
                stack = [f for f, _, _, _ in traceback.extract_stack()]

        entry = LogEntry(record, stack,
                         _figure_out_source(record, stack, self.hass))
        async_dispatcher_send(
            self.hass,
            ZHA_GW_MSG,
            {
                TYPE: LOG_OUTPUT,
                LOG_ENTRY: entry.to_dict()
            }
        )
Beispiel #3
0
    def emit(self, record: LogRecord) -> None:
        """Relay log message via dispatcher."""
        stack = []
        if record.levelno >= logging.WARN and not record.exc_info:
            stack = [f for f, _, _, _ in traceback.extract_stack()]

        hass_path: str = HOMEASSISTANT_PATH[0]
        config_dir = self.hass.config.config_dir
        assert config_dir is not None
        paths_re = re.compile(r"(?:{})/(.*)".format("|".join(
            [re.escape(x) for x in (hass_path, config_dir)])))
        entry = LogEntry(record, stack,
                         _figure_out_source(record, stack, paths_re))
        async_dispatcher_send(
            self.hass,
            ZHA_GW_MSG,
            {
                ATTR_TYPE: ZHA_GW_MSG_LOG_OUTPUT,
                ZHA_GW_MSG_LOG_ENTRY: entry.to_dict()
            },
        )