Skip to content

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

@dave05

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

No one assigned

    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