Team Ai
Apppublic

Underground-Digital/Workflow-Engine

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
ext_logging.py46 linesDownload Raw Back to extensions
1import logging2import os3import sys4from logging.handlers import RotatingFileHandler5 6from flask import Flask7 8from configs import dify_config9 10 11def init_app(app: Flask):12    log_handlers = None13    log_file = dify_config.LOG_FILE14    if log_file:15        log_dir = os.path.dirname(log_file)16        os.makedirs(log_dir, exist_ok=True)17        log_handlers = [18            RotatingFileHandler(19                filename=log_file,20                maxBytes=dify_config.LOG_FILE_MAX_SIZE * 1024 * 1024,21                backupCount=dify_config.LOG_FILE_BACKUP_COUNT,22            ),23            logging.StreamHandler(sys.stdout),24        ]25 26    logging.basicConfig(27        level=dify_config.LOG_LEVEL,28        format=dify_config.LOG_FORMAT,29        datefmt=dify_config.LOG_DATEFORMAT,30        handlers=log_handlers,31        force=True,32    )33    log_tz = dify_config.LOG_TZ34    if log_tz:35        from datetime import datetime36 37        import pytz38 39        timezone = pytz.timezone(log_tz)40 41        def time_converter(seconds):42            return datetime.utcfromtimestamp(seconds).astimezone(timezone).timetuple()43 44        for handler in logging.root.handlers:45            handler.formatter.converter = time_converter46