AWS Лямбда-функция, которая работала в течение нескольких недель, один день истек без видимой причины. Идеи? - PullRequest
0 голосов
/ 31 марта 2020

Я написал простую лямбда-функцию (в python 3.7), которая запускается один раз в день, которая обновляет мой каталог данных Glue при создании новых разделов. Это работает следующим образом:

  • Создание объекта в указанном c S3 месте запускает функцию асинхронно
  • Из события lambda извлекает ключ (например: s3: // my -bucket / path / to / object /)
  • Через AWS SDK lambda запрашивает клей, если раздел уже существует
  • Если нет, создает новый раздел. Если да, завершает процесс.

Кроме того, у функции есть 3 оператора печати:

  • один в самом начале, говорящий о начале выполнения
  • один посередине, который говорит, существует ли раздел
  • один в конце при успешном выполнении.

Эта функция имеет среднее время выполнения 460 мс на вызов, с выделенной ОЗУ 128 МБ, и она не может иметь более 12 одновременных выполнений (так как 12 - это максимальное количество новых разделов, которые могут создаваться ежедневно). В то же время нет других лямбда-функций, которые могут украсть возможности параллелизма. Кроме того, просто чтобы быть уверенным, я установил лимит времени ожидания в 10 секунд.

Он работал безупречно в течение нескольких недель, за исключением этого утра, 2 из казней истекли после достижения 10-секундного лимита, что очень странно, учитывая, что оно в 20 раз больше, чем среднее значение. длительность.

Что меня больше всего удивляет, так это то, что в одном случае в CloudWatch вошел только 1-й оператор печати, а в другом - даже не тот, как если бы функция вызывалась, но фактически не запускалась процесс.

Я не мог понять, что, возможно, вызвало это. Любая идея или предложение высоко ценится.

1 Ответ

1 голос
/ 31 марта 2020

Может быть AWS была проблема с их услугами, у меня возникла такая же проблема.

Не уверен, что это может помочь. Вы можете проверить по адресу:

https://status.aws.amazon.com

[CloudFront High Error Rate]

16:28 PDT , 5:08 PM PDT Мы можем подтвердить повышенный уровень ошибок и высокую задержку доступа к контенту из нескольких пограничных местоположений, что также способствует увеличению времени распространения изменений конфигурации CloudFront по сравнению с обычным временем. Мы определили причину root и продолжаем работу по ее устранению. 5:54 PM PDT Мы начинаем видеть восстановление с повышенной частотой ошибок и высокой задержкой доступа к контенту из нескольких пограничных местоположений. Частота появления ошибок восстановлена ​​для всех мест, кроме Европы. Кроме того, мы продолжаем работать над восстановлением для увеличения задержек в распространении изменений конфигурации в Cloudfront Distribution. 6:21 PM PDT Начиная с 15:18 PM PDT, мы столкнулись с повышенным уровнем ошибок и высокой задержкой доступа к контенту из нескольких периферийных местоположений. Повышенные коэффициенты ошибок и доступ к контенту с повышенной задержкой были полностью восстановлены в 5:48 вечера PDT. В течение этого времени клиенты могли также испытывать более длительные, чем обычно, задержки распространения изменений для конфигураций CloudFront и аннулирования. Задержка изменений конфигурации CloudFront и аннулирования были полностью обработаны к 6:14 PM PDT. Все проблемы полностью решены и система работает нормально

...