README «Примеры документации AWS SDK для C ++» гласит:
Чтобы создать и запустить эти примеры, вам понадобятся: … учетные данные AWS, настроенные в локальном файле учетных данных AWS или путем установки переменных среды AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY.
https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/cpp
Файл учетных данных:
$ cat ~/.aws/credentials
[default]
aws_access_key_id = ...
aws_secret_access_key = ...
output = text
region = us-west-2
Клиентская команда AWS работает правильно:
$ aws cloudwatch put-metric-data \
--namespace aws-sdk-cpp-test \
--metric-name "New Posts" \
--timestamp "$(date)" \
--value 0.7 \
--unit Count
Тем не менее, если я запускаю cw_put_metric_data
Например, показатели идут к нам-восток-1 вместо нас-запад-2.
РЕДАКТИРОВАТЬ:
Aws :: CloudWatch :: CloudWatchClient создается с использованием Aws :: Client: ClientConfiguration по умолчанию, в которой регион жестко привязан к US_EAST_1. Итак, вопрос в том, как использовать ~ / .aws / credentials?
Вы можете использовать этот класс:
Затем используйте значения для передачи вашей конфигурации клиента.
Других решений пока нет …