|
@@ -0,0 +1,69 @@
|
|
|
|
+"""
|
|
|
|
+@author: luojunhui
|
|
|
|
+"""
|
|
|
|
+import time
|
|
|
|
+import json
|
|
|
|
+from aliyun.log import LogClient, PutLogsRequest, LogItem
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+def logging(
|
|
|
|
+ code,
|
|
|
|
+ mode="prod",
|
|
|
|
+ trace_id=None,
|
|
|
|
+ info=None,
|
|
|
|
+ port=None,
|
|
|
|
+ alg=None,
|
|
|
|
+ function=None,
|
|
|
|
+ data=None
|
|
|
|
+):
|
|
|
|
+ """
|
|
|
|
+ :param mode: 生产模式 or 测试模式
|
|
|
|
+ :param trace_id: 请求唯一 id
|
|
|
|
+ :param data: 信息
|
|
|
|
+ :param code: 日志状态码
|
|
|
|
+ :param info: 日志消息
|
|
|
|
+ :param port: 请求接口
|
|
|
|
+ :param alg: 算法主体
|
|
|
|
+ :param function: 方法信息
|
|
|
|
+ :return:
|
|
|
|
+ """
|
|
|
|
+ if data is None:
|
|
|
|
+ data = {}
|
|
|
|
+ accessKeyId = "LTAIP6x1l3DXfSxm"
|
|
|
|
+ accessKey = "KbTaM9ars4OX3PMS6Xm7rtxGr1FLon"
|
|
|
|
+ project = "changwen-alg"
|
|
|
|
+ log_store = "weixin_video_match"
|
|
|
|
+ endpoint = "cn-hangzhou.log.aliyuncs.com"
|
|
|
|
+
|
|
|
|
+ # 创建 LogClient 实例
|
|
|
|
+ client = LogClient(endpoint, accessKeyId, accessKey)
|
|
|
|
+ log_group = []
|
|
|
|
+ log_item = LogItem()
|
|
|
|
+ contents = [
|
|
|
|
+ (f"mode", str(mode)),
|
|
|
|
+ (f"code", str(code)),
|
|
|
|
+ (f"alg", str(alg)),
|
|
|
|
+ (f"function", str(function)),
|
|
|
|
+ (f"info", str(info)),
|
|
|
|
+ (f"port", str(port)),
|
|
|
|
+ (f"data", json.dumps(data, ensure_ascii=False) if data else ""),
|
|
|
|
+ (f"trace_id", str(trace_id)),
|
|
|
|
+ ("timestamp", str(int(time.time()))),
|
|
|
|
+ ]
|
|
|
|
+
|
|
|
|
+ log_item.set_contents(contents)
|
|
|
|
+ log_group.append(log_item)
|
|
|
|
+ # 写入日志
|
|
|
|
+ request = PutLogsRequest(
|
|
|
|
+ project=project,
|
|
|
|
+ logstore=log_store,
|
|
|
|
+ topic="",
|
|
|
|
+ source="",
|
|
|
|
+ logitems=log_group,
|
|
|
|
+ compress=False,
|
|
|
|
+ )
|
|
|
|
+ try:
|
|
|
|
+ client.put_logs(request)
|
|
|
|
+ except Exception as e:
|
|
|
|
+ print("日志失败")
|
|
|
|
+ print(e)
|