Безсерверная структура, подписка на несколько тем - PullRequest
0 голосов
/ 30 апреля 2018

У меня проблемы с подпиской всех моих тем на обработчик функций.

Я хотел бы сделать что-то вроде этого:

functions:
xxxxx:
handler:xxxx
events:
- sns: arn:aws:sns:xxxx:xxxxx:*

Когда я пытаюсь добавить все темы, которые у меня есть, без подстановочного знака, я сталкиваюсь с этой ошибкой:

Произошла ошибка, бла-бла-бла - окончательный размер политики (20526) больше лимита (20480)

Как я могу подписать все мои темы на обработчик функций, избегая этой проблемы?

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Похоже, вы достигли жесткого лимита.
В качестве обходного пути вы можете попытаться разделить эти подписки на 2 лямбды с помощью одного и того же обработчика:

functions:
  myLambda_A_1:
    handler:myHandler1
    events:
      - sns: arn:aws:sns:xxxx:xxxxx:a
      - sns: arn:aws:sns:xxxx:xxxxx:b
      - sns: arn:aws:sns:xxxx:xxxxx:c
      - ...
  myLambda_A_2:
    handler:myHandler1  // <= same handler as the previous lambda
    events:
      - ...
      - sns: arn:aws:sns:xxxx:xxxxx:x
      - sns: arn:aws:sns:xxxx:xxxxx:y
      - sns: arn:aws:sns:xxxx:xxxxx:z
0 голосов
/ 30 апреля 2018

Вы не можете подписаться на несколько тем, используя подстановочные знаки, как вы делаете (насколько я знаю). Вы должны перечислить каждую тему так:

functions:
  xxxxx:
    handler:xxxx
    events:
      - sns: arn:aws:sns:xxxx:xxxxx:a
      - sns: arn:aws:sns:xxxx:xxxxx:b
      - sns: arn:aws:sns:xxxx:xxxxx:c
...