Defined logged fields next to type definition.
Created by: varungandhi-src
I have been looking at a bug from a customer where we run into an issue where limit=0 and commit is unset. However, those are the only two fields we are logging; we weren't logging the Since time. This limits the usability of the log. Ideally, we should log all fields IMO. Moreover, specifying the fields next to the type definition means that if someone adds a field to the type definition, they need to make a change in one place only.
I don't understand why most of the places doing instrumentation don't add similar methods on the type. Are the subset of fields that need to be logged for a type mostly context specific?
Test plan
Not sure if this needs a test for the LogFields
function?