We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 6276543 commit 77abf41Copy full SHA for 77abf41
util/opentelemetry-util-genai/src/opentelemetry/util/genai/_upload/completion_hook.py
@@ -15,6 +15,7 @@
15
16
from __future__ import annotations
17
18
+import datetime
19
import json
20
import logging
21
import posixpath
@@ -287,4 +288,14 @@ class Base64JsonEncoder(json.JSONEncoder):
287
288
def default(self, o: Any) -> Any:
289
if isinstance(o, bytes):
290
return b64encode(o).decode()
- return super().default(o)
291
+ elif isinstance(o, (datetime.datetime, datetime.date)):
292
+ return o.isoformat()
293
+
294
+ try:
295
+ return super().default(o)
296
+ except TypeError:
297
+ _logger.warning(
298
+ 'failed to encode object "%s" to JSON. Falling back to str()',
299
+ o,
300
+ )
301
+ return str(o)
0 commit comments