summaryrefslogtreecommitdiff
path: root/ATRI/utils/utils_error
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2020-11-22 01:01:43 +0800
committerKyomotoi <[email protected]>2020-11-22 01:01:43 +0800
commitf7198e8722f310926cf147bd0b218c5d9ef5d6c3 (patch)
treef4c3d0f2a003695b67e0e2018ec8d88898bcda90 /ATRI/utils/utils_error
parent6c3e4c7f583be0006cd7bb913b7db81b987d2813 (diff)
downloadATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.tar.gz
ATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.tar.bz2
ATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.zip
[Update]
新增: * 舆情检测 * 对涩图加以调用限制 修复: * Pixiv插件全体 * 储存群聊信息时无法创建文件 优化: * 部分代码重构,效率up * 调整插件结构,使其看起来更舒服
Diffstat (limited to 'ATRI/utils/utils_error')
-rw-r--r--ATRI/utils/utils_error/__init__.py54
1 files changed, 54 insertions, 0 deletions
diff --git a/ATRI/utils/utils_error/__init__.py b/ATRI/utils/utils_error/__init__.py
new file mode 100644
index 0000000..d033613
--- /dev/null
+++ b/ATRI/utils/utils_error/__init__.py
@@ -0,0 +1,54 @@
+#!/usr/bin/env python3
+# -*- encoding: utf-8 -*-
+'''
+@File : __init__.py
+@Time : 2020/10/11 14:43:10
+@Author : Kyomotoi
+@Contact : [email protected]
+@Github : https://github.com/Kyomotoi
+@License : Copyright © 2018-2020 Kyomotoi, All Rights Reserved.
+'''
+__author__ = 'kyomotoi'
+
+import json
+import string
+from pathlib import Path
+from random import sample
+from typing import Optional
+from datetime import datetime
+from traceback import format_exc
+
+
+def errorRepo(repo_msg: Optional[str] = None) -> str:
+ '''
+ 出错时返回错误堆栈
+
+ :return: str
+ '''
+ file_error = Path('.') / 'ATRI' / 'data' / 'data_Error' / 'error.json'
+ try:
+ with open(file_error, 'r') as f:
+ data_error = json.load(f)
+ except FileNotFoundError:
+ data_error = {}
+
+ key_error = ''.join(sample(string.ascii_letters + string.digits, 16))
+ msg_error = f"{datetime.now()}\n"
+ msg_error = f"{format_exc()}"
+ data_error[f"{key_error}"] = f"{msg_error}"
+
+ with open(file_error, 'w') as f:
+ f.write(json.dumps(data_error))
+ f.close()
+
+ if repo_msg:
+ pass
+ else:
+ repo_msg = 'unknown'
+
+ msg0 = f'ERROR! Reason: [{repo_msg}]\n'
+ msg0 += f'trackID: {key_error}\n'
+ msg0 += "请使用[来杯红茶]功能以联系维护者\n"
+ msg0 += "并附上 trackID"
+
+ return msg0 \ No newline at end of file