Python으로 작성된 AWS Lambda 함수를 사용해보았습니다.
2021. 9. 28 - 최초작성
AWS 관리 콘솔 사이트(https://aws.amazon.com/ko/console/ )에 접속하여 로그인 후, 오른쪽 상단에 보이는 리전을 서울로 변경합니다. 꼭 서울일 필요는 없습니다.
왼쪽 상단에 보이는 서비스를 클릭합니다.
서비스 목록에서 컴퓨팅 항목에 있는 Lambda를 클릭합니다.
오른쪽 상단에 보이는 함수 생성 버튼을 클릭합니다.
상단에 새로 작성이 선택된 상태에서 함수 이름을 적은 후, 런타임을 Python 3.9로 변경합니다. 이제 오른쪽 하단에 보이는 함수 생성을 클릭합니다.
기본 람다 코드가 보입니다. 이 코드는 json 패키지를 임포트하고 lambda_handler라는 함수를 정의합니다.
이벤트가 발생시 실행되는 함수입니다.
주의할 점은 함수 이름 수정시 아래쪽에 보이는 런타임 설정 항목에서 핸들러는 파이썬 파일 이름.함수 이름으로 입력되어 있어야 합니다.
여기에선 파이썬 파일 이름 lambda_function와 함수 이름 lambda_handler로 구성됩니다.
런타임 설정의 핸들러를 잘못 설정하면 람다 함수가 실행되지 않습니다.
코드에 다음 2개의 print 문을 추가합니다. 두번째 print문은 이벤트가 발생하면 Key가 hello인 이벤트 값을 출력합니다.
print("Hello from Lambda!")
print(event['hello'])
변경된 코드를 저장하기 위해 Deploy 버튼을 클릭합니다.
테스트를 해보기 위해 Test 버튼을 클릭합니다.
이벤트 이름을 적은 후, 다음처럼 이벤트를 하나 더 추가한 후, 생성을 클릭합니다.
바로 윗줄 끝에 콤마(,)를 빼먹으면 안됩니다.
"hello": "Hello World"
다시 Test 버튼을 클릭합니다.
Execution results 탭에 실행 결과가 보입니다.
Test Event Name에 이벤트 이름이 출력됩니다.
Response에 핸들러 함수의 return 값을 출력합니다.
Function Logs에 print문 실행 결과를 볼 수 있습니다. print문으로 출력한 “Hello from Lambda!”와 이벤트에서 받아온 문자열인 “Hello World”가 출력 되었습니다.
추가했던 이벤트는 테스트 항목을 클릭하면 다시 수정할 수 있습니다.
오류가 난 경우 테스트입니다. print문의 닫는 괄호를 삭제해봅니다.
Deploy 버튼을 클릭하여 함수를 저장하고 Test 버튼을 클릭하여 실행합니다.
이번에는 함수가 실행될 때 에러가 발생합니다. Execution results 탭에서 에러 관련 정보를 볼 수 있습니다.
참고
https://stackify.com/aws-lambda-with-python-a-complete-getting-started-guide/
https://sarc.io/index.php/aws/570-aws-lambda-hello-world
'WEB > AWS' 카테고리의 다른 글
AWS Rest API를 Android와 연동해보기( Lambda + API Gateway + DynamoDB ) (0) | 2023.10.15 |
---|---|
AWS Lambda 함수와 API Gateway로 만든 REST API 배포하기 (0) | 2023.10.12 |
AWS Lambda를 사용한 DynamoDB 테스트 (0) | 2023.10.12 |
감정 분석(Sentiment Analysis)을 위해 AWS Comprehend API를 사용하는 REST API를 구현 (0) | 2023.10.12 |
AWS Lambda 함수와 API Gateway를 사용하여 REST API 구현 (0) | 2023.10.12 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!