Pythonのデコレーターで実現する。
デコレーターに共通処理を記述し、デコレーターをモジュールとして各Lambda関数でインポートする。
デコレーターの実装
def pre_processing(data):
# 前処理
・
・
・
return data
def post_processing(response):
# 後処理
・
・
・
return response
def decorator(func):
import functools
@functools.wraps(func)
def wrapper(*args, ** kwargs):
data = pre_processing({'event': args[0], 'context': args[1]})
# Lambda関数実行
response = func(*(data['event'], data['context']), **kwargs)
response = post_processing(response)
return response
return wrapper
Lambda関数の実装
from common.decorator import decorator
@decorator
def lambda_handler(event, context):
・
・
・
return response
注意
依存しているLambda は全て更新する必要があります。 対応として全ての Lambda を更新するようにスクリプトを書いています。
高橋克幸
新卒3年目で脱新人を目指してます。
フロントに興味を持ち始めた今日このごろ。
趣味は 麻雀 プログラミング 音楽。
運動不足を感じているため、ダンスを始めようかと思っています。