Skip to main content
Glama
drfccv
by drfccv
config.py1.89 kB
"""配置管理""" import os import logging from typing import Optional from pathlib import Path from pydantic_settings import BaseSettings, SettingsConfigDict from pydantic import Field logger = logging.getLogger(__name__) class Settings(BaseSettings): """应用配置""" server_host: str = Field(default="0.0.0.0", description="服务器主机地址") server_port: int = Field(default=8000, description="服务器端口") debug: bool = Field(default=False, description="调试模式") user_agent: str = Field( default="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36", description="用户代理字符串" ) request_timeout: int = Field(default=30, description="请求超时时间(秒)") log_level: str = Field(default="INFO", description="日志级别") model_config = SettingsConfigDict( env_file=".env", env_file_encoding="utf-8", extra="ignore", case_sensitive=False ) _settings: Optional[Settings] = None def get_settings() -> Settings: """获取配置实例""" global _settings if _settings is None: env_file_path = Path(".env") if not env_file_path.exists(): logger.warning(f"环境配置文件 {env_file_path.absolute()} 不存在,使用默认配置") else: logger.info(f"加载环境配置文件: {env_file_path.absolute()}") try: _settings = Settings() logger.info(f"配置加载成功 - 主机: {_settings.server_host}, 端口: {_settings.server_port}, 调试模式: {_settings.debug}, 日志级别: {_settings.log_level}") except Exception as e: logger.error(f"配置加载失败: {e},使用默认配置") _settings = Settings.model_validate({}) return _settings

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/drfccv/mcp-server-12306'

If you have feedback or need assistance with the MCP directory API, please join our Discord server