Контекст вызова функции на Python
Статья создана
Обновлена 13 июля 2022 г.
Контекст вызова — это объект, который содержит некоторые параметры контекста выполнения и параметры вызова самой функции на Python. Принимается обработчиком запросов в качестве второго аргумента.
Контекст вызова содержит:
function_name
— идентификатор функции;function_version
— идентификатор версии функции;memory_limit_in_mb
— объем памяти, указанный при создании версии, МБ;request_id
— идентификатор обрабатываемого запроса;token
— параметры для аутентификации в API сервисов Yandex Cloud.
Контекст также содержит вспомогательные методы:
get_remaining_time_in_millis()
— возвращает время, оставшееся на выполнение текущего запроса, в миллисекундах.
Использование контекста вызова
Контекст вызова нужен, чтобы функция имела доступ к информации об окружении: могла контролировать расход памяти, отслеживать время на выполнение запроса и аутентифицироваться в API сервисов Yandex Cloud.
Аутентификация в API сервисов Yandex Cloud
Если в функции указан сервисный аккаунт, то параметр token
содержит информацию для аутентификации от имени этого сервисного аккаунта:
access_token
— IAM-токен;expires_in
— время жизни токена в секундах;token_type
— тип токена (Bearer
).
Также данную информацию можно получить с помощью сервиса метаданных. Подробнее об этом способе читайте в разделе Аутентификация изнутри ВМ.