From c2c5877afa60810715ce0d1bb1a9a0d0c8d4685c Mon Sep 17 00:00:00 2001 From: Idris Mokhtarzada Date: Sat, 27 Jul 2024 02:16:36 -0400 Subject: [PATCH] Fix Datadog JSON serialization Nested dicts were not being serialized properly --- litellm/integrations/datadog.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/litellm/integrations/datadog.py b/litellm/integrations/datadog.py index 97ad96a5d6..f3170e4467 100644 --- a/litellm/integrations/datadog.py +++ b/litellm/integrations/datadog.py @@ -1,5 +1,5 @@ #### What this does #### -# On success + failure, log events to Supabase +# On success + failure, log events to Datadog import dotenv, os import requests # type: ignore @@ -15,12 +15,13 @@ def make_json_serializable(payload): if isinstance(value, dict): # recursively sanitize dicts payload[key] = make_json_serializable(value.copy()) - if not isinstance(value, (str, int, float, bool, type(None))): + elif not isinstance(value, (str, int, float, bool, type(None))): # everything else becomes a string payload[key] = str(value) except: # non blocking if it can't cast to a str pass + return payload class DataDogLogger: