具有启用日志记录的 cloudformation 的 AWS DMS 需要一个日志组
AWS DMS with cloudformation enabling logging needs a log group
我正在使用 Cloudformation 完成所有这些工作。我已尝试为已经在运行的复制任务启用日志记录,但我无法在任何地方看到日志,似乎应该为日志创建一个组并且文档中没有类似的选项。我在 Replication Task 的文档中找不到日志组的参数。[1] [2] [3]
这是我的复制任务。
ReplicationTask:
Type: 'AWS::DMS::ReplicationTask'
Properties:
SourceEndpointArn: !Ref SourceEndpoint
TargetEndpointArn: !Ref TargetEndpoint
ReplicationInstanceArn: !Ref ReplicationInstance
MigrationType: 'full-load'
TableMappings: '
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "%",
"table-name": "%"
},
"rule-action": "include"
}
]
}'
ReplicationTaskSettings: '
{
"Logging": {
"EnableLogging": true,
"LogComponents": [{
"Id": "SOURCE_UNLOAD",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "SOURCE_CAPTURE",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "TARGET_LOAD",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "TARGET_APPLY",
"Severity": "LOGGER_SEVERITY_INFO"
},{
"Id": "TASK_MANAGER",
"Severity": "LOGGER_SEVERITY_DEBUG"
}]
},
}'
当我单击复制任务时,我在日志选项卡中看到一个 link,它将我带到云监视,在那里我看到一个错误 Log group not found
参考文献:
[1] http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html
[2]http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html
[3] http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html
您需要为用户设置。这些文档链接可让您更深入地了解。
- https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.APIRole.html
- https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.IAMPermissions.html
您需要提前创建这些角色,或者在CloudFormation模板中创建。
编辑:似乎有时新的 AWS 控制台无法自动创建这两个 IAM 角色。因此您可能需要手动创建它们。
我遇到了类似的问题,我能够通过手动创建 'dms-cloudwatch-logs-role' 来解决它。创建角色时,您必须将 'AmazonDMSCloudWatchLogsRole' 策略附加到代入角色。请关注此 AWS 故障排除信息 link,它非常有帮助。
https://aws.amazon.com/premiumsupport/knowledge-center/dms-cloudwatch-logs-not-appearing/
我正在使用 Cloudformation 完成所有这些工作。我已尝试为已经在运行的复制任务启用日志记录,但我无法在任何地方看到日志,似乎应该为日志创建一个组并且文档中没有类似的选项。我在 Replication Task 的文档中找不到日志组的参数。[1] [2] [3]
这是我的复制任务。
ReplicationTask:
Type: 'AWS::DMS::ReplicationTask'
Properties:
SourceEndpointArn: !Ref SourceEndpoint
TargetEndpointArn: !Ref TargetEndpoint
ReplicationInstanceArn: !Ref ReplicationInstance
MigrationType: 'full-load'
TableMappings: '
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "%",
"table-name": "%"
},
"rule-action": "include"
}
]
}'
ReplicationTaskSettings: '
{
"Logging": {
"EnableLogging": true,
"LogComponents": [{
"Id": "SOURCE_UNLOAD",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "SOURCE_CAPTURE",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "TARGET_LOAD",
"Severity": "LOGGER_SEVERITY_DEFAULT"
},{
"Id": "TARGET_APPLY",
"Severity": "LOGGER_SEVERITY_INFO"
},{
"Id": "TASK_MANAGER",
"Severity": "LOGGER_SEVERITY_DEBUG"
}]
},
}'
当我单击复制任务时,我在日志选项卡中看到一个 link,它将我带到云监视,在那里我看到一个错误 Log group not found
参考文献:
[1] http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html
[2]http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html
[3] http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html
您需要为用户设置。这些文档链接可让您更深入地了解。
- https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.APIRole.html
- https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.IAMPermissions.html
您需要提前创建这些角色,或者在CloudFormation模板中创建。
编辑:似乎有时新的 AWS 控制台无法自动创建这两个 IAM 角色。因此您可能需要手动创建它们。
我遇到了类似的问题,我能够通过手动创建 'dms-cloudwatch-logs-role' 来解决它。创建角色时,您必须将 'AmazonDMSCloudWatchLogsRole' 策略附加到代入角色。请关注此 AWS 故障排除信息 link,它非常有帮助。
https://aws.amazon.com/premiumsupport/knowledge-center/dms-cloudwatch-logs-not-appearing/