개요
aws cli를 이용해 SQS의 목록을 확인하고 필요한 정보를 확인해보도록 한다. 당연하지만 SQS 정보에 접근할 권한이 있어야 한다.
SQS 목록 확인
aws sqs list-queues \
--region <REGION>
# 예시
aws sqs list-queues \
--region ap-northeast-2
# 결과
{
"QueueUrls": [
"https://queue.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue",
"https://queue.amazonaws.com/80398EXAMPLE/MyQueue",
"https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue",
"https://queue.amazonaws.com/80398EXAMPLE/TestQueue1",
"https://queue.amazonaws.com/80398EXAMPLE/TestQueue2"
]
}
SQS 큐 URL 외의 다른 출력은 없다. ……왜 옵션을 통해서조차 name을 반환하지 않는지는 잘 모르겠다🤔.
특정 문자열로 시작하는 SQS 목록
aws sqs list-queues \
--queue-name-prefix <PREFIX>
# 예시
aws sqs list-queues \
--region ap-northeast-2 \
--queue-name-prefix dev
예시는 이름이 dev라는 문자열로 시작하는 SQS의 URL만을 반환한다.
특정 큐의 URL 확인
aws sqs get-queue-url \
--queue-name <NAME>
# 예시
aws sqs get-queue-url \
--queue-name MyQueue
원하는 큐의 URL 정보를 확인할 수도 있다. URL을 확인할 큐의 이름을 지정해야 한다.
특정 큐의 속성 확인
특정 큐의 속성 정보를 확인한다. 속성을 확인할 큐의 URL과 확인할 속성명을 지정해야 한다. 모든 속성을 확인할 때는 ALL로 지정한다. 사용할 수 있는 속성값은 문서에서 확인할 수 있다.
모든 속성 확인
aws sqs get-queue-attributes \
--queue-url <URL> \
--attribute-names <ATTRIBUTE>
# 예시
aws sqs get-queue-attributes \
--region ap-northeast-2 \
--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"
}
}
여러 속성 확인 (SQS ARN, 표시 메시지 수)
여러 개의 속성을 확인할 때에는 공백으로 구분하여 나열한다.
aws sqs get-queue-attributes \
--queue-url https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue \
--attribute-names <ATRRIBUTE> <ATRRIBUTE> <ATRRIBUTE> ...
# 예시
aws sqs get-queue-attributes \
--region ap-northeast-2 \
--queue-url https://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue \
--attribute-names QueueArn ApproximateNumberOfMessages
특정 SQS의 TAG 확인
TAG를 확인할 큐의 URL 지정하여 TAG 키와 값을 확인할 수 있다.
aws sqs list-queue-tags \
--queue-url <URL>
# 예시
aws sqs list-queue-tags \
--region ap-northeast-2 \
--queue-url https://sqs.us-west-2.amazonaws.com/123456789012/MyQueue
# 결과
{
"Tags": {
"Team": "Alpha"
}
}
참고 문서
https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sqs/index.html