【发布时间】:2021-10-17 04:33:12
【问题描述】:
我正在尝试将现有日志组添加到我的 ECS 计划任务中,以避免创建具有随机名称的新日志组。但是 aws-cdk(打字稿)不断给我错误,即类型不可分配。
const myLogGroup = LogGroup.fromLogGroupArn(this, 'MyLogGroup', 'log-group-arn')
const logging = ecs.LogDrivers.awsLogs({
streamPrefix: 'mylg',
logGroup: myLogGroup
});
logGroup: myLogGroup 给出错误:
Type 'import("/Users/praveen/code/cron-cdk/node_modules/@aws-cdk/aws-logs/lib/log-group").ILogGroup' is not assignable to type 'import("/Users/praveen/code/cron-cdk/node_modules/@aws-cdk/aws-ec2/node_modules/@aws-cdk/aws-logs/lib/log-group").ILogGroup'.
The types of 'addStream(...).stack.tags' are incompatible between these types.
Type 'import("/Users/praveen/code/cron-cdk/node_modules/@aws-cdk/aws-logs/node_modules/@aws-cdk/core/lib/tag-manager").TagManager' is not assignable to type 'import("/Users/praveen/code/cron-cdk/node_modules/@aws-cdk/core/lib/tag-manager").TagManager'.
Types have separate declarations of a private property 'tags'.ts(2322)
aws-log-driver.d.ts(51, 14): The expected type comes from property 'logGroup' which is declared here on type 'AwsLogDriverProps'
(property) AwsLogDriverProps.logGroup?: ILogGroup | undefined
有什么想法可以使用我现有的日志组吗? 我的计划任务定义是这样的 -
new ScheduledFargateTask(this, 'cleanup', {
cluster,
scheduledFargateTaskImageOptions: {
image: ecs.ContainerImage.fromAsset('scripts/cleanup'),
memoryLimitMiB: 512,
logDriver: logging,
},
schedule: events.Schedule.expression('rate(12 hours)'),
platformVersion: ecs.FargatePlatformVersion.LATEST,
});
【问题讨论】:
标签: typescript amazon-web-services amazon-ecs aws-cdk