是否有工具只使用API​​密钥查看SQS队列状态?

时间:2018-03-29 05:20:30

标签: amazon-web-services amazon-sqs amazon-ses

我正在使用SQS处理Amazon SES以接收电子邮件的退回列表。出于安全原因,我只获得了连接到SES和SQS服务所需的信息(主机名,API密钥等),因此我无法使用AWS控制台查看队列的状态。这是合理的,因为我不想搞砸同一帐户下的许多其他服务 - 特别是当服务不是免费的时候。但是,当SES将作业添加到SQS时,我需要一种方法来查看SQS中的内容,以便知道该错误是因为作业不在SQS内部还是因为我的代码无法检索这份工作。

那么,当我无法访问AWS控制台时,是否有可以查看SQS状态的工具?

1 个答案:

答案 0 :(得分:2)

是的,您可以使用AWS CLI(https://aws.amazon.com/cli/)查看有关队列的基本信息:

例如:

aws sqs get-queue-attributes --queue-url https://sqs.us-east-1.amazonaws.com/99999999/HBDService-BackgroundTaskQueue --attribute-names All

会告诉你:

{
    "Attributes": {
        "LastModifiedTimestamp": "1522235654",
        "ApproximateNumberOfMessages": "7",
        "ReceiveMessageWaitTimeSeconds": "20",
        "CreatedTimestamp": "1522235629",
        "ApproximateNumberOfMessagesDelayed": "0",
        "QueueArn": "arn:aws:sqs:us-east-1:999999999:HBDService-BackgroundTaskQueue",
        "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:999999999:HBDService-BackgroundTaskQueue-DLQ\",\"maxReceiveCount\":100}",
        "MaximumMessageSize": "262144",
        "DelaySeconds": "0",
        "ApproximateNumberOfMessagesNotVisible": "0",
        "MessageRetentionPeriod": "1209600",
        "VisibilityTimeout": "180"
    }
}