setup logging

This commit is contained in:
Bad_Investment
2021-05-05 20:17:56 +00:00
parent 157eab0b45
commit df9fbe289a
4 changed files with 48 additions and 4 deletions

6
app.py
View File

@@ -10,6 +10,7 @@ import asyncpraw
import pandas as pd
from datetime import datetime
from typing import Optional
import logging
from poapbot.models.settings import RedditSettings, DBSettings, FastAPISettings
@@ -20,7 +21,7 @@ API_SETTINGS = FastAPISettings.parse_obj(SETTINGS['fastapi'])
from poapbot.scraper import RedditScraper
from poapbot.bot import RedditBot
from poapbot.models import metadata, database, Event, Attendee, Claim
from poapbot.models import metadata, database, Event, Attendee, Claim, RequestMessage
engine = sqlalchemy.create_engine(DB_SETTINGS.url)
metadata.create_all(engine)
@@ -33,7 +34,10 @@ app = FastAPI(
app.include_router(CRUDRouter(schema=Event, prefix='event'))
app.include_router(CRUDRouter(schema=Attendee, prefix='attendee'))
app.include_router(CRUDRouter(schema=Claim, prefix='claim'))
app.include_router(CRUDRouter(schema=RequestMessage, prefix='request_message'))
app.state.database = database
logging.config.fileConfig('logging.conf', disable_existing_loggers=True)
@app.on_event('startup')
async def startup_event():

35
logging.conf Normal file
View File

@@ -0,0 +1,35 @@
[loggers]
keys=root,uvicorn,poapbot
[handlers]
keys=consoleHandler
[formatters]
keys=color
[logger_root]
level=INFO
handlers=consoleHandler
[logger_uvicorn]
level=INFO
handlers=consoleHandler
qualname=uvicorn
propagate=0
[logger_poapbot]
level=DEBUG
handlers=consoleHandler
qualname=poapbot
propagate=0
[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=color
args=(sys.stdout,)
[formatter_color]
class=colorlog.ColoredFormatter
format=%(log_color)s%(levelname)-8s%(reset)s %(bg_blue)s[%(name)s]%(reset)s %(message)s
datefmt=%m-%d %H:%M:%S

View File

@@ -7,7 +7,7 @@ import ormar
from ..models import database, Event, Claim, Attendee, RequestMessage
logger = logging.getLogger('redditbot')
logger = logging.getLogger(__name__)
class RedditBot:
@@ -23,6 +23,10 @@ class RedditBot:
await message.mark_read()
logger.info('Received ping, sending pong')
return
elif username == 'reddit':
await message.mark_read()
logger.info('Received message from reddit, skipping')
return
request_message = await RequestMessage.objects.get_or_none(id=message.id)
if request_message:
@@ -32,7 +36,7 @@ class RedditBot:
else:
request_message = RequestMessage(
id=message.id,
username=message.author.name,
username=username,
created=message.created_utc,
subject=message.subject,
body=message.body

View File

@@ -6,4 +6,5 @@ pyyaml==5.4.1
fastapi-crudrouter==0.7.1
ormar[sqlite]==0.10.5
python-multipart==0.0.5
pandas
pandas
colorlog