From 2b1e5c5307691105cc6acaff029bd500897a8211 Mon Sep 17 00:00:00 2001 From: tankaikai Date: Fri, 10 Apr 2026 15:50:00 +0800 Subject: [PATCH] [Fix] AliyunSLSLogger: fall back to os.environ for params set by UI When callback params are configured via the LiteLLM UI, they are stored as environment_variables (injected into os.environ on proxy startup). The logger now reads os.environ as a fallback so UI-configured params are picked up correctly. Co-Authored-By: Claude Sonnet 4.6 --- litellm/integrations/aliyun_sls.py | 35 +++++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/litellm/integrations/aliyun_sls.py b/litellm/integrations/aliyun_sls.py index a94904fae47..d15b0f13839 100644 --- a/litellm/integrations/aliyun_sls.py +++ b/litellm/integrations/aliyun_sls.py @@ -11,6 +11,7 @@ Configuration via litellm.aliyun_sls_callback_params or environment variables: """ import asyncio +import os import time from typing import Any, Dict, Optional @@ -33,12 +34,34 @@ class AliyunSLSLogger(CustomLogger): else: params[key] = value - region = params.get("aliyun_sls_region") or "" - self.project = params.get("aliyun_sls_project") or "" - self.logstore = params.get("aliyun_sls_logstore") or "" - access_key_id = params.get("aliyun_sls_access_key_id") or "" - access_key_secret = params.get("aliyun_sls_access_key_secret") or "" - custom_endpoint = params.get("aliyun_sls_endpoint") or "" + region = ( + params.get("aliyun_sls_region") or os.environ.get("aliyun_sls_region") or "" + ) + self.project = ( + params.get("aliyun_sls_project") + or os.environ.get("aliyun_sls_project") + or "" + ) + self.logstore = ( + params.get("aliyun_sls_logstore") + or os.environ.get("aliyun_sls_logstore") + or "" + ) + access_key_id = ( + params.get("aliyun_sls_access_key_id") + or os.environ.get("aliyun_sls_access_key_id") + or "" + ) + access_key_secret = ( + params.get("aliyun_sls_access_key_secret") + or os.environ.get("aliyun_sls_access_key_secret") + or "" + ) + custom_endpoint = ( + params.get("aliyun_sls_endpoint") + or os.environ.get("aliyun_sls_endpoint") + or "" + ) if not region and not custom_endpoint: raise ValueError("aliyun_sls_region is required")