diff --git a/.env.sample b/.env.sample index da80b2e..e50c066 100644 --- a/.env.sample +++ b/.env.sample @@ -13,5 +13,6 @@ MODEM_USERNAME = "admin" PI_EMAIL = "pi@gmail.com" PI_EMAIL_PASSWORD = "pi_email_password" PING_COUNT = 5 +SENTRY_DSN = "https://examplePublicKey@o0.ingest.sentry.io/0" SMTP_PORT = 587 SMTP_SERVER = "smtp.gmail.com" diff --git a/app.py b/app.py index eae80fc..35f1578 100644 --- a/app.py +++ b/app.py @@ -1,6 +1,16 @@ import asyncio +import sentry_sdk +from dotenv import load_dotenv, find_dotenv +from os import getenv from src.InternetStatusReporter import InternetStatusReporter +load_dotenv(find_dotenv()) + +sentry_sdk.init( + getenv('SENTRY_DSN'), + traces_sample_rate=1.0, +) + if __name__ == "__main__": isr = InternetStatusReporter() loop = asyncio.get_event_loop() diff --git a/requirements.txt b/requirements.txt index 44d3b44..6d64913 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,4 +3,5 @@ MechanicalSoup mysql.connector pingparsing python-dotenv +sentry-sdk tcp-latency diff --git a/src/DatabaseInteractor.py b/src/DatabaseInteractor.py index 392408d..5245ea4 100644 --- a/src/DatabaseInteractor.py +++ b/src/DatabaseInteractor.py @@ -3,11 +3,8 @@ class DatabaseInteractor(MailLogger): def __init__(self): - from dotenv import load_dotenv, find_dotenv super().__init__() - load_dotenv(find_dotenv()) - self.connection = None def __del__(self): diff --git a/src/InternetStatusReporter.py b/src/InternetStatusReporter.py index 840fe84..ffaa44a 100644 --- a/src/InternetStatusReporter.py +++ b/src/InternetStatusReporter.py @@ -5,13 +5,10 @@ class InternetStatusReporter(DatabaseInteractor): def __init__(self): - from dotenv import load_dotenv, find_dotenv from src.utils import get_addresses super().__init__() - load_dotenv(find_dotenv()) - self.NETWORK_STATUS = { 'NORMAL': 0, 'DEGRADED': 1, diff --git a/src/MailLogger.py b/src/MailLogger.py index b5ec587..b8865d3 100644 --- a/src/MailLogger.py +++ b/src/MailLogger.py @@ -1,12 +1,9 @@ class MailLogger: def __init__(self): - from dotenv import load_dotenv, find_dotenv from logging import ERROR, INFO, basicConfig, getLogger, Formatter from src.MailHandler import MailHandler from os import getenv - load_dotenv(find_dotenv()) - logFormat = '%(asctime)s - %(levelname)s: %(message)s' basicConfig( filename=getenv('LOG_FILE'), diff --git a/src/ModemReporter.py b/src/ModemReporter.py index 982c517..af8ad27 100644 --- a/src/ModemReporter.py +++ b/src/ModemReporter.py @@ -2,13 +2,10 @@ class ModemReporter(DatabaseInteractor): def __init__(self): - from dotenv import load_dotenv, find_dotenv from os import getenv super().__init__() - load_dotenv(find_dotenv()) - MODEM_ADDRESS = getenv('MODEM_ADDRESS') self.__setup_browser()