如何查找 SQS 队列是手动创建的还是使用 CF 模板创建的?
How to find if SQS queue was created manually or using CF template?
我尝试了以下方法,但它没有给我任何 CF 模板 ID 或任何允许我找到的描述。
示例:
aws sqs get-queue-attributes --queue-url https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue --attribute-names All*
输出:
{
"Attributes": {
"ApproximateNumberOfMessagesNotVisible": "0",
"RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":1000}",
"MessageRetentionPeriod": "345600",
"ApproximateNumberOfMessagesDelayed": "0",
"MaximumMessageSize": "262144",
"CreatedTimestamp": "1442426968",
"ApproximateNumberOfMessages": "0",
"ReceiveMessageWaitTimeSeconds": "0",
"DelaySeconds": "0",
"VisibilityTimeout": "30",
"LastModifiedTimestamp": "1442426968",
"QueueArn": "arn:aws:sqs:us-east-1:80398EXAMPLE:MyNewQueue"
}
}
可以通过传递 Queue URL(即 Physical ID of an AWS::SQS::Queue
Resource) as the PhysicalResourceId
parameter to DescribeStackResources
.
来确定 SQS 队列是否是 CloudFormation 堆栈的一部分
使用 AWS CLI describe-stack-resources
命令,您将需要使用 --cli-input-json [json_file]
传递参数,因为 --physical-resource-id
参数将尝试解析 Queue URL 时直接提供。
示例:
aws cloudformation describe-stack-resources --cli-input-json '{"PhysicalResourceId": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue"}'
如果队列是堆栈的一部分,则会返回堆栈资源的列表。如果不是,则返回 ValidationError
。
我尝试了以下方法,但它没有给我任何 CF 模板 ID 或任何允许我找到的描述。
示例:
aws sqs get-queue-attributes --queue-url https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue --attribute-names All*
输出:
{
"Attributes": {
"ApproximateNumberOfMessagesNotVisible": "0",
"RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":1000}",
"MessageRetentionPeriod": "345600",
"ApproximateNumberOfMessagesDelayed": "0",
"MaximumMessageSize": "262144",
"CreatedTimestamp": "1442426968",
"ApproximateNumberOfMessages": "0",
"ReceiveMessageWaitTimeSeconds": "0",
"DelaySeconds": "0",
"VisibilityTimeout": "30",
"LastModifiedTimestamp": "1442426968",
"QueueArn": "arn:aws:sqs:us-east-1:80398EXAMPLE:MyNewQueue"
}
}
可以通过传递 Queue URL(即 Physical ID of an AWS::SQS::Queue
Resource) as the PhysicalResourceId
parameter to DescribeStackResources
.
使用 AWS CLI describe-stack-resources
命令,您将需要使用 --cli-input-json [json_file]
传递参数,因为 --physical-resource-id
参数将尝试解析 Queue URL 时直接提供。
示例:
aws cloudformation describe-stack-resources --cli-input-json '{"PhysicalResourceId": "https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue"}'
如果队列是堆栈的一部分,则会返回堆栈资源的列表。如果不是,则返回 ValidationError
。