Amplitude-Python
Amplitude-Python copied to clipboard
Invalid Event Fails Without Logging or Callback
Expected Behavior
If an event doesn't get tracked for any reason (in my case because of an invalid event property value), I would expect to be able to configure a way to get notified about it, either through logging or through the callback function.
Current Behavior
I was using the Amplitude client to track an event and noticed that it wasn't showing up in the Amplitude dashboard. After looking into it, it seems to be caused by a Python datetime object being passed as an event property (formatting it as a string resulted in the event being tracked). However, at no point did the library log an error (like it does for an invalid API key). Configuring a callback function also did not help - the callback function gets called for successful events, but not this particular error case.
Possible Solution
I'm not sure if the current behaviour is a bug or by design, but there should be some way for the developer to know about a call to Amplitude.track failing for whatever reason.
Steps to Reproduce
- Track an event with a a Python datetime object as an event property value
- No event gets tracked and it fails silently
Environment
- SDK Version: 1.1.4
- Python Version: 3.11.6
- OS Info: macOS 14.6.1