Hello guys, when I filter status_code == 'ERROR' this returns all parent spans of a span that threw the error too. Is there a way of filtering only the spans that actually threw the error? Thanks
Filtering with status_code == 'ERROR' in Phoenix currently returns both the spans that directly threw the error and their parent spans, due to error status code propagation for improved trace visibility. There is no built-in way to restrict the filter to only the spans that directly threw the error (i.e., exclude parents that inherited the error status) in the UI or query syntax at this time鈥攆iltering is applied per span, but the propagated status is used for display and filtering purposes, not just the original error source span (source, source).If you need to filter only the spans that actually threw the error, you would need to export the spans as a DataFrame and post-process them locally, or use a custom attribute (if available) that marks only the original error span. Would you like more detail or a code example for post-processing exported data?Sources:
- feat: propagate error status codes to parent spans for improved visibility into trace exceptions
- enhancement: improve visibility into error status codes
馃挕聽Hint: Mention RunLLM in the thread for followups.
hey Arthur, that does seem non-ideal. We can get that fixed for ya. Just to understand it better, this is with LlamaIndex sans?
