Example #1
0
    def testQueryableMessages(self):
        """ Logging example with dictionary """
        log = logging.getLogger('query')
        log.setLevel(logging.DEBUG)
        log.addHandler(MongoHandler(self.collection_name, self.db_name))

        log.info({'address': '340 N 12th St', 'state': 'PA', 'country': 'US'})
        log.info({'address': '340 S 12th St', 'state': 'PA', 'country': 'US'})
        log.info({'address': '1234 Market St', 'state': 'PA', 'country': 'US'})

        query = {
            'levelname': 'INFO',
            'msg.address': '340 N 12th St',
        }
        docs_count = self.collection.count_documents(query)
        self.assertEqual(
            docs_count, 1, "Expected query to return 1 "
            "message; it returned %d" % docs_count)
        cursor = self.collection.find(query)
        self.assertEqual(cursor[0]['msg']['address'], '340 N 12th St')

        query = {
            'levelname': 'INFO',
            'msg.state': 'PA',
        }
        docs_count = self.collection.count_documents(query)
        self.assertEqual(docs_count, 3, "Didn't find all three documents")
Example #2
0
    def testLoggingFileConfiguration(self):
        log = logging.getLogger('example')
        log.addHandler(MongoHandler(self.collection_name, self.db_name))

        log.debug('test')

        message = self.collection.find_one({'levelname': 'DEBUG',
                                            'msg': 'test'})
        self.assertEqual(message['msg'], 'test')
Example #3
0
    def testLogging(self):
        """ Simple logging example """
        log = logging.getLogger('log')
        log.setLevel(logging.DEBUG)
        log.addHandler(MongoHandler(self.collection_name, self.db_name))

        log.debug('test')

        r = self.collection.find_one({'levelname': 'DEBUG', 'msg': 'test'})
        self.assertEqual(r['msg'], 'test')
Example #4
0
    def testLoggingException(self):
        """ Logging example with exception """
        log = logging.getLogger('exception')
        log.setLevel(logging.DEBUG)
        log.addHandler(MongoHandler(self.collection_name, self.db_name))

        try:
            1 / 0
        except ZeroDivisionError:
            log.error('test zero division', exc_info=True)

        r = self.collection.find_one({
            'levelname': 'ERROR',
            'msg': 'test zero division'
        })
        self.assertTrue(r['exc_info'].startswith('Traceback'))
Example #5
0
    def testAuthentication(self):
        """ Logging example with authentication """
        log = logging.getLogger('authentication')
        log.addHandler(
            MongoHandler(self.collection_name,
                         self.db_name,
                         username=self.user_name,
                         password=self.password))

        log.error('test')

        message = self.collection.find_one({
            'levelname': 'ERROR',
            'msg': 'test'
        })
        self.assertEqual(message['msg'], 'test')
Example #6
0
    def testLoggingDictConfiguration(self):
        if dictConfig:
            dictConfig(self.configDict)
        else:
            self.assertEqual('Python<2.7', 'Python<2.7')
            return

        log = logging.getLogger('dict_example')
        log.addHandler(MongoHandler(self.collection_name, self.db_name))

        log.debug('testing dictionary config')

        message = self.collection.find_one({'levelname': 'DEBUG',
                                            'msg': 'dict_example'})
        self.assertEqual(message, None,
            "Logger put debug message in when info level handler requested")

        log.info('dict_example')
        message = self.collection.find_one({'levelname': 'INFO',
                                            'msg': 'dict_example'})
        self.assertNotEqual(message, None,
            "Logger didn't insert message into database")
        self.assertEqual(message['msg'], 'dict_example',
            "Logger didn't insert correct message into database")
Example #7
0
 def config_mongolog(self, db_uri, db_name, log_col_name, log_level):
     c_sync = pymongo.MongoClient(db_uri, w=0)
     col = c_sync[db_name][log_col_name]
     logging.getLogger().addHandler(MongoHandler.to(collection=col))
     logging.getLogger().setLevel(log_level)
Example #8
0
# -*- coding: utf-8 *-*
import sys
sys.path.append('..')

import logging

from mongolog import MongoHandler

if __name__ == '__main__':

    log = logging.getLogger('example')
    log.setLevel(logging.DEBUG)

    log.addHandler(MongoHandler.to('mongolog', 'log'))

    log.debug("1 - debug message")
    log.info("2 - info message")
    log.warn("3 - warn message")
    log.error("4 - error message")
    log.critical("5 - critical message")
Example #9
0
import logging
import os
from mongolog import MongoHandler

DEFAULT_PREFIX = '$'

if os.getenv('DEBUG'):
    DB = ''
else:
    DB = ''

log = logging.getLogger('discord')
log.setLevel(logging.INFO)
log.addHandler(MongoHandler.to(db=DB, collection='logs', level=logging.INFO))
handler_stdout = logging.StreamHandler()
handler_stdout.setFormatter(logging.Formatter(logging.BASIC_FORMAT))
log.addHandler(handler_stdout)
Example #10
0
import sys
import os
import weixin
import tool
import time
import math
import hashlib
from mongolog import logerr, log, MongoHandler
from jinja2 import Template
import thread
thread.start_new_thread
app = flask.Flask(__name__, static_folder='../static')
app.secret_key = encrypt('anglestreet2014')
app.config['UPLOAD_FOLDER'] = '../uploads'
# app.debug = True
app.logger.addHandler(MongoHandler())

import route_admin_shop
import route_admin_user
import route_weixin
import route_order
import route_print


@app.route('/api/listshop')
def listshop():
    w = Shop.objects(data__show=True).to_json()
    return w


@app.route("/api/session")
Example #11
0
 def config_mongolog(self, db_uri, db_name, log_col_name, log_level):
     c_sync = pymongo.MongoClient(db_uri, w=0)
     col = c_sync[db_name][log_col_name]
     logging.getLogger().addHandler(MongoHandler.to(collection=col))
     logging.getLogger().setLevel(log_level)