As a Roblox developer, it is hard to understand what the following Datastore warning relates to, because it gives 1 standard throttling message:
18:48:14.651 - Request was throttled. Try sending fewer requests. Key = TestKey
The reason for this is that while the key name might be given, I cannot tell why the request actually throttled, or which type of call caused the throttle. It could have been a get on the key, a set on the key, or perhaps I am calling a write on the key within 6 seconds. The error message is not specific at all, so I need to do extra effort to debug this issue.
I propose that these throttling warnings should include the method name and/or cause of throttling, such as these for when the budget is too low to perform the request: (notice method name at the start)
18:48:14.651 - GetAsync request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - SetAsync request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - IncrementAsync request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - UpdateAsync request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - RemoveAsync request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - OnUpdate request was throttled. Try sending fewer requests. Key = TestKey
18:48:14.651 - GetSortedAsync request was throttled. Try sending fewer requests.
18:48:14.651 - AdvanceToNextPageAsync request was throttled. Try sending fewer requests.
And these when the write cooldown of 6 seconds is violated: (notice specification of 6 second rule)
18:48:14.651 - SetAsync request was throttled. Can only write keys every 6 seconds. Key = TestKey
18:48:14.651 - IncrementAsync request was throttled. Can only write keys every 6 seconds. Key = TestKey
18:48:14.651 - UpdateAsync request was throttled. Can only write keys every 6 seconds. Key = TestKey
18:48:14.651 - RemoveAsync request was throttled. Can only write keys every 6 seconds. Key = TestKey
If this issue is addressed, it would improve my development experience because I have to spend less time debugging Datastore interactions and excessive budget usage, as it will be easier to trace back which Datastore calls generated the warnings, and what the warnings are actually about.