microsoft.opentelemetry.a365.core.exporters package

Exporter helpers for durable delivery.

class microsoft.opentelemetry.a365.core.exporters.DeliveryDisposition(value)[source]

Bases: Enum

The outcome of a delivery attempt.

DELIVERED = 'delivered'
RETRYABLE = 'retryable'
PERMANENT = 'permanent'
class microsoft.opentelemetry.a365.core.exporters.DeliveryResult(disposition, retry_after=None)[source]

Bases: object

Delivery outcome and optional retry delay.

disposition: DeliveryDisposition
retry_after: float | None = None
class microsoft.opentelemetry.a365.core.exporters.IdentityKey(tenant_id, agent_id, agentic_user_id, use_s2s_endpoint)[source]

Bases: object

Identity tuple used to isolate durable delivery state.

tenant_id: str
agent_id: str
agentic_user_id: str | None
use_s2s_endpoint: bool
class microsoft.opentelemetry.a365.core.exporters.TransmissionGate(clock=None, random_fn=None)[source]

Bases: object

Gate retries per identity and allows only one half-open probe.

try_acquire(key)[source]

Acquire the probe token for an identity if it is available.

Return type:

bool

record_success(key)[source]

Reset durable delivery state after a successful attempt.

Return type:

None

record_retryable_failure(key, retry_after)[source]

Block the identity until the retry window expires.

Return type:

None

release_probe(key)[source]

Release an acquired probe token without changing the retry window.

Return type:

None

Submodules