[Fix] DD logging - ensure key's metadata + guardrail is logged on DD (#15980)

* fix get_sanitized_user_information_from_key

* test_get_sanitized_user_information_from_key_includes_guardrails_metadata
This commit is contained in:
Ishaan Jaff
2025-10-27 13:45:09 -07:00
committed by GitHub
parent 20f9e189fb
commit 02df4c6b30
3 changed files with 26 additions and 1 deletions
+2 -1
View File
@@ -585,7 +585,8 @@ class LiteLLMProxyRequestSetup:
if user_api_key_dict.budget_reset_at
else None
),
user_api_key_auth_metadata=None,
user_api_key_auth_metadata=user_api_key_dict.metadata,
)
return user_api_key_logged_metadata
+3
View File
@@ -21,3 +21,6 @@ search_tools:
litellm_params:
search_provider: exa_ai
api_key: os.environ/EXA_API_KEY
litellm_settings:
callbacks: ["datadog"]
@@ -1119,3 +1119,24 @@ def test_add_internal_user_from_user_mapping_no_header_or_mapping_returns_unchan
)
assert result is user_api_key_dict
assert user_api_key_dict.user_id is None
def test_get_sanitized_user_information_from_key_includes_guardrails_metadata():
"""
Test that get_sanitized_user_information_from_key includes guardrails field from key metadata in the returned payload
"""
user_api_key_dict = UserAPIKeyAuth(
api_key="test-key-hash",
key_alias="test-alias",
user_id="test-user",
metadata={"guardrails": ["presidio", "aporia"], "other_field": "value"},
)
result = LiteLLMProxyRequestSetup.get_sanitized_user_information_from_key(
user_api_key_dict=user_api_key_dict
)
assert result["user_api_key_auth_metadata"] is not None
assert "guardrails" in result["user_api_key_auth_metadata"]
assert result["user_api_key_auth_metadata"]["guardrails"] == ["presidio", "aporia"]
assert result["user_api_key_auth_metadata"]["other_field"] == "value"