Files
wallabicher/main.py
2024-02-28 20:33:44 +01:00

36 lines
1.2 KiB
Python

import json
import threading
import logging
from logging.handlers import RotatingFileHandler
from item_monitor import ItemMonitor
from worker import Worker
# Configure the console logger
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.INFO)
console_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
# Configure the file logger
file_handler = RotatingFileHandler('monitor.log', maxBytes=10e6)
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
# Configure the root logger with both handlers
logging.basicConfig(level=logging.NOTSET,
handlers=[console_handler, file_handler])
def parse_items_to_monitor():
with open("args.json") as f:
args = json.load(f)
items = [ItemMonitor.load_from_json(item) for item in args]
return items
if __name__ == "__main__":
logger = logging.getLogger(__name__)
items = parse_items_to_monitor()
for item in items:
worker = Worker(item)
thread = threading.Thread(target=worker.run)
thread.start()