@sekimori/codemod
v0.1.0
Published
Codemod: aws-xray-sdk-core / Powertools for AWS Lambda Tracer → OpenTelemetry API (sekimori migrate).
Maintainers
Readme
@sekimori/codemod
sekimori migrate — a ts-morph codemod that moves aws-xray-sdk-core and Powertools for AWS Lambda
(TypeScript) Tracer usage to the OpenTelemetry API, and emits a migration report listing constructs that have
no mechanical mapping.
What it rewrites
import { Tracer } from "@aws-lambda-powertools/tracer"→createTracerfromsekimori/tracer;new Tracer({ serviceName })→createTracer(serviceName)AWSXRay.captureAWS*/captureHTTPs*→ the wrapped value (contrib instrumentation takes over)AWSXRay.getSegment()/resolveSegment()→trace.getActiveSpan()AWSXRay.captureAsyncFunc(name, fn)/captureFunc→tracer.startActiveSpan(name, fn), rewritingsubsegment.close()→end,addAnnotation→setAttribute,addError→recordException,addMetadata→metadata.*attributes
Everything else — setSegment, addNewSubsegment, decorators, CJS require, aliased imports — is listed in
the report as manual findings, not silently broken.
Usage
sekimori migrate src/ # dry-run report
sekimori migrate src/ --write # rewrite in place
sekimori migrate src/ --json # machine-readable reportProgrammatic: transformSource(source) / migrateFile(path, { write }) / migratePaths(paths, { write }).
Design: docs/concept.md DEC-003 in the sekimori repository.
