from pydantic_settings import BaseSettings, SettingsConfigDict class AliyunLogConfig(BaseSettings): """阿里云日志配置""" endpoint: str = "cn-hangzhou.log.aliyuncs.com" access_key_id: str = "LTAIP6x1l3DXfSxm" access_key_secret: str = "KbTaM9ars4OX3PMS6Xm7rtxGr1FLon" project: str = "changwen-alg" logstore: str = "long_articles_job" model_config = SettingsConfigDict( env_prefix="ALIYUN_LOG_", env_file=".env", case_sensitive=False, extra="ignore" ) def to_dict(self) -> dict: """转换为字典格式,用于兼容旧代码""" return { "endpoint": self.endpoint, "access_key_id": self.access_key_id, "access_key_secret": self.access_key_secret, "project": self.project, "logstore": self.logstore, } class AliyunOssConfig(AliyunLogConfig): """阿里云日志配置""" endpoint: str = "oss-cn-hangzhou.aliyuncs.com" bucket_name: str = "art-pubbucket" model_config = SettingsConfigDict( env_prefix="ALIYUN_OSS_", env_file=".env", case_sensitive=False, extra="ignore" ) def to_dict(self) -> dict: """转换为字典格式,用于兼容旧代码""" return { "endpoint": self.endpoint, "access_key_id": self.access_key_id, "access_key_secret": self.access_key_secret, "bucket_name": self.bucket_name, }