예제 #1
0
def setupLogging(log_level, raet_log_level=None, filename=None):
    """
    Setup for logging.
    log level is TRACE by default.
    """
    if filename:
        d = os.path.dirname(filename)
        if not os.path.exists(d):
            os.makedirs(d)

    addTraceToLogging()

    if filename:
        mode = 'w'
        h = logging.FileHandler(filename, mode)

    else:
        h = logging.StreamHandler(sys.stdout)
    handlers = [h]
    log_format = '{relativeCreated:,.0f} {levelname:7s} {message:s}'
    fmt = logging.Formatter(log_format, None, style='{')
    for h in handlers:
        if h.formatter is None:
            h.setFormatter(fmt)
        logging.root.addHandler(h)
    logging.root.setLevel(log_level)

    console = getConsole()
    verbosity = raet_log_level \
        if raet_log_level is not None \
        else Console.Wordage.terse
    console.reinit(verbosity=verbosity)
    global loggingConfigured
    loggingConfigured = True
예제 #2
0
파일: testing.py 프로젝트: systronix/ioflo
def Test(fileName = None, period = 0.2, real = False,
         verbose = 0, profiling = False):
    """Module self test

    """
    console = getConsole(verbosity=console.Wordage[verbose])

    import building
    import tasking

    if not fileName:
        fileName = "../plan/box1.flo"

    console.terse( "Building ...")
    skedder = tasking.Skedder(name = "TestSkedder",
                              period = period,
                              real = real,
                              filepath = fileName)
    if skedder.build():
        console.terse( "\n\nStarting mission from file 0}...\n".format(fileName))
        if not profiling:
            skedder.run()
        else:
            cProfile.runctx('skedder.run()',globals(),locals(), './profiles/skedder')

            p = pstats.Stats('./profiles/skedder')
            p.sort_stats('time').print_stats()
            p.print_callers()
            p.print_callees()


    return skedder
예제 #3
0
def setupTestLogging():
    logging.basicConfig(
        level=TRACE_LOG_LEVEL,
        format='{relativeCreated:,.0f} {levelname:7s} {message:s}',
        style='{')
    console = getConsole()
    console.reinit(verbosity=console.Wordage.concise)
예제 #4
0
def setupTestLogging():
    logging.basicConfig(
        level=TRACE_LOG_LEVEL,
        format='{relativeCreated:,.0f} {levelname:7s} {message:s}',
        style='{')
    console = getConsole()
    console.reinit(verbosity=console.Wordage.concise)
예제 #5
0
파일: log.py 프로젝트: aigoncharov/plenum
    def setupRaet(self, raet_log_level=None, raet_log_file=None):
        console = getConsole()

        verbosity = raet_log_level \
            if raet_log_level is not None \
            else self._default_raet_verbosity
        file = raet_log_file or self._default_raet_log_file

        logging.debug("Setting RAET log level {}".format(verbosity),
                      extra={"cli": False})

        console.reinit(verbosity=verbosity, path=file, flushy=True)
예제 #6
0
def setupLogging(log_level, raet_log_level=None, filename=None,
                 raet_log_file=None):
    """
    Setup for logging.
    log level is TRACE by default.
    """

    from plenum.common.config_util import getConfig
    # TODO: This should take directory
    config = getConfig()
    addTraceToLogging()
    addDisplayToLogging()

    logHandlers = []
    if filename:
        d = os.path.dirname(filename)
        if not os.path.exists(d):
            os.makedirs(d)
        fileHandler = TimeAndSizeRotatingFileHandler(
            filename,
            when=config.logRotationWhen,
            interval=config.logRotationInterval,
            backupCount=config.logRotationBackupCount,
            utc=True,
            maxBytes=config.logRotationMaxBytes)
        logHandlers.append(fileHandler)
    else:
        logHandlers.append(logging.StreamHandler(sys.stdout))

    fmt = logging.Formatter(fmt=config.logFormat, style=config.logFormatStyle)

    for h in logHandlers:
        if h.formatter is None:
            h.setFormatter(fmt)
        logging.root.addHandler(h)

    logging.root.setLevel(log_level)

    console = getConsole()

    defaultVerbosity = getRAETLogLevelFromConfig("RAETLogLevel",
                                                 Console.Wordage.terse, config)
    logging.info("Choosing RAET log level {}".format(defaultVerbosity),
                 extra={"cli": False})
    verbosity = raet_log_level \
        if raet_log_level is not None \
        else defaultVerbosity
    raetLogFilePath = raet_log_file or getRAETLogFilePath("RAETLogFilePath",
                                                          config)
    console.reinit(verbosity=verbosity, path=raetLogFilePath, flushy=True)
    global loggingConfigured
    loggingConfigured = True
예제 #7
0
파일: testing.py 프로젝트: systronix/ioflo
            p = pstats.Stats('./profiles/skedder')
            p.sort_stats('time').print_stats()
            p.print_callers()
            p.print_callees()


    return skedder


if __name__ == "__main__":
    import sys
    import getopt

    from ioflo.base.consoling import getConsole

    console = getConsole(verbosity=console.Wordage.profuse)
    console.profuse(str(sys.argv) + "\n")

    filename = '../plan/box1.flo'
    period = 0.125
    verbose = 0
    real = False

    usage = "python wradia/testing.py -f filename -p period -v level -r -h"

    try:
        (opts, pargs) = getopt.getopt(sys.argv[1:], "hrv:f:p:") #format
    except getopt.GetoptError:
        console.profuse(str(opts) + "usage\n")
        console.concise( usage)
예제 #8
0
'''
# pylint: skip-file
# pylint: disable=C0103
import sys
if sys.version_info < (2, 7):
    import unittest2 as unittest
else:
    import unittest

import os

from ioflo.base.odicting import odict
from ioflo.base.aiding import Timer, StoreTimer
from ioflo.base import storing
from ioflo.base.consoling import getConsole
console = getConsole()

# Import raet libs
from raet.abiding import *  # import globals
from raet import raeting, nacling
from raet.road import packeting, estating, keeping, stacking, transacting

def setUpModule():
    console.reinit(verbosity=console.Wordage.concise)

def tearDownModule():
    pass

class BasicTestCase(unittest.TestCase):
    """"""
예제 #9
0
파일: actors.py 프로젝트: mjura/salt-1
Test behaviors used by test plans
'''
# pylint: skip-file
# pylint: disable=C0103

import os
import stat
import time
from collections import deque

# Import ioflo libs
import ioflo.base.deeding
from ioflo.base.odicting import odict

from ioflo.base.consoling import getConsole
console = getConsole()

from raet import raeting, nacling
from raet.lane.stacking import LaneStack
from raet.lane.yarding import RemoteYard
from raet.road.estating import RemoteEstate
from raet.road.stacking import RoadStack
from raet.stacking import Stack

from salt.daemons import salting
from salt.utils.event import tagify


class DeedTestWrapper():
    def assertTrue(self, condition):
        if not condition:
예제 #10
0
def testConnectionWithHaChanged(tdir):
    console = getConsole()
    console.reinit(verbosity=console.Wordage.verbose)

    alphaSigner = SimpleSigner()
    betaSigner = SimpleSigner()

    alphaPrivateer = Privateer()
    betaPrivateer = Privateer()

    logger.debug("Alpha's verkey {}".format(alphaSigner.naclSigner.verhex))
    logger.debug("Beta's verkey {}".format(betaSigner.naclSigner.verhex))

    alpha = None

    def setupAlpha(ha):
        nonlocal alpha
        alpha = RoadStack(name='alpha',
                          ha=ha,
                          sigkey=alphaSigner.naclSigner.keyhex,
                          prikey=alphaPrivateer.keyhex,
                          auto=AutoMode.never,
                          basedirpath=tdir)

        alpha.keep.dumpRemoteRoleData(
            {
                "acceptance": Acceptance.accepted.value,
                "verhex": betaSigner.naclSigner.verhex,
                "pubhex": betaPrivateer.pubhex
            }, "beta")

    oldHa = genHa()
    setupAlpha(oldHa)

    beta = RoadStack(name='beta',
                     ha=genHa(),
                     sigkey=betaSigner.naclSigner.keyhex,
                     prikey=betaPrivateer.keyhex,
                     main=True,
                     auto=AutoMode.never,
                     basedirpath=tdir,
                     mutable=True)

    beta.keep.dumpRemoteRoleData(
        {
            "acceptance": Acceptance.accepted.value,
            "verhex": alphaSigner.naclSigner.verhex,
            "pubhex": alphaPrivateer.pubhex
        }, "alpha")

    try:
        betaRemote = RemoteEstate(stack=alpha, ha=beta.ha)
        alpha.addRemote(betaRemote)
        alpha.join(uid=betaRemote.uid, cascade=True)
        handshake(alpha, beta)
        sendMsgs(alpha, beta, betaRemote)
        logger.debug("beta knows alpha as {}".format(
            getRemote(beta, "alpha").ha))
        cleanup(alpha)

        newHa = genHa()
        logger.debug("alpha changing ha to {}".format(newHa))

        setupAlpha(newHa)
        betaRemote = RemoteEstate(stack=alpha, ha=beta.ha)
        alpha.addRemote(betaRemote)
        alpha.join(uid=betaRemote.uid, cascade=True)
        handshake(alpha, beta)
        sendMsgs(alpha, beta, betaRemote)
        logger.debug("beta knows alpha as {}".format(
            getRemote(beta, "alpha").ha))
    finally:
        cleanup(alpha, beta)
예제 #11
0
def testConnectionWithHaChanged(tdir):
    console = getConsole()
    console.reinit(verbosity=console.Wordage.verbose)

    alphaSigner = SimpleSigner()
    betaSigner = SimpleSigner()

    alphaPrivateer = Privateer()
    betaPrivateer = Privateer()

    logger.debug("Alpha's verkey {}".format(alphaSigner.naclSigner.verhex))
    logger.debug("Beta's verkey {}".format(betaSigner.naclSigner.verhex))

    alpha = None

    def setupAlpha(ha):
        nonlocal alpha
        alpha = RoadStack(name='alpha',
                          ha=ha,
                          sigkey=alphaSigner.naclSigner.keyhex,
                          prikey=alphaPrivateer.keyhex,
                          auto=AutoMode.never,
                          basedirpath=tdir)

        alpha.keep.dumpRemoteRoleData({
            "acceptance": Acceptance.accepted.value,
            "verhex": betaSigner.naclSigner.verhex,
            "pubhex": betaPrivateer.pubhex
        }, "beta")

    oldHa = genHa()
    setupAlpha(oldHa)

    beta = RoadStack(name='beta',
                     ha=genHa(),
                     sigkey=betaSigner.naclSigner.keyhex,
                     prikey=betaPrivateer.keyhex,
                     main=True,
                     auto=AutoMode.never,
                     basedirpath=tdir, mutable=True)

    beta.keep.dumpRemoteRoleData({
        "acceptance": Acceptance.accepted.value,
        "verhex": alphaSigner.naclSigner.verhex,
        "pubhex": alphaPrivateer.pubhex
    }, "alpha")

    try:
        betaRemote = RemoteEstate(stack=alpha, ha=beta.ha)
        alpha.addRemote(betaRemote)
        alpha.join(uid=betaRemote.uid, cascade=True)
        handshake(alpha, beta)
        sendMsgs(alpha, beta, betaRemote)
        logger.debug("beta knows alpha as {}".
                     format(getRemote(beta, "alpha").ha))
        cleanup(alpha)

        newHa = genHa()
        logger.debug("alpha changing ha to {}".format(newHa))

        setupAlpha(newHa)
        betaRemote = RemoteEstate(stack=alpha, ha=beta.ha)
        alpha.addRemote(betaRemote)
        alpha.join(uid=betaRemote.uid, cascade=True)
        handshake(alpha, beta)
        sendMsgs(alpha, beta, betaRemote)
        logger.debug("beta knows alpha as {}".
                     format(getRemote(beta, "alpha").ha))
    finally:
        cleanup(alpha, beta)