Функция AWS Lamda была удалена.Не удалось получить - PullRequest
0 голосов
/ 15 февраля 2019

Я использую безсерверный фреймворк в c # для выполнения запросов в Афине.Функция AWS Lamda удаляется автоматически.Когда я пытаюсь развернуть его, этого не происходит.

sls deploy --stage dev - Развернуть функцию sls remove --stage dev - Удалить функцию Когда я пытался повторно развернуть ее, выдается ошибка, как показано ниже:

enter image description here

Как они упоминали на скриншоте выше, для получения дополнительной информации об ошибках я просмотрел ссылку: которая показывает детали стека.Я прикрепил его ниже

См. Это изображение: [! [Введите описание изображения здесь] [2]] [2]

serverless.yml

 # Welcome to Serverless!
#
# This file is the main config file for your service.
# It's very minimal at this point and uses default values.
# You can always add more config options for more control.
# We've included some commented out config examples here.
# Just uncomment any of them to get that config option.
#
# For full config options, check the docs:
#    docs.serverless.com
#
# Happy Coding!

service: management-athena

custom:
  defaultStage: dev
  currentStage: ${opt:stage, self:custom.defaultStage} # 'dev' is default unless overriden by --stage flag

provider:
  name: aws
  runtime: dotnetcore2.1
  stage: ${self:custom.currentStage}
  role: arn:aws:iam::***********:role/service-role/nexus_labmda_schema_partition  # must validly reference a role defined in your account
  timeout: 300
  environment: # Service wide environment variables
    DATABASE_NAME: ${file(./config/config.${self:custom.currentStage}.json):DATABASE_NAME}
    TABLE_NAME: ${file(./config/config.${self:custom.currentStage}.json):TABLE_NAME}
    S3_PATH: ${file(./config/config.${self:custom.currentStage}.json):S3_PATH}
    MAX_SITE_TO_BE_PROCESSED: ${file(./config/config.${self:custom.currentStage}.json):MAX_SITE_TO_BE_PROCESSED}

package:
  artifact: bin/release/netcoreapp2.1/deploy-package.zip

functions:
  delete_partition:
    handler: CsharpHandlers::AwsAthena.AthenaHandler::DeletePartition
    description: Lambda function which runs at specified interval to delete athena partitions
    # The `events` block defines how to trigger the AthenaHandler.DeletePartition code
    events:
      - schedule:
          rate: cron(0 8 * * ? *) #triggered every day at 3:00 AM EST.Provided time is in UTC. So 3 A.M EST is 8 A.M UTC
          enabled: true

1 Ответ

0 голосов
/ 19 февраля 2019

Я нашел решение!Иногда мы не сможем развернуть функции lamda по многим причинам.как упоминалось в комментариях @ASR, могут возникнуть проблемы с версией безсерверного фреймворка.Но в моем случае это не решило.Просто попробуйте удалить группу журналов вашей функции из облачного наблюдения.

Зайдите в aws -> Расширьте сервисы -> выберите CloudWatch -> выберите Журналы -> найдите свою группу журналов, выберите и удалите ее.Скажем, если имя вашей функции my_function , тогда имя вашей группы журналов будет примерно таким: aws / lamda / my_function Затем просто разверните свою функцию lamda.Я пишу это, думая, что это помогает кому-то ...!Пожалуйста, поправьте меня, если я ошибаюсь.

...