小编std*_*bar的帖子

错误:NotAuthorizedError - AWS eb init 上的操作被拒绝

我尝试使用命令 eb init 使用 eb cli 初始化弹性 beanstalk 应用程序。经过几个步骤后,它会要求输入一些信息来创建公钥。但是,当我输入时,它给出“错误:NotAuthorizedError - 操作被拒绝。您无权执行此操作。编码的授权失败消息:”错误。此处列出了我的 IAM 用户角色:

 AWSCodeCommitFullAccess
 AmazonEC2ContainerRegistryFullAccess
 AWSElasticBeanstalkMulticontainerDocker
 AmazonECS_FullAccess
 AmazonECSTaskExecutionRolePolicy
 AmazonEC2ContainerServiceforEC2Role
 AmazonEC2ContainerServiceRole
 AdministratorAccess-AWSElasticBeanstalk
 AWSElasticBeanstalkReadOnly
Run Code Online (Sandbox Code Playgroud)

我是否需要额外的权限才能初始化 beanstalk 应用程序?

amazon-web-services amazon-iam amazon-elastic-beanstalk

13
推荐指数
2
解决办法
7855
查看次数

使用MongoDB-Java驱动程序从数组中删除条目

我有JSON喜欢:

{ 
    "_id" : "1",
    "_class" : "com.model.Test",
    "itemList" : [
        {
            "itemID" : "1",
            "itemName" : "Foo",
            "resources" : [ 
                { 
                    "resourceID" : "1",
                    "resourceName" : "Foo Test1"
                 }, {
                    "resourceID" : "2",
                    "resourceName" : "Foo Test2"
                 }
             ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我需要能够删除itemList的记录之一.我做了以下事情:

public void removeItemByID(String docID, String itemID) throws Exception {
    MongoOperations mongoOperations = mongoConfiguration.getMongoTemplate();
    Query query = new   Query(where("_id").is(docID).and("itemList.itemID").is(itemID));
    mongoOperations.remove(query, Item.class);
Run Code Online (Sandbox Code Playgroud)

}

这种方法不起作用.但是,当我使用带有$ pull方法的BasicDBObject时,它工作正常!这些方法有什么区别!

java spring mongodb

9
推荐指数
2
解决办法
9435
查看次数

从具有多个线程的SQS队列中读取

注意:这是来自此处的线程的重新发布。

大家好,我有一个处理单个SQS队列中的消息的过程。队列中可以包含许多消息,每条消息都会导致数据库命中。因此,我想将这个队列的读者作为线索。

每个线程的基本代码是:

public void run() {
    while(true) {
        ReceiveMessageRequest rmr = new ReceiveMessageRequest(queueUrl)
               .withMaxNumberOfMessages(10)
               .withWaitTimeSeconds(3);
        List<Message> messages = sqsClient.receiveMessage(rmr).getMessages();
        // process messages
        // delete messages
    }
}
Run Code Online (Sandbox Code Playgroud)

我看到的是线程之间有大量重复的消息。我知道我应该在这里和那里看到一些重复,但是似乎每个线程都收到相同的消息集,实际上,只有一个线程可以完成很多工作。

我是误解了如何使用API​​还是做错了其他事情?Javadocs指出AmazonSQS类是线程安全的,实际上,即使为每个线程创建一个新的AmazonSQS类也没有改变。

任何指针将不胜感激。我当前的解决方案是从SQS队列中读取单个线程,将每个消息放入类似LinkedBlockingDeque的内容中,然后由工作人员读取。但是我觉得该实现不会像我希望的那样快耗尽队列。

java multithreading amazon-sqs amazon-web-services

6
推荐指数
1
解决办法
3535
查看次数

多行数据的 Kibana 搜索在换行后不返回数据

我对 ElasticSearch 和 Kibana 很陌生。我已经设置了一个 LogStash,它发布一个包含新行的字段 - 它是一个使用多行编解码器的 Java 堆栈跟踪。

我正在搜索的字段如下所示:

Exception message of some sort all on the very first line\ntld.domain.package.Exception: Something bad happened!\n\tat tld.domain.other.package.method\n
Run Code Online (Sandbox Code Playgroud)

我想从第一个换行符之后找到信息,但我的 google-fu 无法找到答案。

有什么想法吗?

elasticsearch logstash kibana-4

5
推荐指数
0
解决办法
643
查看次数

如何在 AWS Lambda 函数中获取 eventName?

我对 AWS Lambda 很陌生。当我的表被修改时,我的 Lambda func 和 DynamoDB 表之间有一个触发器设置。Lambda 函数成功将事件打印到云监视日志。我有麻烦搞清楚如何检查事件是INSERTMODIFY在dynamoDB。我想检查一个if声明。当我刚print(event)得到

{
  "Records": [
    {
      "eventID": "26e6ac4f1c16fc40fd91536430c1ac72",
      "eventName": "MODIFY",
      "eventVersion": "1.1",
      "eventSource": "aws:dynamodb",
      "awsRegion": "us-east-1",
      "dynamodb": {
        "ApproximateCreationDateTime": 1612293148,
        "Keys": {
          "id": {
            "S": "d66ec59b-b807-4db9-96ed-3ebd3638779a450b7a75-6dce-4be9-babf-1077adb84b02"
          }
        },
        "NewImage": {
          "__typename": {
            "S": "Conversation"
          },
          "members": {
            "L": [
              {
                "S": "450b7a75-6dce-4be9-babf-1077adb84b02"
              },
              {
                "S": "d66ec59b-b807-4db9-96ed-3ebd3638779a"
              }
            ]
          },
          "isRead": {
            "BOOL": false
          },
          "recipient": {
            "S": "d66ec59b-b807-4db9-96ed-3ebd3638779a"
          },
          "latestMessage": {
            "S": "Hey man" …
Run Code Online (Sandbox Code Playgroud)

python amazon-web-services aws-lambda

1
推荐指数
1
解决办法
183
查看次数