33 lines
740 B
Python
33 lines
740 B
Python
import asyncio
|
|
import json
|
|
from typing import Any
|
|
from multiprocessing import freeze_support
|
|
|
|
from src.core.master_service import MasterService
|
|
|
|
from loguru import logger
|
|
|
|
|
|
def json_logs(message: Any) -> None:
|
|
record = message.record
|
|
data = {
|
|
"timestamp": record["time"].strftime("%d.%m.%y %H.%M.%S %Z%z"),
|
|
"level": record["level"].name,
|
|
"message": record["message"],
|
|
"path": record["file"].path,
|
|
"function": record["function"],
|
|
"line": record["line"],
|
|
}
|
|
print(json.dumps(data))
|
|
|
|
|
|
logger.remove(0)
|
|
logger.add(json_logs)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
freeze_support()
|
|
loop = asyncio.new_event_loop()
|
|
ms = MasterService(loop)
|
|
ms.loop.run_until_complete(ms.run())
|