示例#1
0
文件: log.py 项目: hbrls/probe_old
def get_logentries_handler():
    import os
    from logentries import LogentriesHandler
    handler = LogentriesHandler(os.getenv("LOGENTRIES_TOKEN"))

    handler.setFormatter(formatter)
    handler.setLevel(logging.INFO)
    return handler
示例#2
0
def get_custom_logger(name):
    """ Set up loggers according to environment and configuration. """

    file = app.config['LOGGER_FILEPATH']
    token = app.config['LOGENTRIES_TOKEN']
    level = DEBUG if app.config['DEBUG'] else INFO
    context = app.config['ENVIRONMENT']

    log = getLogger(name)
    log.setLevel(level)

    # shared by all handlers
    formatter = Formatter(
        '[%(asctime)s] '
        '[%(process)d] '
        '[%(name)s] '
        '[%(levelname)s] '
        '%(message)s'
    )

    if context != 'testing' and file:
        file = FileHandler(file, mode='a+')
        file.setLevel(level)
        file.setFormatter(formatter)
        log.addHandler(file)

    if context == 'development':
        console = StreamHandler(stream=stdout)
        console.setLevel(level)
        console.setFormatter(formatter)
        log.addHandler(console)

    if context != 'testing' and token:
        logentries = LogentriesHandler(token)
        logentries.setLevel(level)
        logentries.setFormatter(formatter)
        log.addHandler(logentries)

    return log
示例#3
0
                                     ' %(name)s: %(message)s',
                                     datefmt='%b %d %H:%M:%S')

syslog_address = os.getenv('SYSLOG_ADDRESS', '')
if syslog_address:
    syslog_host, syslog_udp_port = syslog_address.split(":")
    syslog_handler = SysLogHandler(address=(syslog_host, int(syslog_udp_port)))
    syslog_handler.setFormatter(syslog_formatter)
    syslog_handler.setLevel(syslog_logging_level)
    logging_handlers.append(syslog_handler)

logentries_token = os.getenv('LOGENTRIES_TOKEN', '')
if logentries_token:
    logentries_handler = LogentriesHandler(logentries_token)
    logentries_handler.setFormatter(syslog_formatter)
    logentries_handler.setLevel(syslog_logging_level)
    logging_handlers.append(logentries_handler)

logging.basicConfig(
    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
    datefmt='%Y-%m-%d %H:%M:%S',
    level=logging.DEBUG,
    handlers=logging_handlers)


def main():
    botan_token = os.getenv('BOTAN_TOKEN', '')
    sc_auth_token = os.environ['SC_AUTH_TOKEN']
    store_chat_id = int(os.getenv('STORE_CHAT_ID', '0'))
    no_flood_chat_ids = list(
        map(int,
示例#4
0
                                            request.remote_addr)
        if current_user.is_anonymous():
            log_record.user_id = 'guest'
        else:
            log_record.user_id = current_user.get_id()

        return True


# Use said info
log_format = ("%(utcnow)s\tl=%(levelname)s\tu=%(user_id)s\tip=%(ip)s"
              "\tm=%(method)s\turl=%(url)s\tmsg=%(message)s")
formatter = logging.Formatter(log_format)

# - Handlers
# -- Stream handler
streamHandler = logging.StreamHandler()
streamHandler.setLevel(logging.INFO)
streamHandler.setFormatter(formatter)

# -- LogEntries handler
leHandler = LogentriesHandler(app.config['LOGENTRIES_TOKEN'])
leHandler.setLevel(logging.INFO)
leHandler.setFormatter(formatter)

# - Logger
log = app.logger
log.setLevel(logging.DEBUG)
log.addFilter(ContextualFilter())
log.addHandler(streamHandler)
log.addHandler(leHandler)