aws-xray-ts-decorator
v0.0.9
Published
Instrument your Promises with AWS X-Ray in Typescript with elegant decorators
Downloads
437
Maintainers
Readme
AWS X-Ray Typescript Decorator
Tired of using AWSXRay.captureAsyncFunc
and/or AWSXRay.capturePromise
polluting the body of your methods? Instrument your class async methods and Promises with this simple yet elegant decorator.
Install
yarn add aws-xray-ts-decorator
or with NPM
npm install aws-xray-ts-decorator --save
Usage
class MyTestClass {
// All of these arguments are optional
@XRayInstrumented({
segmentName: "customSegmentName", // by default it's name of called function
metadata: { // Add custom metadata as StringMap
memberId: "1"
},
annotations: { // Add custom annotations as StringMap
context: "this is important!"
},
forceCreateSegment: true, // Creates new AWSXRay.Segment if such is not created yet
addParamsMetadata: true // Adds function parameters as metadata of subsegment
})
someAsyncMethod(input: number): Promise<any> {
...
}
}
This snippet will start a subsegment customSegmentName
before someAsyncMethod
gets invoked and close it as soon as it resolves.
For more details, see example.
Author
👤 Rafal Wilinski <[email protected]>
- Twitter: @rafalwilinski
- Github: @RafalWilinski
🤝 Contributing
Contributions, issues and feature requests are welcome!Feel free to check issues page.
Show your support
Give a ⭐️ if this project helped you!
📝 License
Copyright © 2019 Rafal Wilinski <[email protected]>. This project is MIT licensed.