• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Python logging.get_logger函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中vigilo.common.logging.get_logger函数的典型用法代码示例。如果您正苦于以下问题:Python get_logger函数的具体用法?Python get_logger怎么用?Python get_logger使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了get_logger函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_handlers_args

    def test_handlers_args(self):
        """Lecture des arguments d'un 'handler'."""
        # Note : on ne peut pas changer la configuration du logger_root
        # car nose effectue déjà des modifications de celui-ci (qui sont
        # prioritaires sur notre configuration).
        self.load_conf_from_string("""
[loggers]
keys=test

[handlers]
keys=test

[logger_test]
level=DEBUG
handlers=test
qualname=%s

[handler_test]
class=StreamHandler
level=INFO
; En remplace le flux par défaut (stderr) par stdout.
args=(sys.stdout, )
""" % __name__)
        fileConfig()
        logger = get_logger(__name__)

        # Le logger doit avoir le bon niveau, le bon nombre d'handlers
        # et surtout le handler doit avoir la bonne configuration de flux.
        self.assertEquals(logger.level, logging.DEBUG)
        self.assertEquals(len(logger.handlers), 1)
        handler = logger.handlers[0]
        self.assertTrue(isinstance(handler, logging.StreamHandler),
                        handler.__class__.__name__)
        self.assertEquals(handler.level, logging.INFO)
        self.assertEquals(handler.stream, sys.stdout)
开发者ID:vigilo,项目名称:common,代码行数:35,代码来源:test_logging.py


示例2: setUp

    def setUp(self):
        # On prépare la base de données et le serveur MemcacheD.
        helpers.setup_db()
        self.context_factory = helpers.ContextStubFactory()

        # On récupère le logger 'vigilo.correlator.syslog'
        # défini dans les settings.
        self.logger = get_logger('vigilo.correlator.syslog')

        # On crée une instance de la classe test_log_handler()
        # pour intercepter les logs du corrélateur, et on
        # construit un StreamHandler à partir de cette instance.
        self.stream = LogHandlerStub()
        self.handler = logging.StreamHandler(self.stream)

        # On associe ce handler au logger.
        self.logger.addHandler(self.handler)

        # On crée un formatter (qui comme son nom l'indique permet de
        # spécifier le format des messages) qu'on associe lui-même au handler.
        formatter = logging.Formatter("%(message)s")
        self.handler.setFormatter(formatter)

        # Initialisation de l'identifiant des messages XML.
        self.msgid = 0
        return defer.succeed(None)
开发者ID:vigilo,项目名称:correlator,代码行数:26,代码来源:test_logging.py


示例3: makeService

def makeService(options):
    """ the service that wraps everything the connector needs. """
    from vigilo.connector.options import getSettings
    settings = getSettings(options, __name__)

    from vigilo.common.logging import get_logger
    LOGGER = get_logger(__name__)

    from vigilo.common.gettext import translate
    _ = translate(__name__)

    from vigilo.connector.client import client_factory
    from vigilo.connector.handlers import buspublisher_factory
    from vigilo.connector.handlers import backupprovider_factory
    from vigilo.connector.socket import socketlistener_factory
    from vigilo.connector_nagios.nagioscommand import nagioscmdh_factory
    from vigilo.connector_nagios.nagiosconf import nagiosconffile_factory

    try:
        socket_filename = settings['connector-nagios']['listen_unix']
        # Statement seems to have no effect # pylint: disable-msg=W0104
        settings['connector-nagios']['nagios_pipe']
        settings["bus"]["queue"]
    except KeyError, e:
        LOGGER.error(_("Missing configuration option: %s"), str(e))
        sys.exit(1)
开发者ID:vigilo,项目名称:connector-nagios,代码行数:26,代码来源:__init__.py


示例4: _db_thread

    def _db_thread(self):
        """
        Cette méthode est exécutée dans un thread séparé.
        C'est elle qui traite les demandes d'opérations sur la base de données
        et retourne les résultats sous la forme d'un objet C{Deferred}.

        @note: Cette méthode ne retourne pas tant que la méthode
            L{DatabaseWrapper.shutdown} n'a pas été appelée.
        """
        from vigilo.common.logging import get_logger
        from vigilo.common.gettext import translate

        logger = get_logger(__name__)
        _ = translate(__name__)

        while True:
            op = self.queue.get()
            if op is None:
                return
            else:
                func, args, kwargs, d, txn = op

            if txn:
                transaction.begin()
            try:
                result = d.callback, func(*args, **kwargs)
                if txn:
                    transaction.commit()
            except Exception:
                if txn:
                    transaction.abort()
                result = d.errback, Failure()
            self.queue.task_done()
            reactor.callFromThread(*result)
开发者ID:vigilo,项目名称:correlator,代码行数:34,代码来源:db_thread.py


示例5: _log_correvent

    def _log_correvent(self, info_dictionary):
        """
        Enregistre un résumé du traitement de l'événement
        dans les journaux système.

        @param info_dictionary: Dictionnaire contenant les informations
            sur l'événement courant.
        @type info_dictionary: C{dict}
        """
        try:
            log_level = settings['correlator'].as_int('syslog_data_level')
        except KeyError:
            log_level = logging.INFO

        data_logger = get_logger('vigilo.correlator.syslog')
        if not data_logger.isEnabledFor(log_level):
            return

        LOGGER.debug(_('Sending the correlated event to syslog'))
        data_logger.log(log_level,
                        '%s|%s|%s|%s|%s|%s|%s',
                        info_dictionary['idcorrevent'],
                        info_dictionary['update'] and
                            'CHANGE' or 'NEW',
                        info_dictionary['host'],
                        info_dictionary['service'] or '',
                        info_dictionary['state'],
                        info_dictionary['priority'],
                        info_dictionary.get('message', ''),
                    )
开发者ID:vigilo,项目名称:correlator,代码行数:30,代码来源:correvent.py


示例6: log_initialized

def log_initialized(silent_load=False):
    """
    Cette fonction est appelée une fois la configuration chargée
    afin d'indiquer le nom du fichier qui a été chargé.
    """
    if silent_load:
        return
    from vigilo.common.logging import get_logger
    LOGGER = get_logger(__name__)
    LOGGER.debug('Loaded settings from paths: %s',
                 ", ".join(settings.filenames))
开发者ID:vigilo,项目名称:common,代码行数:11,代码来源:conf.py


示例7: setup_plugins_path

def setup_plugins_path(plugins_path):
    """Très fortement inspiré de Trac"""
    from vigilo.common.logging import get_logger
    LOGGER = get_logger(__name__)
    LOGGER.debug("Loading plugins from %s" % plugins_path)

    distributions, errors = pkg_resources.working_set.find_plugins(
        pkg_resources.Environment([plugins_path])
    )
    for dist in distributions:
        if dist in pkg_resources.working_set:
            continue
        LOGGER.debug('Adding plugin %(plugin)s from %(location)s', {
            'plugin': dist,
            'location': dist.location,
        })
        pkg_resources.working_set.add(dist)

    def _log_error(item, e):
        if isinstance(e, pkg_resources.DistributionNotFound):
            LOGGER.debug('Skipping "%(item)s": ("%(module)s" not found)', {
                'item': item,
                'module': e,
            })
        elif isinstance(e, pkg_resources.VersionConflict):
            LOGGER.error(_('Skipping "%(item)s": (version conflict '
                           '"%(error)s")'),
                         {'item': item, 'error': e})
        elif isinstance(e, pkg_resources.UnknownExtra):
            LOGGER.error(_('Skipping "%(item)s": (unknown extra "%(error)s")'),
                         {'item': item, 'error': e })
        elif isinstance(e, ImportError):
            LOGGER.error(_('Skipping "%(item)s": (can\'t import "%(error)s")'),
                         {'item': item, 'error': e })
        else:
            LOGGER.error(_('Skipping "%(item)s": (error "%(error)s")'), {
                'item': item,
                'error': e,
            })

    for dist, e in errors.iteritems():
        _log_error(dist, e)
开发者ID:vigilo,项目名称:common,代码行数:42,代码来源:conf.py


示例8: run

    def run(self, msgid):
        logger = get_logger(__name__)
        logger.debug(u'Rule runner: process begins for rule "%s" (msgid=%r)',
                     self._name, msgid)

        def commit(res):
            transaction.commit()
            return res

        def abort(fail):
            error_message = fail.getErrorMessage()

            if not isinstance(error_message, unicode):
                error_message = unicode(error_message, 'utf-8', 'replace')

            logger.error(_('Got an exception while running rule ''"%(rule)s". '
                            'Running the correlator in the foreground '
                            '(service vigilo-correlator debug) may help '
                            'troubleshooting (%(error)s)'), {
                                'rule': self._name,
                                'error': error_message,
                            })
            transaction.abort()
            return fail

        def log_end(res):
            logger.debug(u'Rule runner: process ends for rule "%s"', self._name)
            return res

        transaction.begin()
        d = defer.maybeDeferred(
            self._rule.process,
            self._dispatcher,
            msgid)
        d.addCallback(commit)
        d.addErrback(abort)
        d.addBoth(log_end)
        return d
开发者ID:vigilo,项目名称:correlator,代码行数:38,代码来源:rule_runner.py


示例9: run

    def run(self, func, *args, **kwargs):
        """
        Exécute une fonction interagissant avec la base de données.


        @param func: La fonction à exécuter qui utilise la base de données.
        @type func: C{callable}
        @note: Les arguments supplémentaires passés à cette méthode
            sont transmis à la fonction indiquée par C{func} lorsque
            celle-ci est appelée.
        @note: Cette méthode accepte également un paramètre nommé
            C{transaction} qui indique si le traitement doit avoir
            lieu dans une transaction ou non. Si le paramètre C{disable_txn}
            a été positionné à True à l'initialisation de l'objet,
            le traitement NE SERA PAS encapsulé dans une transaction,
            quelle que soit la valeur de ce paramètre.
        @return: Un Deferred qui sera appelé avec le résultat de
            l'exécution de la fonction.
        @rtype: L{defer.Deferred}
        """
        from vigilo.common.logging import get_logger
        logger = get_logger(__name__)

        txn = kwargs.pop('transaction', True) and not self.disable_txn
        if txn:
            transaction.begin()
        try:
            res = func(*args, **kwargs)
            if txn:
                transaction.commit()
        except KeyboardInterrupt:
            raise
        except:
            res = Failure()
            if txn:
                transaction.abort()
            self.logger.error(res)
        return self._return(res)
开发者ID:vigilo,项目名称:correlator,代码行数:38,代码来源:db_thread.py


示例10: get_logger

################################################################################
"""
Ce module contient la classe de base pour un serveur Vigilo: L{Server}.
"""

from __future__ import absolute_import

import os
import shutil
import glob
import re

from vigilo.common.conf import settings

from vigilo.common.logging import get_logger
LOGGER = get_logger(__name__)

from vigilo.common.gettext import translate
_ = translate(__name__)

from vigilo.vigiconf import conf
from vigilo.vigiconf.lib import VigiConfError
from vigilo.vigiconf.lib.systemcommand import SystemCommand, SystemCommandError


class ServerError(VigiConfError):
    """Exception concernant un objet L{Server}"""

    def __init__(self, value, iServerName = ''):
        super(ServerError, self).__init__(value)
        self.value = value
开发者ID:vigilo,项目名称:vigiconf,代码行数:31,代码来源:base.py


示例11: get_logger

@todo: gérer un I{pool} de process RRDTool
@note: U{http://twistedmatrix.com/documents/current/core/howto/process.html}
"""

import os
import stat
import urllib
from signal import SIGINT, SIGTERM

from twisted.internet import reactor, protocol, defer
from twisted.internet.error import ProcessDone, ProcessTerminated

from vigilo.common import get_rrd_path

from vigilo.common.logging import get_logger
LOGGER = get_logger(__name__, silent_load=True)

from vigilo.common.gettext import translate
_ = translate(__name__)


from vigilo.connector_metro.exceptions import CreationError
from vigilo.connector_metro.exceptions import NotInConfiguration
from vigilo.connector_metro.exceptions import MissingConfigurationData


class NoAvailableProcess(Exception):
    """
    Il n'y a plus de process rrdtool disponible, et pourtant le sémaphore a
    autorisé l'accès
    """
开发者ID:vigilo,项目名称:connector-metro,代码行数:31,代码来源:rrdtool.py


示例12: makeService

def makeService(options):
    """ the service that wraps everything the connector needs. """
    from vigilo.connector.options import getSettings, parseSubscriptions

    settings = getSettings(options, __name__)

    from vigilo.common.logging import get_logger

    LOGGER = get_logger(__name__)

    from vigilo.common.gettext import translate

    _ = translate(__name__)

    from vigilo.connector.client import client_factory
    from vigilo.connector.handlers import buspublisher_factory

    from vigilo.connector_metro.rrdtool import RRDToolPoolManager
    from vigilo.connector_metro.rrdtool import RRDToolManager
    from vigilo.connector_metro.confdb import MetroConfDB
    from vigilo.connector_metro.threshold import ThresholdChecker
    from vigilo.connector_metro.bustorrdtool import BusToRRDtool

    root_service = service.MultiService()

    # Client du bus
    client = client_factory(settings)
    client.setServiceParent(root_service)
    providers = []

    # Configuration
    try:
        conffile = settings["connector-metro"]["config"]
    except KeyError:
        LOGGER.error(
            _("Please set the path to the configuration " "database generated by VigiConf in the settings.ini.")
        )
        sys.exit(1)
    confdb = MetroConfDB(conffile)
    confdb.setServiceParent(root_service)

    try:
        must_check_th = settings["connector-metro"].as_bool("check_thresholds")
    except KeyError:
        must_check_th = True

    # Gestion RRDTool
    rrd_base_dir = settings["connector-metro"]["rrd_base_dir"]
    rrd_path_mode = settings["connector-metro"]["rrd_path_mode"]
    rrd_bin = settings["connector-metro"].get("rrd_bin", "/usr/bin/rrdtool")
    rrdcached = settings["connector-metro"].get("rrdcached", None)
    try:
        pool_size = settings["connector-metro"].as_int("rrd_processes")
    except KeyError:
        pool_size = None
    rrdtool_pool = RRDToolPoolManager(
        rrd_base_dir, rrd_path_mode, rrd_bin, check_thresholds=must_check_th, rrdcached=rrdcached, pool_size=pool_size
    )
    rrdtool = RRDToolManager(rrdtool_pool, confdb)

    # Gestion des seuils
    if must_check_th:
        threshold_checker = ThresholdChecker(rrdtool, confdb)
        bus_publisher = buspublisher_factory(settings, client)
        bus_publisher.registerProducer(threshold_checker, streaming=True)
        providers.append(bus_publisher)
    else:
        threshold_checker = None

    # Gestionnaire principal des messages
    bustorrdtool = BusToRRDtool(confdb, rrdtool, threshold_checker)
    bustorrdtool.setClient(client)
    subs = parseSubscriptions(settings)
    queue = settings["bus"]["queue"]
    queue_messages_ttl = int(settings["bus"].get("queue_messages_ttl", 0))
    bustorrdtool.subscribe(queue, queue_messages_ttl, subs)
    providers.append(bustorrdtool)

    # Statistiques
    from vigilo.connector.status import statuspublisher_factory

    status_publisher = statuspublisher_factory(settings, client, providers=providers)

    return root_service
开发者ID:vigilo,项目名称:connector-metro,代码行数:84,代码来源:__init__.py


示例13: main

def main(*args):
    """
    Point d'entrée du script qui ferme les événements en vert
    dans le bac à événements (VigiBoard).

    @note: Cette fonction ne rend pas la main, mais quitte
        l'exécution de Python à la fin de sa propre exécution.
        Les codes de retour possibles pour le script sont :
        * 0 : pas d'erreur
        * 1 : exception levée durant l'exécution
        * 2 : paramètres / options incorrects pour le script
    """
    parser = OptionParser()
    parser.add_option("-d", "--days", action="store", dest="days",
        type="int", default=None, help=_("Close events which are "
        "at least DAYS old. DAYS must be a positive non-zero integer."))
    parser.add_option("-u", "--up", action="store_true", dest="state_up",
        default=False, help=_("Close events for hosts in the 'UP' state."))
    parser.add_option("-k", "--ok", action="store_true", dest="state_ok",
        default=False, help=_("Close events for services in the 'OK' state."))
    parser.add_option("-c", "--config", action="store", dest="config",
        type="string", default=None, help=_("Load configuration from "
        "this file."))

    (options, args) = parser.parse_args()

    from vigilo.common.conf import settings
    if options.config:
        settings.load_file(options.config)
    else:
        settings.load_module(__name__)

    from vigilo.common.logging import get_logger
    logger = get_logger(__name__)

    if args:
        logger.error(_('Too many arguments'))
        sys.exit(2)

    from vigilo.models.configure import configure_db
    try:
        configure_db(settings['database'], 'sqlalchemy_')
    except KeyError:
        logger.error(_('No database configuration found'))
        sys.exit(2)

    # Le script doit être appelé avec au moins une
    # des deux options parmi -k et -u pour être utile.
    if not options.state_up and not options.state_ok:
        parser.error(N_(
            "Either -k or -u must be used. "
            "See %s --help for more information.") % sys.argv[0])
        sys.exit(2)

    try:
        res = close_green(logger, options)
        transaction.commit()
    except Exception: # pylint: disable-msg=W0703
        # W0703: Catch "Exception"
        logger.exception(_('Some error occurred:'))
        transaction.abort()
        sys.exit(1)

    logger.info(
        _("Successfully closed %d events matching the given criteria."),
        res
    )
    sys.exit(0)
开发者ID:vigilo,项目名称:models,代码行数:68,代码来源:close_vigiboard.py


示例14: main

def main(*args):
    """
    Point d'entrée du script qui supprime les événements
    obsolètes du bac à événements (VigiBoard).

    @note: Cette fonction ne rend pas la main, mais quitte
        l'exécution de Python à la fin de sa propre exécution.
        Les codes de retour possibles pour le script sont :
        * 0 : pas d'erreur
        * 1 : exception levée durant l'exécution
        * 2 : paramètres / options incorrects pour le script
    """
    parser = OptionParser()
    parser.add_option("-d", "--days", action="store", dest="days",
        type="int", default=None, help=_("Remove closed events which are "
        "at least DAYS old. DAYS must be a positive non-zero integer."))
    parser.add_option("-s", "--size", action="store", dest="size",
        type="int", default=None, help=_("Remove closed events, starting "
        "with the oldest ones, when the Vigilo database starts occupying "
        "more then SIZE bytes. SIZE must be a positive non-zero integer."))
    parser.add_option("-c", "--config", action="store", dest="config",
        type="string", default=None, help=_("Load configuration from "
        "this file."))

    (options, args) = parser.parse_args()

    from vigilo.common.conf import settings
    if options.config:
        settings.load_file(options.config)
    else:
        settings.load_module(__name__)

    from vigilo.common.logging import get_logger
    logger = get_logger(__name__)

    if args:
        logger.error(_('Too many arguments'))
        sys.exit(2)

    from vigilo.models.configure import configure_db
    try:
        configure_db(settings['database'], 'sqlalchemy_')
    except KeyError:
        logger.error(_('No database configuration found'))
        sys.exit(2)

    url = make_url(settings['database']['sqlalchemy_url'])

    if options.days is None and options.size is None:
        parser.error(N_(
            "Either -d or -s must be used. "
            "See %s --help for more information.") % sys.argv[0])
        sys.exit(2)

    try:
        clean_vigiboard(logger, options, url)
        transaction.commit()
        sys.exit(0)
    except Exception: # pylint: disable-msg=W0703
        # W0703: Catch "Exception"
        logger.exception(_('Some error occurred:'))
        transaction.abort()
        sys.exit(1)
开发者ID:vigilo,项目名称:models,代码行数:63,代码来源:purge_vigiboard.py


示例15: change_password

def change_password(*args):
    """
    Change le mot de passe d'un utilisateur
    dans la base de données de Vigilo.
    """

    from vigilo.common.gettext import translate
    _ = translate(__name__)

    usage=_("%prog [options] [username]"),
    parser = OptionParser(
        description=_("Changes Vigilo's password for user 'username' "
            "or the currently logged in user if this argument is omitted."),
    )
    parser.add_option("-c", "--config", action="store", dest="config",
        type="string", default=None, help=_("Load configuration from "
        "this file."))
    parser.add_option("-f", action="store", dest="passfile", metavar="FILE",
        type="string", default=None, help=_("Read the new password from "
        "this file."))

    (options, args) = parser.parse_args()

    from vigilo.common.conf import settings
    if options.config:
        settings.load_file(options.config)
    else:
        settings.load_module(__name__)

    from vigilo.common.logging import get_logger
    logger = get_logger(__name__)

    if len(args) > 1:
        print _('Too many arguments')
        sys.exit(1)

    from vigilo.models.configure import configure_db
    try:
        configure_db(settings['database'], 'sqlalchemy_')
    except KeyError:
        print _('No database configuration found')
        sys.exit(1)

    from vigilo.models.session import DBSession
    from vigilo.models import tables

    current_password = None
    current_user = pwd.getpwuid(os.getuid())
    username = current_user.pw_name

    if len(args) > 0:
        username = args[0]

    msg = _("Changing Vigilo password for user '%s'.")
    logger.info(msg, username)
    print msg % username

    # Si l'utilisateur n'est pas "root" (UID 0),
    # alors on demande le mot de passe actuel.
    if current_user.pw_uid != 0:
        current_password = getpass.getpass(_("Enter current password: "))

    user = tables.User.by_user_name(unicode(username))
    if user is None or (current_user.pw_uid != 0 and \
        not user.validate_password(current_password, True)):
        print _("Bad login or password.")
        sys.exit(1)

    if options.passfile:
        passfile = open(options.passfile, "r")
        new_password = new_password2 = passfile.readline().strip()
        passfile.close()
    else:
        new_password = getpass.getpass(_("Enter new password: "))
        new_password2 = getpass.getpass(_("Confirm new password: "))

    # Le nouveau mot de passe et sa
    # confirmation doivent coïncider.
    if new_password != new_password2:
        print _("Sorry, passwords do not match.")
        sys.exit(1)

    # Si le nouveau mot de passe est le même
    # que l'ancien, il n'y a rien à faire.
    if current_password == new_password:
        print _("Password unchanged.")
        sys.exit(0)

    user.password = new_password
    try:
        DBSession.flush()
        transaction.commit()
    except Exception: # pylint: disable-msg=W0703
        # W0703: Catch "Exception"
        msg = _("An exception occurred while updating password for user '%s'.")
        logger.exception(msg, username)
        print msg % username
        sys.exit(1)

    # Si on arrive ici, c'est que tout s'est bien passé.
#.........这里部分代码省略.........
开发者ID:vigilo,项目名称:models,代码行数:101,代码来源:passwd.py



注:本文中的vigilo.common.logging.get_logger函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python session.DBSession类代码示例发布时间:2022-05-26
下一篇:
Python gettext.translate函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap