Пример #1
0
    def emit(self, eventDict):
        text = textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self._colorize(self.formatTime(eventDict['time']),
                                 ColoredFileLogObserver.GREY_NORMAL)
        fmtDict = {
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t")
        }
        systemStr = ""
        systemStr = self._colorize(_safeFormat("[%(system)s]", fmtDict),
                                   ColoredFileLogObserver.GREY_NORMAL)
        textStr = _safeFormat("%(text)s", fmtDict)

        if textStr.startswith("SSH"):
            t = textStr.find("STDERR:")
            if t != -1:
                textStr = self._colorize(textStr[t + 8:],
                                         ColoredFileLogObserver.RED_BOLD)
            else:
                textStr = self._colorize(textStr[textStr.find("STDOUT:") + 8:],
                                         ColoredFileLogObserver.GREEN_BOLD)
            # only text for incoming data
            msgStr = textStr + "\n"
        else:
            # add system to the local logs
            # TODO: Make system more useful, not just "SSHChannel...".
            msgStr = systemStr + " " + textStr + "\n"

        util.untilConcludes(self.write, timeStr + " " + msgStr)
        util.untilConcludes(self.flush)  # Hoorj!
Пример #2
0
    def emit(self, eventDict):
        text = textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self._colorize(self.formatTime(eventDict["time"]), ColoredFileLogObserver.GREY_NORMAL)
        fmtDict = {"system": eventDict["system"], "text": text.replace("\n", "\n\t")}
        systemStr = ""
        systemStr = self._colorize(_safeFormat("[%(system)s]", fmtDict), ColoredFileLogObserver.GREY_NORMAL)
        textStr = _safeFormat("%(text)s", fmtDict)

        if textStr.startswith("SSH"):
            t = textStr.find("STDERR:")
            if t != -1:
                textStr = self._colorize(textStr[t + 8 :], ColoredFileLogObserver.RED_BOLD)
            else:
                textStr = self._colorize(textStr[textStr.find("STDOUT:") + 8 :], ColoredFileLogObserver.GREEN_BOLD)
            # only text for incoming data
            msgStr = textStr + "\n"
        else:
            # add system to the local logs
            # TODO: Make system more useful, not just "SSHChannel...".
            msgStr = systemStr + " " + textStr + "\n"

        util.untilConcludes(self.write, timeStr + " " + msgStr)
        util.untilConcludes(self.flush)  # Hoorj!
Пример #3
0
def koj_watcher(eventDict):
  """Custom emit for FileLogObserver"""
  text = log.textFromEventDict(eventDict)
  if text is None:
    return
  fmtDict = {'text': text.replace("\n", "\n\t")}
  msgStr = log._safeFormat("%(text)s\n", fmtDict)
Пример #4
0
    def emit(self, eventDict):
        """Changing the default log format.

        Base method that writes cis log. Here we can access the log
        message and manipulate it as we need. For example, define
        the log format and filter out password from the message.
        This can be configured per service in cisconf with LOG_FORMATTERS
        tuple of pairs (pattern, replacement).

        TODO: This is a hack, twisted should have a better way of modifying
        its log format"""
        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        if isinstance(self.log_formatters, (list, tuple)):
            for pattern, replacement in self.log_formatters:
                text = re.sub(pattern, replacement, text)

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t")
        }
        msgStr = log._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        util.untilConcludes(self.write,
                            '%s %s %s' % (timeStr, self.log_prefix, msgStr))
        util.untilConcludes(self.flush)  # Hoorj!
Пример #5
0
    def emit(self, eventDict):
        """
        Handles formatting system log messages along with incrementing the objs
        error counters. The eventDict is generated by the arguments passed to each
        log level call. See the unittests for an example.
        """
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        if GLLogObserver.suppressed == GLLogObserver.limit_suppressed:
            GLLogObserver.suppressed = 0
            GLLogObserver.limit_suppressed += 5
            GLLogObserver.last_exception_msg = ""

        try:
            # in addition to escape sequence removal on logfiles we also quote html chars
            util.untilConcludes(self.write, timeStr + " " + log_encode_html(msgStr))
            util.untilConcludes(self.flush) # Hoorj!
        except Exception as excep:
            GLLogObserver.suppressed += 1
            GLLogObserver.last_exception_msg = str(excep)
Пример #6
0
    def emit(self, eventDict):
        """
        Extended base class' 'emit' method by log level support.
        """
        if eventDict['isError']:
            level = logging.ERROR
        elif 'level' in eventDict:
            level = eventDict['level']
        else:
            level = logging.INFO
        if level < self.log_level:
            return

        text = tx_log.textFromEventDict(eventDict)
        if text is None:
            return

        time_str = self.formatTime(eventDict['time'])
        fmt_dict = {
            'level': logging.getLevelName(level),
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t")
        }
        msg_str = tx_log._safeFormat("%(level)s:[%(system)s]:%(text)s\n",
                                     fmt_dict)

        tx_util.untilConcludes(self.write, time_str + " " + msg_str)
        tx_util.untilConcludes(self.flush)
Пример #7
0
    def emit(self, eventDict):
        """Changing the default log format.

        Base method that writes cis log. Here we can access the log
        message and manipulate it as we need. For example, define
        the log format and filter out password from the message.
        This can be configured per service in cisconf with LOG_FORMATTERS
        tuple of pairs (pattern, replacement).

        TODO: This is a hack, twisted should have a better way of modifying
        its log format"""
        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        if isinstance(self.log_formatters, (list,tuple)):
            for pattern, replacement in self.log_formatters:
                text = re.sub(pattern, replacement, text)

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = log._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        util.untilConcludes(self.write, '%s %s %s' % (timeStr, self.log_prefix, msgStr))
        util.untilConcludes(self.flush)  # Hoorj!
Пример #8
0
    def emit(self, eventDict):
        if eventDict["isError"]:
            level = logging.ERROR
        elif "level" in eventDict:
            level = eventDict["level"]
        else:
            level = logging.INFO
        if level < self.logLevel:
            return

        message = log.textFromEventDict(eventDict)
        if not message:
            return

        logElements = {
            "timestamp": self.formatTime(eventDict["time"]),
            "level": logging.getLevelName(level),
            "system": eventDict["system"],
            "text": message.replace("\n", "\n\t")
        }
        messageString = "{} {}".format(logElements["timestamp"],
                                       log._safeFormat("%(level)7s:[%(system)s]: %(text)s\n", logElements))
        print messageString.replace("\n", "")
        util.untilConcludes(self.write, messageString)
        util.untilConcludes(self.flush)
Пример #9
0
    def emit(self, eventDict):
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        if GLLogObserver.suppressed == GLLogObserver.limit_suppressed:
            GLLogObserver.suppressed = 0
            GLLogObserver.limit_suppressed += 5
            GLLogObserver.last_exception_msg = ""

        try:
            # in addition to escape sequence removal on logfiles we also quote html chars
            util.untilConcludes(self.write, timeStr + " " + log_encode_html(msgStr))
            util.untilConcludes(self.flush) # Hoorj!
        except Exception as excep:
            GLLogObserver.suppressed += 1
            GLLogObserver.last_exception_msg = str(excep)
Пример #10
0
    def emit(self, eventDict):
        """
        Handles formatting system log messages along with incrementing the objs
        error counters. The eventDict is generated by the arguments passed to each
        log level call. See the unittests for an example.
        """
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t")
        }
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        util.untilConcludes(self.write,
                            timeStr + " " + log_encode_html(msgStr))
        util.untilConcludes(self.flush)
Пример #11
0
    def emit(self, eventDict):
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        if GLLogObserver.suppressed == GLLogObserver.limit_suppressed:
            # This code path flush the status of the broken log, in the case a flood is happen
            # for few moment or in the case something goes wrong when logging below.
            log.info("!! has been suppressed %d log lines due to error flood (last error %s)" %
                     (GLLogObserver.limit_suppressed, GLLogObserver.last_exception_msg) )

            GLLogObserver.suppressed = 0
            GLLogObserver.limit_suppressed += 5
            GLLogObserver.last_exception_msg = ""

        try:
            # in addition to escape sequence removal on logfiles we also quote html chars
            util.untilConcludes(self.write, timeStr + " " + log_encode_html(msgStr))
            util.untilConcludes(self.flush) # Hoorj!
        except Exception as excep:
            GLLogObserver.suppressed += 1
            GLLogObserver.last_exception_msg = str(excep)
Пример #12
0
    def emit(self, eventDict):

        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        if GLLogObserver.suppressed == GLLogObserver.limit_suppressed:
            # This code path flush the status of the broken log, in the case a flood is happen
            # for few moment or in the case something goes wrong when logging below.
            log.info("!! has been suppressed %d log lines due to error flood (last error %s)" %
                     (GLLogObserver.limit_suppressed, GLLogObserver.last_exception_msg) )

            GLLogObserver.suppressed = 0
            GLLogObserver.limit_suppressed += 5
            GLLogObserver.last_exception_msg = ""

        try:
            # in addition to escape sequence removal on logfiles we also quote html chars
            util.untilConcludes(self.write, timeStr + " " + log_encode_html(msgStr))
            util.untilConcludes(self.flush) # Hoorj!
        except Exception as excep:
            GLLogObserver.suppressed += 1
            GLLogObserver.last_exception_msg = str(excep)
Пример #13
0
    def emit(self, eventDict):
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = twlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = twlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        if GLLogObserver.suppressed == GLLogObserver.limit_suppressed:
            GLLogObserver.suppressed = 0
            GLLogObserver.limit_suppressed += 5
            GLLogObserver.last_exception_msg = ""

        try:
            # in addition to escape sequence removal on logfiles we also quote html chars
            util.untilConcludes(self.write, timeStr + " " + log_encode_html(msgStr))
            util.untilConcludes(self.flush) # Hoorj!
        except Exception as excep:
            GLLogObserver.suppressed += 1
            GLLogObserver.last_exception_msg = str(excep)
Пример #14
0
def koj_watcher(eventDict):
    """Custom emit for FileLogObserver"""
    text = log.textFromEventDict(eventDict)
    if text is None:
        return
    fmtDict = {'text': text.replace("\n", "\n\t")}
    msgStr = log._safeFormat("%(text)s\n", fmtDict)
Пример #15
0
    def emit(self, eventDict):
        """
        Extends method of the base class by providing support for log level.
        """
        if eventDict['isError']:
            level = logging.ERROR
        elif 'level' in eventDict:
            level = eventDict['level']
        else:
            level = logging.INFO
        if level < self.log_level:
            return

        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        time_str = self.formatTime(eventDict['time'])
        fmt_dict = {
            'level': logging.getLevelName(level),
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t")
        }
        msg_str = log._safeFormat(
            "%(level)8s:[%(system)s]: %(text)s\n", fmt_dict)

        util.untilConcludes(self.write, "{0} {1}".format(time_str, msg_str))
        util.untilConcludes(self.flush)
Пример #16
0
	def quietEmit(self, eventDict):
		text = log.textFromEventDict(eventDict)
		if text is None:
			return
		formatDict = {
			"text": text.replace("\n", "\n\t")
		}
		msg = log._safeFormat("%(text)s\n", formatDict)
		util.untilConcludes(self.write, msg)
		util.untilConcludes(self.flush)
Пример #17
0
    def __call__(self, event):
        msg = event['message']
        if not msg:
            if event['isError'] and event.has_key('failure'):
                msg = ((event.get('why') or 'Unhandled Error') + '\n' +
                       event['failure'].getTraceback())
            elif event.has_key('format'):
                if hasattr(self, '_safeFormat'):
                    msg = self._safeFormat(event['format'], event)
                else:
                    msg = log._safeFormat(event['format'], event)
            else:
                return
        else:
            msg = ' '.join(map(reflect.safe_str, msg))
        try:
            module = event['system']
            # Initialize the vlog modules on-demand, since systems are
            # not initialized explicitly in the Twisted logging API.
            if not self.modules.has_key(module):
                if module == '-':
                    module = 'reactor'
                    self.modules['-'] = self.v.mod_init(module)
                    self.modules[module] = self.modules['-']
                else:
                    self.modules[module] = self.v.mod_init(module)

            # vlog module identifier
            module = self.modules[module]

            fmt = {'system': module, 'msg': msg.replace("\n", "\n\t")}
            if hasattr(self, '_safeFormat'):
                msg = self._safeFormat("%(msg)s", fmt)
            else:
                msg = log._safeFormat("%(msg)s", fmt)
            if event["isError"]:
                self.v.err(module, msg)
            else:
                self.v.msg(module, msg)
        except Exception, e:
            # Can't pass an exception, since then the observer would
            # be disabled automatically.
            pass
Пример #18
0
    def emit(self, eventDict):
        text = tw_log.textFromEventDict(eventDict)
        if text is None:
            return

        fmtDict = {'system': eventDict['system'],
                   'text': text.replace("\n", "\n\t")}
        msgStr = tw_log._safeFormat("[%(system)s] %(text)s\n", fmtDict)
        util.untilConcludes(self.write, msgStr)
        util.untilConcludes(self.flush)
Пример #19
0
    def __call__(self, event):
        msg = event['message']
        if not msg:
            if event['isError'] and event.has_key('failure'):
                msg = ((event.get('why') or 'Unhandled Error')
                       + '\n' + event['failure'].getTraceback())
            elif event.has_key('format'):
                if hasattr(self, '_safeFormat'):
                    msg = self._safeFormat(event['format'], event)
                else:
                    msg = log._safeFormat(event['format'], event)
            else:
                return
        else:
            msg = ' '.join(map(reflect.safe_str, msg))
        try:
            module = event['system']
            # Initialize the vlog modules on-demand, since systems are
            # not initialized explicitly in the Twisted logging API.
            if not self.modules.has_key(module):
                if module == '-':
                    module = 'reactor'
                    self.modules['-'] = self.v.mod_init(module)
                    self.modules[module] = self.modules['-']
                else:
                    self.modules[module] = self.v.mod_init(module)

            # vlog module identifier
            module = self.modules[module]

            fmt = {'system': module, 'msg': msg.replace("\n", "\n\t")}
            if hasattr(self, '_safeFormat'):
                msg = self._safeFormat("%(msg)s", fmt)
            else:
                msg = log._safeFormat("%(msg)s", fmt)
            if event["isError"]:
                self.v.err(module, msg)
            else:
                self.v.msg(module, msg)
        except Exception, e:
            # Can't pass an exception, since then the observer would
            # be disabled automatically.
            pass
Пример #20
0
    def emit(self, eventDict):
        text = tw_log.textFromEventDict(eventDict)
        if text is None:
            return

        fmtDict = {'system': eventDict['system'],
                   'text': text.replace("\n", "\n\t")}
        msgStr = tw_log._safeFormat("[%(system)s] %(text)s\n", fmtDict)
        util.untilConcludes(self.write, msgStr)
        util.untilConcludes(self.flush)
Пример #21
0
    def emit(self, eventDict):
        text = log.textFromEventDict(eventDict)
        if text is None:
            text = '<no text>'

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'time': timeStr, 'text': text}
        output = log._safeFormat('%(time)s %(text)s\n', fmtDict)
        util.untilConcludes(self.write, output)
        util.untilConcludes(self.flush)
Пример #22
0
    def __call__(self, event):
        msg = event["message"]
        if not msg:
            if event["isError"] and event.has_key("failure"):
                msg = (event.get("why") or "Unhandled Error") + "\n" + event["failure"].getTraceback()
            elif event.has_key("format"):
                if hasattr(self, "_safeFormat"):
                    msg = self._safeFormat(event["format"], event)
                else:
                    msg = log._safeFormat(event["format"], event)
            else:
                return
        else:
            msg = " ".join(map(reflect.safe_str, msg))
        try:
            module = event["system"]
            # Initialize the vlog modules on-demand, since systems are
            # not initialized explicitly in the Twisted logging API.
            if not self.modules.has_key(module):
                if module == "-":
                    module = "reactor"
                    self.modules["-"] = self.v.mod_init(module)
                    self.modules[module] = self.modules["-"]
                else:
                    self.modules[module] = self.v.mod_init(module)

            # vlog module identifier
            module = self.modules[module]

            fmt = {"system": module, "msg": msg.replace("\n", "\n\t")}
            if hasattr(self, "_safeFormat"):
                msg = self._safeFormat("%(msg)s", fmt)
            else:
                msg = log._safeFormat("%(msg)s", fmt)
            if event["isError"]:
                self.v.err(module, msg)
            else:
                self.v.msg(module, msg)
        except Exception, e:
            # Can't pass an exception, since then the observer would
            # be disabled automatically.
            pass
Пример #23
0
 def custom_emit(self, event_dict):
     """Custom emit for FileLogObserver"""
     text = log.textFromEventDict(event_dict)
     if text is None:
         return
     self.timeFormat = '[%Y-%m-%d %H:%M:%S %f]'
     time_str = self.formatTime(event_dict['time'])
     fmt_dict = {'text': text.replace("\n", "\n\t")}
     msg_str = log._safeFormat("%(text)s\n", fmt_dict)
     util.untilConcludes(self.write, time_str + " " + msg_str)
     util.untilConcludes(self.flush)
Пример #24
0
def myFLOemit(self,eventDict):
    """Custom emit for FileLogObserver"""
    text = log.textFromEventDict(eventDict)
    if text is None:
        return
    self.timeFormat='[%Y-%m-%d %H:%M:%S]'
    timeStr = self.formatTime(eventDict['time'])
    fmtDict = {'text': text.replace("\n", "\n\t")}
    msgStr = log._safeFormat("%(text)s\n", fmtDict)
    util.untilConcludes(self.write, timeStr + " " + msgStr)
    util.untilConcludes(self.flush)
Пример #25
0
    def emit(self, eventDict):
        text = textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = log._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        #util.untilConcludes(self.write, timeStr + " " + msgStr)
        #util.untilConcludes(self.flush)  # Hoorj!
        
        #util.untilConcludes(sys.__stdout__.write, msgStr)
        print(msgStr)
Пример #26
0
    def emit(self, event):
        text = log.textFromEventDict(event)

        if text is None:
            return

        self.timeFormat = '[%Y-%m-%d %H:%M:%S]'
        time_str = self.formatTime(event['time'])

        fmt_dict = {'text': text.replace('\n', '\n\t')}
        msg_str = log._safeFormat('%(text)s\n', fmt_dict)

        logging.debug(str(event))

        util.untilConcludes(self.write, time_str + ' ' + socket.gethostname() + ' ' + msg_str)
        util.untilConcludes(self.flush)
Пример #27
0
 def emit(self, eventDict):
     if "isError" in eventDict and \
             eventDict["isError"] and \
             "header" not in eventDict:
         eventDict["header"] = "-"
     if "header" not in eventDict:
         return
     text = log.textFromEventDict(eventDict)
     if text is None:
         return
     timeStr = self.formatTime(eventDict['time'])
     fmtDict = {'header': eventDict['header'], 'text':
                text.replace("\n", "\n\t")}
     msgStr = log._safeFormat("[%(header)s] %(text)s\n", fmtDict)
     util.untilConcludes(self.write, timeStr + " " + msgStr)
     util.untilConcludes(self.flush)
Пример #28
0
def myFLOemit(self, eventDict):
    """Custom emit for FileLogObserver"""
    max_text = 256
    text = log.textFromEventDict(eventDict)

    if text is None:
        return
    if len(text) > max_text:
        text = text[:max_text]

    self.timeFormat = '[%Y-%m-%d %H:%M:%S]'
    timeStr = self.formatTime(eventDict['time'])
    fmtDict = {'text': text.replace("\n", "\n\t")}
    msgStr = log._safeFormat("%(text)s\n", fmtDict)
    util.untilConcludes(self.write, timeStr + " " + msgStr)
    util.untilConcludes(self.flush)
Пример #29
0
    def emit(self, event):
        text = log.textFromEventDict(event)

        if text is None:
            return

        self.timeFormat = '[%Y-%m-%d %H:%M:%S]'
        time_str = self.formatTime(event['time'])

        fmt_dict = {'text': text.replace('\n', '\n\t')}
        msg_str = log._safeFormat('%(text)s\n', fmt_dict)

        logging.debug(str(event))

        util.untilConcludes(
            self.write, time_str + ' ' + socket.gethostname() + ' ' + msg_str)
        util.untilConcludes(self.flush)
Пример #30
0
    def emit(self, eventDict):
        text = log.textFromEventDict(eventDict)
        if text is None:
            return
        
        level = eventDict.get("level", 20)
        if level < self.level:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'],
                   'text': text.replace("\n", "\n\t"),
                   'level': self.levels[level]}
        msgStr = log._safeFormat("%(level)s [%(system)s] %(text)s\n", fmtDict)

        twisted.python.util.untilConcludes(self.write, timeStr + " " + msgStr)
        twisted.python.util.untilConcludes(self.flush)
Пример #31
0
    def emit(self, eventDict):
        """
        Copied from Twisted parent, to change logging output

        """
        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        # timeStr = self.formatTime(eventDict["time"])
        timeStr = timeformat(eventDict["time"])
        fmtDict = {"text": text.replace("\n", "\n\t")}

        msgStr = log._safeFormat("%(text)s\n", fmtDict)

        twisted_util.untilConcludes(self.write,
                                    timeStr + "%s" % self.prefix + msgStr)
        twisted_util.untilConcludes(self.flush)
Пример #32
0
    def emit(self, eventDict):
        """
        Copied from Twisted parent, to change logging output

        """
        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        # timeStr = self.formatTime(eventDict["time"])
        timeStr = timeformat(eventDict["time"])
        fmtDict = {
            "text": text.replace("\n", "\n\t")}

        msgStr = log._safeFormat("%(text)s\n", fmtDict)

        twisted_util.untilConcludes(self.write, timeStr + "%s" % self.prefix + msgStr)
        twisted_util.untilConcludes(self.flush)
Пример #33
0
 def emit(self, eventDict):
     if not self.send_printed and eventDict.get('printed', False):
         return
     
     if self.client._transport.channel.closed:
         self.stop()
         return
     
     text = textFromEventDict(eventDict)
     
     if text is None:
         return
     
     timeStr = self.formatTime(eventDict['time'])
     fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
     msgStr = _safeFormat("[%(system)s] %(text)s\n", fmtDict)
     
     self.client.receive_log_entry(self.module_address, timeStr + " " + msgStr)
Пример #34
0
    def emit(self, eventDict):
        text = log.textFromEventDict(eventDict)
        if text is None:
            return

        level = eventDict.get("level", 20)
        if level < self.level:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {
            'system': eventDict['system'],
            'text': text.replace("\n", "\n\t"),
            'level': self.levels[level]
        }
        msgStr = log._safeFormat("%(level)s [%(system)s] %(text)s\n", fmtDict)

        twisted.python.util.untilConcludes(self.write, timeStr + " " + msgStr)
        twisted.python.util.untilConcludes(self.flush)
Пример #35
0
def productive_logformat(self, eventDict):
    text = log.textFromEventDict(eventDict)
    if text is None: return
    code = level_code[eventDict['log_level'].name]
    timeStr = str(eventDict['time'] + tzoffset)  # use UTC timestamp

    # append 0 for value likes "1526537871.8" (disabled to reduce overhead)
    # timeStr += '0' if len(timeStr)==12 else ''

    # python2 len is 13, python3 len is 17
    #assert len(timeStr)==13,'expect len(timeStr)==13, got %s(%s)' % (len(timeStr), timeStr)

    fmtDict = {
        'text': text.replace('\n', '\\n'),  # flat into one line only
        'code': code,
    }

    msgStr = log._safeFormat(":%(code)s:%(text)s\n", fmtDict)
    util.untilConcludes(self.write, timeStr[:13] + msgStr)
    util.untilConcludes(self.flush)
Пример #36
0
    def emit(self, eventDict):
        """
        Handles formatting system log messages along with incrementing the objs
        error counters. The eventDict is generated by the arguments passed to each
        log level call. See the unittests for an example.
        """
        if 'failure' in eventDict:
            vf = eventDict['failure']
            e_t, e_v, e_tb = vf.type, vf.value, vf.getTracebackObject()
            sys.excepthook(e_t, e_v, e_tb)

        text = txlog.textFromEventDict(eventDict)
        if text is None:
            return

        timeStr = self.formatTime(eventDict['time'])
        fmtDict = {'system': eventDict['system'], 'text': text.replace("\n", "\n\t")}
        msgStr = txlog._safeFormat("[%(system)s] %(text)s\n", fmtDict)

        util.untilConcludes(self.write, timeStr + ' ' + msgStr)
        util.untilConcludes(self.flush)
Пример #37
0
    def log_dictionary(self, event_dict, level):
        """
        Format the given log event as text and write it to the output file.

        @param event_dict: a log event
        @type event_dict: L{dict} mapping L{str} (native string) to L{object}
        
        @param level: The event level to log.
        """
        text = textFromEventDict(event_dict)
        if text is None:
            return

        time_str = self.formatTime(event_dict["time"])
        fmt_dict = {
            "system": event_dict["system"],
            "text": text.replace("\n", "\n\t")
        }
        msg_str = _safeFormat("[%(system)s] %(text)s\n", fmt_dict)
        untilConcludes(
            logging.getLogger('parlay').log, level, time_str + " " + msg_str)
Пример #38
0
 def quietEmit(self, eventDict):
     text = log.textFromEventDict(eventDict)
     if text is None:
         return
     if "/api/statusinfo" in text:  # do not log OWF statusinfo
         return
     # Log with time stamp.
     #
     # timeStr = self.formatTime(eventDict["time"])
     # fmtDict = {
     # 	"ts": timeStr,
     # 	"system": eventDict["system"],
     # 	"text": text.replace("\n", "\n\t")
     # }
     # msgStr = log._safeFormat("%(ts)s [%(system)s] %(text)s\n", fmtDict)
     #
     # Log without time stamp.
     #
     fmtDict = {"text": text.replace("\n", "\n\t")}
     msgStr = log._safeFormat("%(text)s\n", fmtDict)
     util.untilConcludes(self.write, msgStr)
     util.untilConcludes(self.flush)