fix: 告警上传COS路径日期改为北京时间
alarm_upload_worker.py 中 COS object key 的日期和死信时间戳 从 UTC 改为北京时间(UTC+8),与服务端和日志时间一致。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -17,7 +17,9 @@ import json
|
||||
import logging
|
||||
import threading
|
||||
import time
|
||||
from datetime import datetime, timezone
|
||||
from datetime import datetime, timezone, timedelta
|
||||
|
||||
_BEIJING_TZ = timezone(timedelta(hours=8))
|
||||
from typing import Any, Dict, Optional
|
||||
|
||||
import redis
|
||||
@@ -294,7 +296,7 @@ class AlarmUploadWorker:
|
||||
return None
|
||||
|
||||
# 生成 Object Key: alarms/{device_id}/{yyyy-MM-dd}/{alarm_id}.jpg
|
||||
date_str = datetime.now(timezone.utc).strftime("%Y-%m-%d")
|
||||
date_str = datetime.now(_BEIJING_TZ).strftime("%Y-%m-%d")
|
||||
object_key = f"alarms/{device_id}/{date_str}/{alarm_id}.jpg"
|
||||
|
||||
try:
|
||||
@@ -392,7 +394,7 @@ class AlarmUploadWorker:
|
||||
if retry_count > max_retry:
|
||||
# 超过最大重试次数,写入死信队列
|
||||
alarm_data["_dead_reason"] = error
|
||||
alarm_data["_dead_at"] = datetime.now(timezone.utc).isoformat()
|
||||
alarm_data["_dead_at"] = datetime.now(_BEIJING_TZ).isoformat()
|
||||
dead_json = json.dumps(alarm_data, ensure_ascii=False)
|
||||
self._redis.lpush(REDIS_KEY_ALARM_DEAD, dead_json)
|
||||
self._stats["dead_lettered"] += 1
|
||||
|
||||
Reference in New Issue
Block a user