feat: add log cat

This commit is contained in:
EstrellaXD
2023-06-01 21:52:13 +08:00
parent 65c358ba77
commit e647327109
4 changed files with 22 additions and 20 deletions

View File

@@ -50,7 +50,7 @@ class BangumiDatabase(DataConnector):
db_data = self.__data_to_db(data)
db_data["id"] = self.gen_id()
self._insert(db_data=db_data, table_name=self.__table_name)
logger.debug(f"Insert {data.official_title} into database.")
logger.debug(f"[Database] Insert {data.official_title} into database.")
def insert_list(self, data: list[BangumiData]):
_id = self.gen_id()
@@ -58,7 +58,7 @@ class BangumiDatabase(DataConnector):
item.id = _id + i
data_list = [self.__data_to_db(x) for x in data]
self._insert_list(data_list=data_list, table_name=self.__table_name)
logger.debug(f"Insert {len(data)} bangumi into database.")
logger.debug(f"[Database] Insert {len(data)} bangumi into database.")
def update_one(self, data: BangumiData) -> bool:
db_data = self.__data_to_db(data)
@@ -79,7 +79,7 @@ class BangumiDatabase(DataConnector):
{"rss_link": rss_set, "title_raw": title_raw},
)
self._conn.commit()
logger.debug(f"Update {title_raw} rss_link to {rss_set}.")
logger.debug(f"[Database] Update {title_raw} rss_link to {rss_set}.")
def update_poster(self, title_raw, poster_link: str):
self._cursor.execute(
@@ -91,7 +91,7 @@ class BangumiDatabase(DataConnector):
{"poster_link": poster_link, "title_raw": title_raw},
)
self._conn.commit()
logger.debug(f"Update {title_raw} poster_link to {poster_link}.")
logger.debug(f"[Database] Update {title_raw} poster_link to {poster_link}.")
def delete_one(self, _id: int) -> bool:
self._cursor.execute(
@@ -101,7 +101,7 @@ class BangumiDatabase(DataConnector):
{"id": _id},
)
self._conn.commit()
logger.debug(f"Delete bangumi id: {_id}.")
logger.debug(f"[Database] Delete bangumi id: {_id}.")
return self._cursor.rowcount == 1
def delete_all(self):

View File

@@ -27,6 +27,7 @@ class DownloadClient(TorrentPath):
return QbDownloader(host, username, password, ssl)
else:
logger.error(f"[Downloader] Unsupported downloader type: {type}")
raise Exception(f"Unsupported downloader type: {type}")
def __enter__(self):
@@ -54,8 +55,7 @@ class DownloadClient(TorrentPath):
try:
self.client.add_category("BangumiCollection")
except Exception as e:
logger.warning("Cannot add new category, maybe already exists.")
logger.debug(e)
logger.debug("[Downloader] Cannot add new category, maybe already exists.")
if settings.downloader.path == "":
prefs = self.client.get_app_prefs()
settings.downloader.path = self._join_path(prefs["save_path"], "Bangumi")
@@ -81,14 +81,14 @@ class DownloadClient(TorrentPath):
self.client.rss_set_rule(rule_name=data.rule_name, rule_def=rule)
data.added = True
logger.info(
f"Add {data.official_title} Season {data.season} to auto download rules."
f"[Downloader] Add {data.official_title} Season {data.season} to auto download rules."
)
def set_rules(self, bangumi_info: list[BangumiData]):
logger.debug("Start adding rules.")
logger.debug("[Downloader] Start adding rules.")
for info in bangumi_info:
self.set_rule(info)
logger.debug("Finished.")
logger.debug("[Downloader] Finished.")
def get_torrent_info(self, category="Bangumi", status_filter="completed", tag=None):
return self.client.torrents_info(status_filter=status_filter, category=category, tag=tag)
@@ -101,7 +101,7 @@ class DownloadClient(TorrentPath):
def delete_torrent(self, hashes):
self.client.torrents_delete(hashes)
logger.info(f"Remove torrents.")
logger.info(f"[Downloader] Remove torrents.")
def add_torrent(self, torrent: dict):
self.client.torrents_add(
@@ -132,4 +132,4 @@ class DownloadClient(TorrentPath):
def remove_rule(self, rule_name):
self.client.remove_rule(rule_name)
logger.info(f"Delete rule: {rule_name}")
logger.info(f"[Downloader] Delete rule: {rule_name}")

View File

@@ -42,7 +42,7 @@ class TorrentManager(BangumiDatabase):
"status": "success",
"msg": f"Delete rule and torrents for {data.official_title}",
}
logger.info(f"Delete rule for {data.official_title}")
logger.info(f"[Manager] Delete rule for {data.official_title}")
return {
"status": "success",
"msg": f"Delete rule for {data.official_title}",
@@ -77,7 +77,7 @@ class TorrentManager(BangumiDatabase):
"status": "success",
"msg": f"Disable rule and delete torrents for {data.official_title}",
}
logger.info(f"Disable rule for {data.official_title}")
logger.info(f"[Manager] Disable rule for {data.official_title}")
return {
"status": "success",
"msg": f"Disable rule for {data.official_title}",
@@ -92,7 +92,7 @@ class TorrentManager(BangumiDatabase):
self.update_one(data)
with DownloadClient() as client:
client.set_rule(data)
logger.info(f"Enable rule for {data.official_title}")
logger.info(f"[Manager] Enable rule for {data.official_title}")
return {
"status": "success",
"msg": f"Enable rule for {data.official_title}",
@@ -101,7 +101,7 @@ class TorrentManager(BangumiDatabase):
def update_rule(self, data: BangumiData):
old_data = self.search_id(data.id)
if not old_data:
logger.error(f"Can't find data with id {data.id}")
logger.error(f"[Manager] Can't find data with id {data.id}")
return {"status": "error", "msg": f"Can't find data with id {data.id}"}
else:
# Set torrent path
@@ -128,7 +128,7 @@ class TorrentManager(BangumiDatabase):
def search_one(self, _id: int | str):
data = self.search_id(int(_id))
if not data:
logger.error(f"Can't find data with id {_id}")
logger.error(f"[Manager] Can't find data with id {_id}")
return {"status": "error", "msg": f"Can't find data with id {_id}"}
else:
return data

View File

@@ -64,14 +64,14 @@ class RequestURL:
req.raise_for_status()
return True
except requests.RequestException as e:
logger.debug(f"Cannot connect to {url}.")
logger.debug(f"[Network] Cannot connect to {url}.")
return False
def __enter__(self):
self.session = requests.Session()
if settings.proxy.enable:
if settings.proxy.type == "http":
url = f"http://{settings.proxy.host}:{settings.proxy.port}"
if "http" in settings.proxy.type:
url = f"{settings.proxy.type}://{settings.proxy.host}:{settings.proxy.port}"
self.session.proxies = {
"https": url,
"http": url,
@@ -86,6 +86,8 @@ class RequestURL:
password=settings.proxy.password,
)
socket.socket = socks.socksocket
else:
logger.error(f"[Network] Unsupported proxy type: {settings.proxy.type}")
return self
def __exit__(self, exc_type, exc_val, exc_tb):