log.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:snmpsim 作者: etingof 项目源码 文件源码
def init(self, *priv):
        if len(priv) < 1:
            raise error.SnmpsimError('Bad syslog params, need at least facility, also accept priority, host, port, socktype (tcp|udp)')
        if len(priv) < 2:
            priv = [priv[0], 'debug']
        if len(priv) < 3:
            priv = [priv[0], priv[1], 'localhost', 514, 'udp']
        if not priv[2].startswith('/'):
            if len(priv) < 4:
                priv = [priv[0], priv[1], priv[2], 514, 'udp']
            if len(priv) < 5:
                priv = [priv[0], priv[1], priv[2], 514, 'udp']
            priv = [priv[0], priv[1], priv[2], int(priv[3]), priv[4]]

        try:
            handler = handlers.SysLogHandler(priv[2].startswith('/') and priv[2] or (priv[2], int(priv[3])),
                                             priv[0].lower(), len(priv) > 4 and priv[
                                                 4] == 'tcp' and socket.SOCK_STREAM or socket.SOCK_DGRAM)

        except:
            raise error.SnmpsimError('Bad syslog option(s): %s' % sys.exc_info()[1])
        handler.setFormatter(logging.Formatter('%(asctime)s %(name)s: %(message)s'))
        self._logger.addHandler(handler)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号