FireBot/logs.py
2023-11-09 15:37:08 -06:00

23 lines
595 B
Python

#!/usr/bin/python3
from datetime import datetime as dt
from sys import stdout, stderr
from typing import Union
def log(
message: str,
origin: str = "Unknown",
level: str = "LOG",
time: Union[dt, str] = "now",
) -> None:
if level in ["EXIT", "CRASH"]:
stream = stderr
else:
stream = stdout
if time == "now":
time = dt.now()
if not "\n" in message:
print(f"[{level}][{origin}][{time}] {message}", file=stream)
else:
for line in message.split("\n"):
print(f"[{level}][{origin}][{time}] {line}", file=stream)