diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b7d36aa..7b9bc57 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -64,5 +64,5 @@ push: - ssh-add ~/.ssh/id_rsa script: - - ssh $BOT_HOST -oStrictHostKeyChecking=accept-new 'cd /opt/discord/tarkov && git pull' + - ssh $BOT_HOST -oStrictHostKeyChecking=accept-new 'cd /opt/discord/tarkov && git pull && pip install -r requirements.txt' diff --git a/bot.py b/bot.py index 3e329a2..1e41bb0 100755 --- a/bot.py +++ b/bot.py @@ -6,11 +6,11 @@ from os.path import isfile from disnake import OptionType, Option, Localized, ApplicationCommandInteraction, Intents, __version__ from disnake.ext.commands import Bot, is_owner from dotenv import load_dotenv +from loguru import logger from __init__ import __version__ as ver from lib.CogsPrep import work_with_cogs, cog_list from lib.Comands import determine_prefix -from lib.Logger import logger load_dotenv() if not isfile('.env') or not getenv('CONF_FILE'): diff --git a/cogs/admin.py b/cogs/admin.py index 0f5c26d..1d4d9f8 100644 --- a/cogs/admin.py +++ b/cogs/admin.py @@ -3,10 +3,10 @@ from asyncio import sleep import disnake from disnake import Option, OptionType, Localized from disnake.ext import commands, tasks +from loguru import logger from lib.Comands import read_json, write_json from lib.DB_Worker import fill_bd, prepare_db, work_with_db -from lib.Logger import logger class Admin(commands.Cog, name='Admin'): diff --git a/cogs/audio.py b/cogs/audio.py index 2f5234d..55775ab 100644 --- a/cogs/audio.py +++ b/cogs/audio.py @@ -4,10 +4,10 @@ import disnake from disnake import OptionChoice, Option, OptionType, Member, VoiceState from disnake.ext import commands from disnake.utils import get +from loguru import logger -from lib.Logger import logger -from lib.Player import play_audio from lib.ListGenerator import ListGenerator +from lib.Player import play_audio class Audio(commands.Cog, name='Audio'): diff --git a/cogs/disabled/funny.py b/cogs/disabled/funny.py index 59e28af..8b67b3c 100644 --- a/cogs/disabled/funny.py +++ b/cogs/disabled/funny.py @@ -3,9 +3,9 @@ from typing import List import disnake from disnake import OptionChoice from disnake.ext import commands +from loguru import logger from lib.Comands import write_json -from lib.Logger import logger class Fun(commands.Cog, name='Fun'): diff --git a/cogs/disabled/test.py b/cogs/disabled/test.py index 494fa08..c88f383 100644 --- a/cogs/disabled/test.py +++ b/cogs/disabled/test.py @@ -1,9 +1,9 @@ import disnake from disnake import Option from disnake.ext import commands +from loguru import logger from lib import YandexPlayer -from lib.Logger import logger class Testing(commands.Cog, name='Testing'): diff --git a/cogs/general.py b/cogs/general.py index 71ffa66..85a3dff 100644 --- a/cogs/general.py +++ b/cogs/general.py @@ -2,7 +2,8 @@ import disnake from disnake import Option, OptionType, Colour from disnake.ext import commands -from lib.Logger import logger +# from lib.Logger import logger +from loguru import logger class General(commands.Cog): diff --git a/cogs/info.py b/cogs/info.py index 79ad3d2..f4dde70 100644 --- a/cogs/info.py +++ b/cogs/info.py @@ -1,13 +1,16 @@ import os + import disnake import psutil - from disnake.ext import commands +from loguru import logger + from __init__ import version_info as ver from lib.Comands import determine_prefix -from lib.Logger import logger +# from lib.Logger import logger + class BotInfo(commands.Cog, name='Bot Info'): def __init__(self, bot: commands.Bot): self.bot = bot # defining bot as global var in class diff --git a/lib/CogsPrep.py b/lib/CogsPrep.py index 9b6ef9c..4ad05ab 100644 --- a/lib/CogsPrep.py +++ b/lib/CogsPrep.py @@ -10,8 +10,8 @@ from os import listdir, rename from typing import List from disnake.ext import commands - -from .Logger import logger +# from .Logger import logger +from loguru import logger async def cog_list(fold: str = './cogs') -> List[str]: diff --git a/lib/DB_Worker.py b/lib/DB_Worker.py index 0b06417..130d962 100644 --- a/lib/DB_Worker.py +++ b/lib/DB_Worker.py @@ -1,6 +1,7 @@ from sqlite3 import connect, Error -from lib.Logger import logger +# from lib.Logger import logger +from loguru import logger class DBReader: diff --git a/lib/Logger.py b/lib/Logger.py deleted file mode 100644 index 24300bb..0000000 --- a/lib/Logger.py +++ /dev/null @@ -1,52 +0,0 @@ -import logging - - -class _CustomFormatter(logging.Formatter): - grey = "\x1b[38;20m" - yellow = "\x1b[33;20m" - red = "\x1b[31;20m" - bold_red = "\x1b[31;1m" - reset = "\x1b[0m" - fmt = "%(asctime)s - [%(levelname)s] -%(module)s- %(message)s" - - FORMATS = { - logging.DEBUG: grey + fmt + reset, - logging.INFO: grey + fmt + reset, - logging.WARNING: yellow + fmt + reset, - logging.ERROR: red + fmt + reset, - logging.CRITICAL: bold_red + fmt + reset - } - - old_factory = logging.getLogRecordFactory() - - def _record_factory(*args, **kwargs): - record = _CustomFormatter.old_factory(*args, **kwargs) - _module = record.module - _levelname = record.levelname - if len(_module) % 2 == 0 and len(_module) < 12: - _module = ' ' * ((12 - len(_module)) // 2) + _module + ' ' * ((12 - len(_module)) // 2) - elif len(_module) % 2 == 1 and len(_module) < 12: - _module = ' ' * ((12 - len(_module)) // 2) + record.module + ' ' * ((12 - len(_module)) // 2 + 1) - if len(_levelname) % 2 == 0 and len(_levelname) < 8: - _levelname = ' ' * ((8 - len(_levelname)) // 2) + _levelname + ' ' * ((8 - len(_levelname)) // 2) - elif len(record.levelname) % 2 == 1 and len(record.module) < 8: - _levelname = ' ' * ((8 - len(_levelname)) // 2) + _levelname + ' ' * ((8 - len(_levelname)) // 2 + 1) - record.module = _module - record.levelname = _levelname - return record - - logging.setLogRecordFactory(_record_factory) - - def format(self, record): - log_fmt = self.FORMATS.get(record.levelno) - formatter = logging.Formatter(log_fmt, "%d-%m-%Y %H:%M:%S") - return formatter.format(record) - - -logger = logging.getLogger('Pisya_Bot') -logger.setLevel(logging.DEBUG) - -ch = logging.StreamHandler() -ch.setLevel(logging.DEBUG) -ch.setFormatter(_CustomFormatter()) -logger.addHandler(ch) diff --git a/lib/Player.py b/lib/Player.py index 231ca28..1466e89 100644 --- a/lib/Player.py +++ b/lib/Player.py @@ -1,10 +1,13 @@ from asyncio import sleep from disnake import FFmpegOpusAudio - -from .Logger import logger +from loguru import logger +# from .Logger import logger + + +@logger.catch async def play_audio(audio, bot, vc): if not bot.voice_clients: logger.error(f'Playing: {audio}') diff --git a/requirements.txt b/requirements.txt index 330d6fb..26a47c5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,3 +2,4 @@ disnake[audio] psutil python-dotenv yandex-music +loguru==0.7.2 \ No newline at end of file