[ aws . synthetics ]
create-canary
Описание
Создает кэнори. Кэнори — это скрипты, которые отслеживают ваши конечные точки и API извне. Кэнори помогают проверить доступность и задержки ваших веб-сервисов, а также устранить неполадки, исследуя данные о времени загрузки, скриншоты интерфейса, журналы и метрики. Вы можете настроить кэнори на непрерывную работу или только один раз.
Не используйте CreateCanary для изменения существующего кэнори. Используйте UpdateCanary вместо этого.
Для создания кэнори необходимо иметь политику CloudWatchSyntheticsFullAccess. Если вы создаёте новую роль IAM для кэнори, вам также потребуются разрешения iam:CreateRole, iam:CreatePolicy и iam:AttachRolePolicy. Дополнительную информацию см. в разделе Необходимые роли и разрешения.
Не включайте секреты или конфиденциальную информацию в имена ваших кэнори. Имя кэнори является частью Amazon Resource Name (ARN) кэнори, а ARN включен в исходящие вызовы через Интернет. Дополнительную информацию см. в разделе Учет мер безопасности для кэнори Synthetics.
См. также: AWS API Documentation
Синопсис
create-canary
--name <value>
--code <value>
--artifact-s3-location <value>
--execution-role-arn <value>
--schedule <value>
[--run-config <value>]
[--success-retention-period-in-days <value>]
[--failure-retention-period-in-days <value>]
--runtime-version <value>
[--vpc-config <value>]
[--resources-to-replicate-tags <value>]
[--provisioned-resource-cleanup <value>]
[--tags <value>]
[--artifact-config <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
Имя этого канарейки. Убедитесь, что имя описательное и отличает его от других канареек в вашей учетной записи.
Не включайте секреты или конфиденциальную информацию в имена канареек. Имя канарейки является частью ARN канарейки, а ARN включается в исходящие вызовы по сети Интернет. Для получения дополнительной информации см. Раздел «Рекомендации по обеспечению безопасности для канареек Synthetics».
--code (структура)
Структура, содержащая точку входа, с которой канарейка должна начать выполнение вашей скрипта. Если скрипт хранится в ведре S3, также указаны имя ведра, ключ и версия.
S3Bucket -> (строка)
s3:// в качестве начала имени ведра.S3Key -> (строка)
S3Version -> (строка)
ZipFile -> (объект)
Если вы вводите скрипт канарейки непосредственно в канарейку вместо ссылки на расположение в S3, значение этого параметра — содержимое .zip-файла со скриптом в кодировке base64. Размер файла должен быть меньше 225 Кб.
Для больших скриптов канареек рекомендуется использовать расположение в S3 вместо непосредственного ввода с помощью этого параметра.
Handler -> (строка)
syn-python-selenium-1.0 или среду выполнения syn-nodejs.puppeteer, предшествующую syn-nodejs.puppeteer-3.4, обработчик должен быть указан как `` fileName .handler``. Для syn-python-selenium-1.1, syn-nodejs.puppeteer-3.4 и более поздних сред выполнения обработчик может быть указан как `` fileName .*functionName* ``, или вы можете указать папку, где хранятся скрипты канареек, как `` folder /fileName .*functionName* ``.Краткая синтаксическая запись:
S3Bucket=string,S3Key=string,S3Version=string,ZipFile=blob,Handler=string
Синтаксис JSON:
{
"S3Bucket": "string",
"S3Key": "string",
"S3Version": "string",
"ZipFile": blob,
"Handler": "string"
}
--artifact-s3-location (строка)
--execution-role-arn (строка)
ARN роли IAM, которая будет использоваться для запуска канарейки. Эта роль должна уже существовать и должна включать lambda.amazonaws.com в качестве принципала в политике доверия. Роль также должна иметь следующие разрешения:
s3:PutObjects3:GetBucketLocations3:ListAllMyBucketscloudwatch:PutMetricDatalogs:CreateLogGrouplogs:CreateLogStreamlogs:PutLogEvents
--schedule (структура)
Структура, содержащая информацию о частоте запуска канарейки и о том, когда эти тестовые запуски должны быть остановлены.
Expression -> (строка)
Выражение rate или выражение cron, определяющее, как часто должна запускаться канарейка.
Для выражения скорости синтаксис — rate(*number unit* ). unit может быть minute, minutes или hour.
Например, rate(1 minute) запускает канарейку один раз в минуту, rate(10 minutes) — один раз каждые 10 минут, а rate(1 hour) — один раз в час. Вы можете указать частоту от rate(1 minute) до rate(1 hour).
Указание rate(0 minute) или rate(0 hour) является специальным значением, которое заставляет канарейку запускаться только один раз при запуске.
Используйте cron(*expression* ) для указания выражения cron. Вы не можете запланировать канарейку на ожидание более года перед запуском. Для получения информации о синтаксисе выражений cron см. Раздел «Планирование запусков канареек с использованием cron».
DurationInSeconds -> (целое)
Expression. Если вы укажете 0, канарейка продолжает выполнять запуски до тех пор, пока вы ее не остановите. Если вы опустите этот параметр, используется значение по умолчанию 0.RetryConfig -> (структура)
Структура, содержащая конфигурацию повторных попыток для канарейки
MaxRetries -> (целое число)
Краткая синтаксическая запись:
Expression=string,DurationInSeconds=long,RetryConfig={MaxRetries=integer}
Синтаксис JSON:
{
"Expression": "string",
"DurationInSeconds": long,
"RetryConfig": {
"MaxRetries": integer
}
}
--run-config (структура)
Структура, содержащая конфигурацию отдельных запусков канарейки, например, значение тайм-аута и переменные среды.
Предупреждение
Ключи и значения переменных среды шифруются в состоянии покоя с использованием управляемых Amazon Web Services ключей KMS. Однако переменные среды не шифруются на стороне клиента. Не храните конфиденциальную информацию в них.TimeoutInSeconds -> (целое число)
Сколько времени канарейка может работать, прежде чем она должна остановиться. Вы не можете установить это время длиннее частоты запусков этой канарейки.
Если вы опустите этот параметр, в качестве этого значения используется частота канарейки, но не более 14 минут.
MemoryInMB -> (целое число)
ActiveTracing -> (булево)
Указывает, должна ли эта канарейка использовать активное отслеживание X-Ray при запуске. Активное отслеживание позволяет отображать этот запуск канарейки в картах сервисов ServiceLens и X-Ray, даже если канарейка не обращается к точке входа, для которой включено отслеживание X-Ray. Использование отслеживания X-Ray влечет за собой расходы. Для получения дополнительной информации см. Раздел «Канарейки и отслеживание X-Ray».
Активное отслеживание можно включить только для канареек, использующих версию syn-nodejs-2.0 или более позднюю версию среды выполнения канарейки.
EnvironmentVariables -> (карта)
Указывает ключи и значения для использования в переменных среды, используемых в скрипте канарейки. Используйте следующий формат:
{ “key1” : “value1”, “key2” : “value2”, …}
Ключи должны начинаться с буквы и иметь не менее двух символов. Общий размер ваших переменных среды не должен превышать 4 КБ. Вы не можете указывать любые зарезервированные переменные среды Lambda в качестве ключей для ваших переменных среды. Для получения дополнительной информации о зарезервированных ключах см. Раздел «Переменные среды среды выполнения».
Предупреждение
Ключи и значения переменных среды шифруются в состоянии покоя с использованием управляемых Amazon Web Services ключей KMS. Однако переменные среды не шифруются на стороне клиента. Не храните конфиденциальную информацию в них.key -> (строка)
value -> (строка)
Краткая синтаксическая запись:
TimeoutInSeconds=integer,MemoryInMB=integer,ActiveTracing=boolean,EnvironmentVariables={KeyName1=string,KeyName2=string}
Синтаксис JSON:
{
"TimeoutInSeconds": integer,
"MemoryInMB": integer,
"ActiveTracing": true|false,
"EnvironmentVariables": {"string": "string"
...}
}
--success-retention-period-in-days (целое число)
Количество дней для сохранения данных об успешных запусках этой канарейки. Если вы опустите этот параметр, используется значение по умолчанию — 31 день. Допустимый диапазон — от 1 до 455 дней.
Это значение влияет на диапазон информации, возвращаемой методом GetCanaryRuns, а также на диапазон информации, отображаемой в консоли Synthetics.
--failure-retention-period-in-days (целое число)
Количество дней для сохранения данных об неудачных запусках этой канарейки. Если вы опустите этот параметр, используется значение по умолчанию — 31 день. Допустимый диапазон — от 1 до 455 дней.
Это значение влияет на диапазон информации, возвращаемой методом GetCanaryRuns, а также на диапазон информации, отображаемой в консоли Synthetics.
--runtime-version (строка)
--vpc-config (структура)
Если эта канарейка должна протестировать конечную точку в VPC, эта структура содержит информацию о подсетях и группах безопасности конечной точки VPC. Для получения дополнительной информации см. Раздел «Запуск канарейки в VPC».
SubnetIds -> (список)
Идентификаторы подсетей, в которых должна выполняться эта канарейка.
(строка)
SecurityGroupIds -> (список)
Идентификаторы групп безопасности для этой канарейки.
(строка)
Ipv6AllowedForDualStack -> (булево)
true, чтобы разрешить исходящий IPv6-трафик для канареек VPC, подключенных к подсетям с двойной стековой архитектурой. Значение по умолчанию — false.Краткая синтаксическая запись:
SubnetIds=string,string,SecurityGroupIds=string,string,Ipv6AllowedForDualStack=boolean
Синтаксис JSON:
{
"SubnetIds": ["string", ...],
"SecurityGroupIds": ["string", ...],
"Ipv6AllowedForDualStack": true|false
}
--resources-to-replicate-tags (список)
Чтобы метки, которые вы применяете к этой канарейке, также применялись к функции Lambda, которую использует канарейка, укажите этот параметр со значением lambda-function.
Если вы укажете этот параметр и не укажете никаких меток в параметре Tags, создание канарейки завершится ошибкой.
(строка)
Синтаксис:
"string" "string" ...
Where valid values are:
lambda-function
--provisioned-resource-cleanup (строка)
Указывает, нужно ли также удалять функции и слои Lambda, используемые этой канарейкой, при удалении канарейки. Если вы опустите этот параметр, используется значение по умолчанию AUTOMATIC, что означает, что функции и слои Lambda будут удалены при удалении канарейки.
Если значение этого параметра — OFF, то значение параметра DeleteLambda операции DeleteCanary определяет, будут ли удалены функции и слои Lambda.
Возможные значения:
AUTOMATICOFF
--tags (карта)
Список пар «ключ-значение» для ассоциации с канарейкой. Вы можете ассоциировать до 50 меток с канарейкой.
Метки могут помочь вам организовать и классифицировать ресурсы. Вы также можете использовать их для определения разрешений пользователей, предоставив пользователю разрешение на доступ к или изменение только ресурсов, имеющих определенные значения меток.
Чтобы метки, которые вы применяете к этой канарейке, также применялись к функции Lambda, которую использует канарейка, укажите этот параметр со значением lambda-function.
key -> (строка)
value -> (строка)
Краткая синтаксическая запись:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--artifact-config (структура)
Структура, содержащая конфигурацию для артефактов кэнари, включая настройки шифрования артефактов, которые кэнари загружает в Amazon S3.
S3Encryption -> (структура)
Структура, содержащая конфигурацию настроек шифрования артефактов, которые кэнари загружает в Amazon S3. Функциональность шифрования артефактов доступна только для кэнари, использующих версию выполнения Synthetics syn-nodejs-puppeteer-3.3 или более позднюю. Дополнительную информацию см. в разделе Шифрование артефактов кэнари.
EncryptionMode -> (строка)
Метод шифрования, используемый для артефактов, созданных этим кэнари. Укажите SSE_S3 для использования шифрования на стороне сервера (SSE) с управляемым Amazon S3 ключом. Укажите SSE-KMS для использования шифрования на стороне сервера с управляемым клиентом ключом KMS.
Если этот параметр опущен, используется управляемый Amazon Web Services ключ KMS.
KmsKeyArn -> (строка)
SSE-KMS для EncryptionMode
Сокращенная синтаксис:
S3Encryption={EncryptionMode=string,KmsKeyArn=string}
Синтаксис JSON:
{
"S3Encryption": {
"EncryptionMode": "SSE_S3"|"SSE_KMS",
"KmsKeyArn": "string"
}
}
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной JSON-строки. JSON-строка соответствует формату, заданному в --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределяют значения, предоставленные JSON. Невозможно передавать произвольные двоичные значения, используя значение, предоставленное JSON, так как строка будет интерпретироваться буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если указано без значения или со значением input, выводит пример входного JSON, который может быть использован в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, выведет пример входного YAML, который можно использовать с --cli-input-yaml. При указании значения output, проверяет входные данные команд и возвращает пример выходного JSON для данной команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое)
Включить отладочный вывод.
--endpoint-url (строка)
Переопределить стандартный URL команды заданным URL.
--no-verify-ssl (логическое)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (логическое)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- on
- off
- auto
--no-sign-request (логическое)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться без блокировки и таймаута. Значение по умолчанию - 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения к сокету в секундах. Если значение установлено в 0, подключение к сокету будет выполняться без блокировки и таймаута. Значение по умолчанию - 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как закодированная в base64 строка. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, сопоставленного с двоичным блоком fileb:// всегда будет обрабатываться как двоичное и использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое)
Отключить вывод страницы CLI.
--cli-auto-prompt (логическое)
Автоматически запрашивать входные параметры CLI.
--no-cli-auto-prompt (логическое)
Отключить автоматическое запросы входных параметров CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве «Начало работы» в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, аналогичные Unix. Эти примеры потребуется адаптировать к правилам цитирования вашей терминальной оболочки. См. Использование кавычек со строками в руководстве пользователя AWS CLI.
Для создания кэнари
Следующий пример создания кэнари с именем demo_canary.
aws synthetics create-canary \
--name demo_canary \
--code '{"S3Bucket": "artifacts3bucket", "S3Key":"demo_canary.zip", "Handler": "index.lambda_handler"}' \
--artifact-s3-location s3://amzn-s3-demo-bucket/demo_canary.zip \
--execution-role-arn arn:aws:iam::123456789012:role/demo_canary_role \
--schedule Expression="rate(10 minutes)" \
--runtime-version syn-nodejs-puppeteer-9.1
Вывод:
{
"Canary": {
"Id": "a1b2c3d4-5678-90ab-cdef-example11111",
"Name": "demo_canary",
"Code": {
"Handler": "index.lambda_handler"
},
"ExecutionRoleArn": "arn:aws:iam::123456789012:role/demo_canary_role",
"Schedule": {
"Expression": "rate(10 minutes)",
"DurationInSeconds": 0
},
"RunConfig": {
"TimeoutInSeconds": 600,
"MemoryInMB": 1000,
"ActiveTracing": false
},
"SuccessRetentionPeriodInDays": 31,
"FailureRetentionPeriodInDays": 31,
"Status": {
"State": "CREATING",
"StateReasonCode": "CREATE_PENDING"
},
"Timeline": {
"Created": "2024-10-15T19:03:08.826000+05:30",
"LastModified": "2024-10-15T19:03:08.826000+05:30"
},
"ArtifactS3Location": "amzn-s3-demo-bucket/demo_canary.zip",
"RuntimeVersion": "syn-nodejs-puppeteer-9.1",
"Tags": {}
}
}
Дополнительную информацию см. в разделе Синтетическое мониторинг (кэнари) в руководстве пользователя Amazon CloudWatch.
Вывод
Кантри —> (структура)
Полные данные о созданном вами кантри.
Id —> (строка)
Name —> (строка)
Code —> (структура)
Эта структура содержит информацию о обработчике Lambda кантри и том, где его код хранится CloudWatch Synthetics.
SourceLocationArn —> (строка)
Handler —> (строка)
ExecutionRoleArn —> (строка)
lambda.amazonaws.com в качестве принципала в политике доверия.Schedule —> (структура)
Структура, содержащая информацию о частоте запуска кантри и о том, когда эти запуски должны завершиться.
Expression —> (строка)
rate выражение или cron выражение, определяющее, как часто должен запускаться кантри.
Для выражения скорости синтаксис — rate(*number unit* ). unit может быть minute, minutes или hour.
Например, rate(1 minute) запускает кантри один раз в минуту, rate(10 minutes) — один раз в 10 минут, а rate(1 hour) — один раз в час. Вы можете указать частоту от rate(1 minute) до rate(1 hour).
Указание rate(0 minute) или rate(0 hour) — это специальное значение, которое заставляет кантри запускаться только один раз при его запуске.
Используйте cron(*expression* ), чтобы указать выражение cron. Информацию о синтаксисе выражений cron см. в разделе Планирование запусков кантри с использованием cron.
DurationInSeconds —> (целое число)
Expression.RetryConfig —> (структура)
Структура, содержащая конфигурацию повторных попыток для кантри
MaxRetries —> (целое число)
RunConfig —> (структура)
Структура, содержащая информацию о запуске кантри.
TimeoutInSeconds —> (целое число)
MemoryInMB —> (целое число)
ActiveTracing —> (булево)
SuccessRetentionPeriodInDays —> (целое число)
Количество дней для сохранения данных об успешных запусках этого кантри.
Эта настройка влияет на диапазон информации, возвращаемой функцией GetCanaryRuns, а также на диапазон информации, отображаемой в консоли Synthetics.
FailureRetentionPeriodInDays —> (целое число)
Количество дней для сохранения данных о неудачных запусках этого кантри.
Эта настройка влияет на диапазон информации, возвращаемой функцией GetCanaryRuns, а также на диапазон информации, отображаемой в консоли Synthetics.
Status —> (структура)
Структура, содержащая информацию о состоянии кантри.
State —> (строка)
StateReason —> (строка)
StateReasonCode —> (строка)
Timeline —> (структура)
Структура, содержащая информацию о том, когда кантри был создан, изменён и последний раз запущен.
Created —> (метка времени)
LastModified —> (метка времени)
LastStarted —> (метка времени)
LastStopped —> (метка времени)
ArtifactS3Location —> (строка)
EngineArn —> (строка)
RuntimeVersion —> (строка)
VpcConfig —> (структура)
Если этот кантри должен тестировать конечную точку в VPC, эта структура содержит информацию о подсетях и группах безопасности конечной точки VPC. Дополнительную информацию см. в разделе Запуск кантри в VPC.
VpcId —> (строка)
SubnetIds —> (список)
Идентификаторы подсетей, в которых должен выполняться этот кантри.
(строка)
SecurityGroupIds —> (список)
Идентификаторы групп безопасности для этого кантри.
(строка)
Ipv6AllowedForDualStack —> (булево)
VisualReference —> (структура)
Если этот кантри выполняет визуальный мониторинг, сравнивая скриншоты, эта структура содержит идентификатор запуска кантри, который следует использовать в качестве эталона для скриншотов, и координаты любых частей экрана, которые нужно игнорировать при сравнении визуального мониторинга.
BaseScreenshots —> (список)
Массив скриншотов, используемых в качестве эталона для сравнений при визуальном мониторинге.
(структура)
Структура, представляющая скриншот, используемый в качестве эталона при сравнениях визуального мониторинга, выполняемых кантри.
ScreenshotName —> (строка)
UpdateCanary, которая указана для этого кантри для выполнения визуального мониторинга.IgnoreCoordinates —> (список)
Координаты, определяющие часть экрана, которую следует игнорировать при сравнении скриншотов. Для получения используемых здесь координат воспользуйтесь консолью CloudWatch для рисования границ на экране. Дополнительную информацию см. в разделе Редактирование или удаление кантри.
(строка)
BaseCanaryRunId —> (строка)
ProvisionedResourceCleanup —> (строка)
Указывает, следует ли также удалить функции и слои Lambda, используемые этим кантри, при удалении кантри. Если это AUTOMATIC, функции и слои Lambda будут удалены при удалении кантри.
Если значение этого параметра — OFF, то значение параметра DeleteLambda операции DeleteCanary определяет, будут ли удалены функции и слои Lambda.
Tags —> (карта)
Список пар ключ-значение, связанных с кантри.
key —> (строка)
value —> (строка)
ArtifactConfig —> (структура)
Структура, содержащая конфигурацию артефактов кантри, включая параметры шифрования для артефактов, которые кантри загружает в Amazon S3.
S3Encryption —> (структура)
Структура, содержащая конфигурацию параметров шифрования для артефактов кантри, хранящихся в Amazon S3.
EncryptionMode —> (строка)
Метод шифрования, используемый для артефактов, созданных этим кантри. Укажите SSE_S3, чтобы использовать шифрование на сервере (SSE) с ключом, управляемым Amazon S3. Укажите SSE-KMS, чтобы использовать шифрование на сервере с ключом KMS, управляемым клиентом.
Если вы опустите этот параметр, используется управляемый Amazon Web Services ключ KMS.
KmsKeyArn —> (строка)
SSE-KMS для EncryptionMode
DryRunConfig —> (структура)
Возвращает конфигурации пробного запуска для кантри.
DryRunId —> (строка)
LastDryRunExecutionStatus —> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.