Ошибка «Файл манифеста не найден» при создании источника данных S3 QuickSight с использованием AWS CLI - PullRequest
0 голосов
/ 08 января 2020

При использовании AWS QuickSight API для создания источника данных, указывающего на манифест, хранящийся в S3, я всегда получаю эту ошибку:

An error occurred (InvalidParameterValueException) when calling the CreateDataSource operation: Manifest file was not found

Это происходит с помощью CLI а также C# SDK. Я подтвердил, что манифест присутствует и исправлен, вручную создав из него набор данных в пользовательском интерфейсе QuickSight. Я испробовал все виды комбинаций форматов имени и ключа группы (имя группы, s3 arn, http путь, ключ s3 и т. Д. c).

Я отправляю запрос следующим образом:

aws quicksight create-data-source --cli-input-json file://./create-data-source-cli-input.json

Вот содержимое запроса (закрытые значения заменены на xxxx)

{
    "AwsAccountId": "xxxx",
    "DataSourceId": "85a8e263-a052-42df-abc9-98c6e60678e57",
    "Name": "TestDatasource",
    "Type": "S3",
    "DataSourceParameters": {
        "S3Parameters": {
            "ManifestFileLocation": {
                "Bucket": "xxxx",
                "Key": "xxxx"
            }
        }
    }
}

Кто-нибудь еще сталкивался с этим? Спасибо за любую помощь заранее.

Ответы [ 2 ]

1 голос
/ 10 января 2020

Я дам вам список вещей, которые вы можете попробовать (это может или не может решить вашу проблему)

  • Сначала проверьте роли

    • Вы можете сделать это на консоли или написать самостоятельно, предоставляя доступ к S3 в Quicksight. Это будет выглядеть примерно так
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Action": [
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::*"
            ]
        },
        {
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::*/*"
            ]
        }
    ]
    }
    
  • Также посмотрите на другие виды или роли или Политики, которые могут вам понадобиться

  • Если они не работают, перейдите по этой ссылке , когда вы не можете подключиться к источнику данных s3 , но я думаю, что вы, возможно, уже сделали который.

Надеюсь, что поможет

0 голосов
/ 11 января 2020

После экспериментов я обнаружил, что файл, указанный ключом в ManifestFileLocation, не может содержать пробел в имени. Я попытался заменить пробел символом + в запросе и% 20, но он все равно не работает.

Единственное решение, которое я нашел, - это удаление пробелов в имени файла манифеста. Если это единственное решение, похоже, это ошибка в SDK QuickSight.

...