Conversation
a general purpose to help customers decide if and when a span will go out. doesn't make any opinions about root/child, etc.
| this.maskingFunction = maskingFunction; | ||
| } | ||
|
|
||
| setFilteringFunction( |
There was a problem hiding this comment.
What happens when someone sets this up multiple times in their project looks like it would just overwrite the function?
In that case would it make more sense to have this as an option during logger initialization?
There was a problem hiding this comment.
🤔 maybe. i followed the masking pattern but maybe that one needs a tweak too
| * root | ||
| * parent | ||
| * child | ||
| * descendant <-- orphan (span_parents still points to filtered "sibling") |
There was a problem hiding this comment.
i wouldn't be too excited about this. we can document the behavior and for the user to consider just removing the input/output (make the log thin/skeleton)
There was a problem hiding this comment.
an idea is to use a tombstone/skeleton log (everything but input, output, expected, etc.).
this would preserve hierarchy and metrics which may be important to understand within a span with many children the total tokens/times consumed within that span
a general purpose to help customers decide if and when a span will go out. doesn't make any opinions about root/child, etc.
pending: I haven't given a lot of thought is what happens with root/child/ancestor. if root goes away, or if child goes away. i'll send more tests