Changeset - c2659d40ee53
[Not reviewed]
default
0 3 0
Dennis Fink - 9 years ago 2016-10-24 14:46:46
dennis.fink@c3l.lu
Added logging
3 files changed with 60 insertions and 2 deletions:
0 comments (0 inline, 0 general)
setup.py
Show inline comments
 
@@ -9,7 +9,7 @@ packages.append('spaceapi.schema')
 

	
 
setup(
 
    name='c3l_spaceapi',
 
    version='0.0.7',
 
    version='0.0.8',
 
    url=None,
 
    license='GPLv3+',
 
    author='Dennis Fink',
spaceapi/__init__.py
Show inline comments
 
@@ -3,12 +3,21 @@ import os
 
import os.path
 
import base64
 

	
 
import logging
 
import logging.handlers
 

	
 
from flask import Flask
 
from flask_bootstrap import Bootstrap
 

	
 
config_file = os.path.abspath('config.json')
 
bootstrap = Bootstrap()
 

	
 
logging_debug_string = ('%(levelname)s:%(name)s:%(asctime)s:%(filename)s'
 
                        ':%(lineno)d: %(message)s')
 
logging_string = '%(levelname)s - %(name)s - %(asctime)s - %(message)s'
 
logging_debug_formatter = logging.Formatter(logging_debug_string)
 
logging_formatter = logging.Formatter(logging_string)
 

	
 

	
 
def create_app():
 
    app = Flask(__name__)
 
@@ -40,6 +49,40 @@ def create_app():
 

	
 
    bootstrap.init_app(app)
 

	
 
    app.logger.setLevel(logging.DEBUG)
 
    stream_handler = logging.StreamHandler()
 
    stream_handler.setLevel(logging.DEBUG)
 
    stream_handler.setFormatter(logging_debug_formatter)
 

	
 
    if not os.path.exists('spaceapi.log'):
 
        open('spaceapi.log', mode='a').close()
 

	
 
    rotating_file_handler = logging.handlers.RotatingFileHandler(
 
        'spaceapi.log',
 
        maxBytes=1300000,
 
        backupCount=10,
 
        encoding='utf-8')
 
    rotating_file_handler.setLevel(logging.INFO)
 
    rotating_file_handler.setFormatter(logging_formatter)
 

	
 
    if app.debug or ('ENABLE_DEBUG_LOG' in app.config and
 
                     app.config['ENABLE_DEBUG_LOG']):
 

	
 
        if not os.path.exists('spaceapi_debug.log'):
 
            open('spaceapi_debug.log', mode='a').close()
 

	
 
        second_rotating_file_handler = logging.handlers.RotatingFileHandler(
 
            'spaceapi_debug.log',
 
            maxBytes=1300000,
 
            backupCount=20,
 
            encoding='utf-8')
 
        second_rotating_file_handler.setLevel(logging.DEBUG)
 
        second_rotating_file_handler.setFormatter(logging_debug_formatter)
 
        app.logger.addHandler(second_rotating_file_handler)
 

	
 
    app.logger.addHandler(stream_handler)
 
    app.logger.addHandler(rotating_file_handler)
 

	
 
    @app.after_request
 
    def add_headers(response):
 
        response.headers.setdefault('Access-Control-Allow-Origin', '*')
spaceapi/utils.py
Show inline comments
 
@@ -2,6 +2,7 @@ import json
 
import os.path
 
from time import time
 
import random
 
from functools import wraps
 

	
 
from flask import request, current_app
 

	
 
@@ -129,7 +130,11 @@ class ActiveStatus(Singleton, dict):
 
                tweet = random.choice(possible_open_tweets)
 
            else:
 
                tweet = random.choice(possible_closed_tweets)
 
            send_tweet(tweet)
 
            try:
 
                send_tweet(tweet)
 
            except Exception as e:
 
                current_app.logger.error('Sending tweet failed! %s' % e,
 
                                         exc_info=True)
 

	
 
            if not value:
 
                if 'people_now_present' in self['sensors']:
 
@@ -177,3 +182,13 @@ def first(iterable, keys):
 
            return key
 

	
 
    raise ValueError
 

	
 

	
 
def pass_active_status(f):
 
    @wraps(f)
 
    def wrapper(*args, **kwargs):
 
        status = ActiveStatus()
 
        rv = f(status, *args, **kwargs)
 
        status.save_last_state()
 
        return rv
 
    return wrapper
0 comments (0 inline, 0 general)