ecs: ADOT Collector Construct
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 83
Description
### Describe the feature
I would like a construct to deploy the AWS Distro For OpenTelemetry collector into my ECS cluster.
This would mirror what is available in the [cloudformation template provided by ADOT](https://aws-otel.github.io/docs/setup/ecs), but in a nice-to-use CDK construct.
### Use Case
From my understanding, to use the AWS Distro for Opentelemetry in ECS you deploy a task to you cluster to collect your data.
The ADOT documentation provides 3 ways to do this: Cloudformation, Creating an ECS task, or manually in the console.
As with other infrastructure I would like to deploy it using the CDK.
Inspired by https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.AdotLambdaExecWrapper.html
### Proposed Solution
```typescript
declare const cluster: ecs.Cluster;
declare const subnets: vpc.subnetSelection
declare const mySecurityGroup: ec2.SecurityGroup
new ecs.AdotCollector(this, "Collector", {
cluster,
subnets,
securityGroups: [mySecurityGroup],
});
```
### Other Information
_No response_
### Acknowledgements
- [X] I may be able to implement this feature request
- [ ] This feature might incur a breaking change
### CDK version used
2.69
### Environment details (OS name and version, etc.)
?
Contributor guide
Research direction
Start with the ADOT ECS CloudFormation template linked in the issue and compare its deployment requirements with the proposed CDK construct inputs. Define what the cluster, subnet, and security-group options must produce, then verify that the construct deploys an equivalent collector setup.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, typescript
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100