Skip to content

Flight update response always logs 'missing counts' warning for annotation writes #126

Description

@dave05

Description

spans.update_annotations() always emits a WARNING log:

Flight update response missing counts | project='...' request_type='ANNOTATION' total_spans=1 spans_processed=None spans_updated=1 spans_failed=None success_rate=None error_count=0

The annotation writes succeed (spans_updated=1), but spans_processed is None because the Flight gRPC response doesn't populate that field.

Source

arize/spans/client.py line ~1453:

spans_processed = getattr(response, "spans_processed", None)
# ...
if spans_processed is None or spans_updated is None:
    logger.warning("Flight update response missing counts", extra=metrics)

The response object from the server doesn't include spans_processed, so getattr returns None, triggering the warning on every successful write.

Impact

  • Every annotation write produces a spurious WARNING log line
  • Noisy in production log monitoring (CloudWatch, etc.)
  • Annotations are written correctly — this is cosmetic

Environment

  • arize SDK: 8.16.0
  • Python: 3.13
  • Using spans.update_annotations() with single-span DataFrames

Suggestion

Either:

  1. Populate spans_processed in the Flight server response for annotation writes, or
  2. Downgrade to logger.debug when spans_updated is present and spans_processed is missing (successful write, just missing metadata)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions