From ed9356b7f95574c738feb72037fe8af845e01f2a Mon Sep 17 00:00:00 2001 From: Marco Zeisler Date: Tue, 4 May 2021 20:41:03 +0200 Subject: [PATCH] use logging instead of prints; --- backend/app_be/apps.py | 5 ++++- backend/app_be/settings.py | 21 +++------------------ backend/app_be/views/rest_api.py | 3 --- backend/app_be/views/twitter_api.py | 12 ++++++++---- backend/app_be/views/twitter_bot.py | 11 +++++++---- 5 files changed, 22 insertions(+), 30 deletions(-) diff --git a/backend/app_be/apps.py b/backend/app_be/apps.py index 4348922..7ab0a08 100644 --- a/backend/app_be/apps.py +++ b/backend/app_be/apps.py @@ -1,7 +1,10 @@ import sys +import logging from django.apps import AppConfig +logger = logging.getLogger(__name__) + class AppBeConfig(AppConfig): name = 'app_be' @@ -12,4 +15,4 @@ class AppBeConfig(AppConfig): from app_be.views.twitter_bot import twitter_bot twitter_bot1 = twitter_bot() twitter_bot1.start() - print("bot started") \ No newline at end of file + logger.debug("bot started") \ No newline at end of file diff --git a/backend/app_be/settings.py b/backend/app_be/settings.py index 968b258..f79fd27 100644 --- a/backend/app_be/settings.py +++ b/backend/app_be/settings.py @@ -182,26 +182,11 @@ LOGGING = { 'level': 'DEBUG', 'class': 'logging.StreamHandler', 'formatter': 'verbose' - }, - 'logfile': { - 'level': 'DEBUG', - 'class': 'logging.FileHandler', - 'filename': BASE_DIR + "/../logfile", - 'formatter': 'verbose' - }, + } }, - 'loggers': { - 'rdg': { - 'handlers': ['console', 'logfile'], - 'level': 'DEBUG', - }, - 'rdg_rest': { - 'handlers': ['console', 'logfile'], - 'level': 'DEBUG', - }, - 'rdg_angular': { - 'handlers': ['console', 'logfile'], + 'app_be': { + 'handlers': ['console'], 'level': 'DEBUG', }, }, diff --git a/backend/app_be/views/rest_api.py b/backend/app_be/views/rest_api.py index d5d5611..88cac37 100644 --- a/backend/app_be/views/rest_api.py +++ b/backend/app_be/views/rest_api.py @@ -19,7 +19,6 @@ def authorize(request): logger.debug('Validating request: {}'.format(request)) if 'Authorization' not in request.headers: - print(f"Authorization header missing") logger.error(f"Authorization header missing") return None @@ -38,11 +37,9 @@ def authorize(request): if 'sub' in payload: return payload['sub'] except PyJwtException as e: - print(f"Exception caught. Error: {e}") logger.error(f"Exception caught. Error: {e}") return None except UnicodeDecodeError as e2: - print(f"Exception caught. Error: {e2}") logger.error(f"Exception caught. Error: {e2}") return None return None diff --git a/backend/app_be/views/twitter_api.py b/backend/app_be/views/twitter_api.py index d63f4eb..1a3e123 100644 --- a/backend/app_be/views/twitter_api.py +++ b/backend/app_be/views/twitter_api.py @@ -1,9 +1,13 @@ +import logging + from datetime import datetime import twitter import os from dotenv import load_dotenv +logger = logging.getLogger(__name__) + load_dotenv() api = twitter.Api(consumer_key=os.getenv('TWITTER_API_KEY'), @@ -16,18 +20,18 @@ class twitter_api: @staticmethod def check_credentials(): - print(api.VerifyCredentials()) + logger.debug("{}".format(api.VerifyCredentials())) @staticmethod def get_last_six_tweets(): last_six = api.GetUserTimeline(screen_name='waecmg4',count=6,exclude_replies=True,include_rts=False) - print(type(last_six)) + logger.debug("type(last_six): {}".format(type(last_six))) response = [] for tweet in last_six: - print(tweet) + logger.debug("Tweet: {}".format(tweet)) parsed_date = datetime.strptime(tweet.created_at,"%a %b %d %H:%M:%S +0000 %Y") tweet_date = datetime.strftime(parsed_date,"%d.%m.%y %H:%M") @@ -50,7 +54,7 @@ class twitter_api: response = [] for tweet in last_six: - print(tweet) + logger.debug("Tweet: {}".format(tweet)) parsed_date = datetime.strptime(tweet.created_at, "%a %b %d %H:%M:%S +0000 %Y") tweet_date = datetime.strftime(parsed_date, "%d.%m.%y %H:%M") diff --git a/backend/app_be/views/twitter_bot.py b/backend/app_be/views/twitter_bot.py index 7d4852b..6ef2a87 100644 --- a/backend/app_be/views/twitter_bot.py +++ b/backend/app_be/views/twitter_bot.py @@ -1,3 +1,4 @@ +import logging import threading from datetime import datetime import time @@ -7,6 +8,8 @@ from app_be.views.twitter_api import twitter_api import feedparser from dateutil import parser +logger = logging.getLogger(__name__) + class twitter_bot(threading.Thread): @@ -19,7 +22,7 @@ class twitter_bot(threading.Thread): while True: - print("Looking for new results in active feeds") + logger.debug("Looking for new results in active feeds") feed_set = Feed.objects.filter(active=True) for feed in feed_set: @@ -42,7 +45,7 @@ class twitter_bot(threading.Thread): if search_keywords(keywords, current, feed.match_all_keywords): - print("Keyword found") + logger.debug("Keyword found") # preparing tweet new_tweet = Tweet() @@ -60,8 +63,8 @@ class twitter_bot(threading.Thread): # if tweet not in db yet if not Tweet.objects.filter(text=new_tweet.text): # call twitter api to post tweet and store to db - print("Posting update on Twitter") - print(new_tweet) + logger.debug("Posting update on Twitter") + logger.debug("new_tweet: {}".format(new_tweet)) twitter_api.post_update(new_tweet.text, new_tweet.url) new_tweet.save()