Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/scripts/ci-checks.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
#!/usr/bin/env bash

set -e

Expand Down
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ dist/

.kiro/

*/build/*
*/*.zip
**/build/
**/*.zip

.env
18 changes: 6 additions & 12 deletions packages/aws-durable-execution-sdk-python-otel/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@

OpenTelemetry instrumentation for the [AWS Durable Execution SDK for Python](https://github.com/aws/aws-durable-execution-sdk-python).

> **Note:** v0.1.0 reserves the package name. Instrumentation lands in v0.2.0.

## Overview

This package provides automatic OpenTelemetry tracing for durable execution workflows, giving you visibility into step execution, waits, retries, and overall workflow performance.
This package will provide automatic OpenTelemetry tracing for durable execution workflows, giving you visibility into step execution, waits, retries, and overall workflow performance.

## Installation

Expand All @@ -15,20 +17,12 @@ pip install aws-durable-execution-sdk-python-otel
## Quick Start

```python
from aws_durable_execution_sdk_python import DurableContext, durable_execution
from aws_durable_execution_sdk_python_otel import instrument_durable_execution

# Instrument the SDK (call once at module load)
instrument_durable_execution()
from aws_durable_execution_sdk_python_otel import __version__

@durable_execution
def handler(event: dict, context: DurableContext) -> dict:
# Steps, waits, and invokes are automatically traced
result = context.step(lambda _: do_work(), name="my-step")
return {"result": result}
print(__version__)
```

## Features
## Planned Features (v0.2.0)

- Automatic span creation for steps, waits, invokes, and child contexts
- Replay-aware tracing (distinguishes fresh executions from replays)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1162,9 +1162,9 @@ def create_id(self, i):
parent_call = mock_serialize.call_args_list[2]
assert parent_call[1]["serdes"] is custom_serdes
assert isinstance(parent_call[1]["value"], BatchResult)
assert parent_call[1]["value"] is result
finally:
importlib.reload(child)
assert parent_call[1]["value"] is result


def test_map_with_empty_list_should_exit_early():
Expand Down
Loading