aliyunLogApi.py 1.4 KB

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