mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-04 08:16:42 +08:00
[BugFix] fix logger (#3666)
This commit is contained in:
@@ -47,6 +47,7 @@ from fastdeploy.entrypoints.openai.serving_chat import OpenAIServingChat
|
||||
from fastdeploy.entrypoints.openai.serving_completion import OpenAIServingCompletion
|
||||
from fastdeploy.entrypoints.openai.serving_models import ModelPath, OpenAIServingModels
|
||||
from fastdeploy.entrypoints.openai.tool_parsers import ToolParserManager
|
||||
from fastdeploy.entrypoints.openai.utils import UVICORN_CONFIG
|
||||
from fastdeploy.metrics.metrics import (
|
||||
EXCLUDE_LABELS,
|
||||
cleanup_prometheus_files,
|
||||
@@ -61,7 +62,6 @@ from fastdeploy.utils import (
|
||||
FlexibleArgumentParser,
|
||||
StatefulSemaphore,
|
||||
api_server_logger,
|
||||
configure_uvicorn_logging,
|
||||
console_logger,
|
||||
is_port_available,
|
||||
retrive_model_from_server,
|
||||
@@ -416,6 +416,7 @@ def launch_api_server() -> None:
|
||||
host=args.host,
|
||||
port=args.port,
|
||||
workers=args.workers,
|
||||
log_config=UVICORN_CONFIG,
|
||||
log_level="info",
|
||||
) # set log level to error to avoid log
|
||||
except Exception as e:
|
||||
@@ -442,7 +443,7 @@ def run_metrics_server():
|
||||
run metrics server
|
||||
"""
|
||||
|
||||
uvicorn.run(metrics_app, host="0.0.0.0", port=args.metrics_port, log_level="error")
|
||||
uvicorn.run(metrics_app, host="0.0.0.0", port=args.metrics_port, log_config=UVICORN_CONFIG, log_level="error")
|
||||
|
||||
|
||||
def launch_metrics_server():
|
||||
@@ -511,6 +512,7 @@ def run_controller_server():
|
||||
controller_app,
|
||||
host="0.0.0.0",
|
||||
port=args.controller_port,
|
||||
log_config=UVICORN_CONFIG,
|
||||
log_level="error",
|
||||
)
|
||||
|
||||
@@ -530,7 +532,6 @@ def launch_controller_server():
|
||||
|
||||
def main():
|
||||
"""main函数"""
|
||||
configure_uvicorn_logging()
|
||||
load_model_register_plugins()
|
||||
if args.local_data_parallel_id == 0:
|
||||
if not load_engine():
|
||||
|
@@ -24,6 +24,50 @@ import zmq
|
||||
|
||||
from fastdeploy.utils import api_server_logger
|
||||
|
||||
UVICORN_CONFIG = {
|
||||
"version": 1,
|
||||
"disable_existing_loggers": False,
|
||||
"formatters": {
|
||||
"custom": {
|
||||
"()": "colorlog.ColoredFormatter",
|
||||
"format": "[%(log_color)s%(asctime)s] [%(levelname)+8s] %(reset)s - %(message)s%(reset)s",
|
||||
"datefmt": "%Y-%m-%d %H:%M:%S", # 时间戳格式
|
||||
"log_colors": {
|
||||
"DEBUG": "cyan",
|
||||
"INFO": "green",
|
||||
"WARNING": "yellow",
|
||||
"ERROR": "red",
|
||||
"CRITICAL": "red,bg_white",
|
||||
},
|
||||
}
|
||||
},
|
||||
"handlers": {
|
||||
"default": {
|
||||
"class": "colorlog.StreamHandler",
|
||||
"stream": "ext://sys.stderr",
|
||||
"formatter": "custom",
|
||||
},
|
||||
},
|
||||
"loggers": {
|
||||
"uvicorn": {
|
||||
"level": "INFO",
|
||||
"handlers": ["default"],
|
||||
"propagate": False,
|
||||
},
|
||||
"uvicorn.error": {
|
||||
"level": "INFO",
|
||||
"handlers": ["default"],
|
||||
"propagate": False,
|
||||
},
|
||||
"uvicorn.access": {
|
||||
"level": "INFO",
|
||||
"handlers": ["default"],
|
||||
"propagate": False,
|
||||
"formatter": "custom",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
class DealerConnectionManager:
|
||||
"""
|
||||
|
@@ -38,7 +38,6 @@ import yaml
|
||||
from aistudio_sdk.snapshot_download import snapshot_download as aistudio_download
|
||||
from tqdm import tqdm
|
||||
from typing_extensions import TypeIs, assert_never
|
||||
from uvicorn.config import LOGGING_CONFIG
|
||||
|
||||
from fastdeploy import envs
|
||||
from fastdeploy.logger.logger import FastDeployLogger
|
||||
@@ -77,35 +76,6 @@ class ColoredFormatter(logging.Formatter):
|
||||
return message
|
||||
|
||||
|
||||
def configure_uvicorn_logging():
|
||||
"""
|
||||
uvicorn logger config
|
||||
"""
|
||||
# add timestamp to log
|
||||
log_format = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
|
||||
date_format = "%Y-%m-%d %H:%M:%S"
|
||||
LOGGING_CONFIG["formatters"]["default"]["fmt"] = log_format
|
||||
LOGGING_CONFIG["formatters"]["default"]["datefmt"] = date_format
|
||||
LOGGING_CONFIG["formatters"]["access"]["fmt"] = log_format
|
||||
LOGGING_CONFIG["formatters"]["access"]["datefmt"] = date_format
|
||||
|
||||
uvicorn_error_logger = logging.getLogger("")
|
||||
uvicorn_access_logger = logging.getLogger("uvicorn.access")
|
||||
for handler in uvicorn_error_logger.handlers[:]:
|
||||
uvicorn_error_logger.removeHandler(handler)
|
||||
for handler in uvicorn_access_logger.handlers[:]:
|
||||
uvicorn_access_logger.removeHandler(handler)
|
||||
console_handler = logging.StreamHandler(sys.stdout)
|
||||
console_handler.setFormatter(logging.Formatter(log_format, date_format))
|
||||
|
||||
uvicorn_error_logger.addHandler(console_handler)
|
||||
uvicorn_access_logger.addHandler(console_handler)
|
||||
uvicorn_error_logger.setLevel(logging.INFO)
|
||||
uvicorn_access_logger.setLevel(logging.INFO)
|
||||
uvicorn_error_logger.propagate = False
|
||||
uvicorn_access_logger.propagate = False
|
||||
|
||||
|
||||
class DailyRotatingFileHandler(BaseRotatingHandler):
|
||||
"""
|
||||
like `logging.TimedRotatingFileHandler`, but this class support multi-process
|
||||
|
Reference in New Issue
Block a user