mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-10 03:28:53 +00:00
test(langfuse_otel): cover null stripping and empty trace identities
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
parent
bc6d6a516d
commit
2eead5ee02
1 changed files with 36 additions and 0 deletions
|
|
@ -548,6 +548,42 @@ class TestLangfuseOtelIntegration:
|
|||
}
|
||||
assert not [key for key in actual if key.startswith("langfuse.trace.metadata.")]
|
||||
|
||||
def test_request_metadata_drops_null_fields_and_skips_empty_trace_identities(
|
||||
self, monkeypatch: pytest.MonkeyPatch
|
||||
) -> None:
|
||||
monkeypatch.setattr(litellm, "redact_user_api_key_info", False)
|
||||
request_metadata: Final = {
|
||||
"user_api_key_alias": "prod-key",
|
||||
"user_api_key_user_id": "user-1",
|
||||
"user_api_key_end_user_id": None,
|
||||
"user_api_key_team_id": "",
|
||||
"user_api_key_team_alias": None,
|
||||
"team_id": None,
|
||||
"team_alias": None,
|
||||
"spend_logs_metadata": {"env": "prod"},
|
||||
}
|
||||
kwargs: Final = {
|
||||
"litellm_params": {"metadata": {}},
|
||||
"standard_logging_object": {"metadata": request_metadata},
|
||||
}
|
||||
|
||||
with patch("litellm.integrations.arize._utils.safe_set_attribute") as mock_safe_set_attribute:
|
||||
LangfuseOtelLogger._set_langfuse_specific_attributes(MagicMock(), kwargs, None)
|
||||
|
||||
actual: Final = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list}
|
||||
|
||||
assert json.loads(actual["langfuse.observation.metadata"]) == {
|
||||
"user_api_key_alias": "prod-key",
|
||||
"user_api_key_user_id": "user-1",
|
||||
"user_api_key_team_id": "",
|
||||
"spend_logs_metadata": {"env": "prod"},
|
||||
"requester_metadata": {},
|
||||
}
|
||||
assert {key: value for key, value in actual.items() if key.startswith("langfuse.trace.metadata.")} == {
|
||||
"langfuse.trace.metadata.user_api_key_alias": "prod-key",
|
||||
"langfuse.trace.metadata.user_api_key_user_id": "user-1",
|
||||
}
|
||||
|
||||
def test_request_metadata_keys_are_absent_without_standard_logging_object(
|
||||
self, monkeypatch: pytest.MonkeyPatch
|
||||
) -> None:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue