| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- import logging
 
- import os
 
- import sys
 
- from logging.handlers import RotatingFileHandler
 
- from flask import Flask
 
- from configs import dify_config
 
- def init_app(app: Flask):
 
-     log_handlers = None
 
-     log_file = dify_config.LOG_FILE
 
-     if log_file:
 
-         log_dir = os.path.dirname(log_file)
 
-         os.makedirs(log_dir, exist_ok=True)
 
-         log_handlers = [
 
-             RotatingFileHandler(
 
-                 filename=log_file,
 
-                 maxBytes=dify_config.LOG_FILE_MAX_SIZE * 1024 * 1024,
 
-                 backupCount=dify_config.LOG_FILE_BACKUP_COUNT,
 
-             ),
 
-             logging.StreamHandler(sys.stdout),
 
-         ]
 
-     logging.basicConfig(
 
-         level=dify_config.LOG_LEVEL,
 
-         format=dify_config.LOG_FORMAT,
 
-         datefmt=dify_config.LOG_DATEFORMAT,
 
-         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 = time_converter
 
 
  |