aliyunLog.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. """
  2. @author: luojunhui
  3. """
  4. import time
  5. import json
  6. from aliyun.log import LogClient, PutLogsRequest, LogItem
  7. def log(
  8. code,
  9. env="prod",
  10. trace_id=None,
  11. route=None,
  12. message=None,
  13. data=None
  14. ):
  15. """
  16. :return:
  17. """
  18. if data is None:
  19. data = {}
  20. accessKeyId = "LTAIP6x1l3DXfSxm"
  21. accessKey = "KbTaM9ars4OX3PMS6Xm7rtxGr1FLon"
  22. project = "changwen-alg"
  23. log_store = "touliu_server"
  24. endpoint = "cn-hangzhou.log.aliyuncs.com"
  25. # 创建 LogClient 实例
  26. client = LogClient(endpoint, accessKeyId, accessKey)
  27. log_group = []
  28. log_item = LogItem()
  29. contents = [
  30. (f"env", str(env)),
  31. (f"code", str(code)),
  32. (f"route", str(route)),
  33. (f"message", str(message)),
  34. (f"data", json.dumps(data, ensure_ascii=False) if data else ""),
  35. (f"trace_id", str(trace_id)),
  36. ("timestamp", str(int(time.time()))),
  37. ]
  38. log_item.set_contents(contents)
  39. log_group.append(log_item)
  40. # 写入日志
  41. request = PutLogsRequest(
  42. project=project,
  43. logstore=log_store,
  44. topic="",
  45. source="",
  46. logitems=log_group,
  47. compress=False,
  48. )
  49. try:
  50. client.put_logs(request)
  51. except Exception as e:
  52. print("日志失败")
  53. print(e)