All notable changes to this project will be documented in this file.
- Fixed AWS service callback scope issue
- Fixed broken application id generation on serverless local invoke
- Fixed configuration check while instrumenting custom modules
- Added line by line tracing support
- Disabled metric and log plugins by default
- Added AWS X-Ray trace id and segment id into invocation tags
- Chained execution hooks and reporting through Promises
- Awaited completion of execution hooks before invocation
- Introduced "Trace Link" API
- Added ability to specify custom exception through
InvocationSupport
- Removed Promise chaining for calling original function after
beforeExecution
hook which might cause exception swallowing
- Decide collector API endpoint based on current region adaptively
- Hide Thundra internal requires from Webpack for integrations
- Add
require-in-the-middle
to dependencies
- Handle
ECONNRESET
error when keepAlive connection is terminated by the server
- Decided metric sampling before invocation to prevent unnecessary initial metric calculation
- Missing MySQL patching issue after
require-in-the-middle
removal
- AWS Athena integration
- HTTP path depth configuration
- Move rollup to dev dependencies
- Fixed
Init
invocationData.userTagswith empty object
- IORedis integration
- Distinguish user tags
- Replace webpack with rollup and remove
require-in-the-middle
- Fixed #51
- Fixed
Handled target ARN and phone number based SNS publish requests
- Fixed
Handled non-existing host header in the API GW triggers
- Fixed
Added API GW detection support based on HTTP response header
- MongoDB integration
- New and improved sampling api
- Mask error stack traces
- Fixed #54
- Fixed #52
- Fixed
Log Level filtering does not work with console.log integration
- Fixed
Send data of SNS, SQS, Lambda and HTTP operations with masking capability
- Fixed
Don't send Kinesis, Firehose and CloudWatch log event data
- Fixed
Nodejs agent composite data model support over CW logs
- Fixed
error.message tag must be string type
- Fixed
Do not send trace data with trace plugin
- Fixed
Use generated transaction id instead of request id
- Fixed
Introduce
ThundraChaosErrorpropagate it correctly with AWS SDK
- Distributed tracing support
- Ability to apply custom span sampler to all spans
- Agent version is set to wrong value
- Wrapped context does not override callbackWaitsForEmptyEventLoop correctly
- Ability to mask db statements in integrations
- Send resource infromation in invocation data
- Composite data model and batch reporting support
- Elasticsearch fix getting host when multiple host is configured
- Root span and invocation duration are compatible
- Implement
ErrorInjectorSpanListener
,FilteringSpanListener
andLatencyInjectorSpanListener
- Implement ES and MySQL V1 integrations
- Implement sampling only Timed out Invocations
- Fixes #47
- Use InvocationSupport to pass functionName to Integrations
- Fix lambda timing out when used with https://www.npmjs.com/package/serverless-mysql
- Trace HTTPS calls
- Bug fix in in TraceConfig programmatic config
- Bug fixes in AWS Integrations
- Enable default sampling for Metric Plugin
- Integrated Thundra Log Plugin with NodeJS console
- Warmup plugin is disabled by default
- Added trigger tags for AWS Event
- Implemented trace propagation with opentracing
- Aws XRay Integration
- Tag support
- Sampling support
- Add missing tags data to integrations for better ui integration
- Enable integrations by default
- Propagated span from trace entry to exit through entry data
- Cleanup LogManager after each invocation
- AWS and HTTP integrations spans were not closed correctly fixed now. Removed HTTPS integration, it is not needed
https
module is usinghttp
underneath.
- Enable log plugin to be used before initialising Thundra Agent
- Migration to new data model
- Async support
- Region adaptable timeout margin
- Enable
keepAlive
in http connections - Automatic instrumentation integrations with
pg
,mysql
,redis
,aws
- Enable debug mode with environment variables
- Fix errors when running with serverless offline plugin
- Manual instrumentation support with OpenTracing API
- Automatic instrumentation support
- Mask trace of request and response of Lambda Invocation
- Fix crash if env variable
process.env.AWS_LAMBDA_LOG_STREAM_NAME
not set
timeout
field is added to trace properites
functionARN
,logGroupName
,logStreamName
,requestId
fields are added to trace properites
- Trace data should show response if error type is HTTP error
- Timeout detection support
- Parse Lambda Proxy Integration response for error detection for 5xx and 4xx responses
- Disable request/response via environment variables
- Invocation plugin and data type
- Response is set wrong when there is an error
- A bug related to wrong usage of Node's URL module
- URL configuration via
thundra_lambda_publish_rest_baseUrl
environment variable
- Timestamp support
- Warmup support
- Log plugin support
thundra_lambda_publish_cloudwatch_enable
environment variable check
thundra_lambda_publish_cloudwatch_enable
environment variable check
- Metric support
- Support for passing API key as an environment variable
- Initial agent with tracing support