Skip to content

Commit

Permalink
Revert "chore: improve validation and handler of logging timezone wit…
Browse files Browse the repository at this point in the history
…h TimezoneName" (#10077)
  • Loading branch information
crazywoola authored and iamjoel committed Nov 7, 2024
1 parent 7971efd commit b76aa11
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 10 deletions.
6 changes: 2 additions & 4 deletions api/configs/feature/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
PositiveInt,
computed_field,
)
from pydantic_extra_types.timezone_name import TimeZoneName
from pydantic_settings import BaseSettings

from configs.feature.hosted_service import HostedServiceConfig
Expand Down Expand Up @@ -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,
)

Expand Down
16 changes: 10 additions & 6 deletions api/extensions/ext_logging.py
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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

0 comments on commit b76aa11

Please sign in to comment.