aliyun_log_api.py 1.3 KB

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