Просмотр исходного кода

Revert "chore: improve validation and handler of logging timezone with TimezoneName" (#10077)

tags/0.11.0
crazywoola 1 год назад
Родитель
Сommit
0a3d51e9cf
Аккаунт пользователя с таким Email не найден
2 измененных файлов: 12 добавлений и 10 удалений
  1. 2
    4
      api/configs/feature/__init__.py
  2. 10
    6
      api/extensions/ext_logging.py

+ 2
- 4
api/configs/feature/__init__.py Просмотреть файл

@@ -10,7 +10,6 @@ from pydantic import (
PositiveInt,
computed_field,
)
from pydantic_extra_types.timezone_name import TimeZoneName
from pydantic_settings import BaseSettings

from configs.feature.hosted_service import HostedServiceConfig
@@ -340,9 +339,8 @@ class LoggingConfig(BaseSettings):
default=None,
)

LOG_TZ: Optional[TimeZoneName] = Field(
description="Timezone for log timestamps. Allowed timezone values can be referred to IANA Time Zone Database,"
" e.g., 'America/New_York')",
LOG_TZ: Optional[str] = Field(
description="Timezone for log timestamps (e.g., 'America/New_York')",
default=None,
)


+ 10
- 6
api/extensions/ext_logging.py Просмотреть файл

@@ -1,10 +1,8 @@
import logging
import os
import sys
from datetime import datetime
from logging.handlers import RotatingFileHandler

import pytz
from flask import Flask

from configs import dify_config
@@ -32,10 +30,16 @@ def init_app(app: Flask):
handlers=log_handlers,
force=True,
)

log_tz = dify_config.LOG_TZ
if log_tz:
from datetime import datetime

import pytz

timezone = pytz.timezone(log_tz)

def time_converter(seconds):
return datetime.utcfromtimestamp(seconds).astimezone(timezone).timetuple()

for handler in logging.root.handlers:
handler.formatter.converter = lambda seconds: (
datetime.fromtimestamp(seconds, tz=pytz.UTC).astimezone(log_tz).timetuple()
)
handler.formatter.converter = time_converter

Загрузка…
Отмена
Сохранить