diff --git a/README.md b/README.md index e7e2bc1..300826a 100644 --- a/README.md +++ b/README.md @@ -144,6 +144,9 @@ sleep_for() { otel_trace_start_parent_span sleep_for 1 # Start a child span, associated to the parent otel_trace_start_child_span sleep_for 2 +# Start a child span with a custom name +local span_name="Sleeping" +otel_trace_start_child_span sleep_for 3 log_info "TraceId: ${OTEL_TRACE_ID}" ``` diff --git a/library/otel_traces.sh b/library/otel_traces.sh index 479ef31..1d1eeb0 100644 --- a/library/otel_traces.sh +++ b/library/otel_traces.sh @@ -47,6 +47,10 @@ otel_trace_start_parent_span() { local name=$1 local span_id=$(generate_uuid 8) + if [ -n "${span_name-}" ]; then + name=$span_name + fi + local start_time_unix_nano=$(get_epoch_now) local exit_code=0 "$@" && exit_code=$? || exit_code=$? @@ -124,6 +128,10 @@ otel_trace_start_child_span() { local name=$1 local span_id=$(generate_uuid 8) + if [ -n "${span_name-}" ]; then + name=$span_name + fi + local start_time_unix_nano=$(get_epoch_now) local exit_code=0 "$@" && exit_code=$? || exit_code=$?