본문 바로가기

람다2

3. 텔레그램 & AWS 서비스 연동하기 - 3) DynamoDB를 이용한 전체 공지 이번 시간에는 Telegram의 전체 공지 기능을 구현해보겠습니다. Telegram에는 전체 공지 기능이 없습니다. 그래서 챗봇을 쓰는 모든 유저에게 메세지를 전송하기 위해선 별도의 공간에 채팅방 ID를 저장하고, 이 ID별로 메세지를 전송해야만 합니다. 그 과정을 하나씩 소개드리겠습니다. 1. ID 등록 저희의 챗봇을 사용하는 사용자들의 채팅방 ID (chat_id)를 저장해야만 합니다. 저장소는 DynamoDB를 선택합니다. 복잡한 트랜잭션이 필요하지 않으며 JSON 형태로 저장하기 쉽고 고성능의 저장소 AWS의 MongoDB 정도로 보시면 됩니다. 비용은 아래 보시는것처럼 개인이 쓰기에 충분한 양입니다.(참고: Amazon DynamoDB 프리티어로 시작하기) DynamoDB 생성 서비스에서 Dyn.. 2018. 6. 23.
AWS Lambda로 Code Deploy 배포 상세 결과 알람 받기 Code Deploy와 다른 CI 툴 (ex: TravisCI)를 조합해서 사용할때 가장 불편한 점은 알람입니다. 저의 경우 TravisCI에서 빌드 & 테스트를 한 뒤에, Code Deploy를 통해 EC2로 배포 하는 구조를 자주 사용합니다. 구축하기 편하다는 장점이 있지만, 이 구조에선 배포 실패시 상세한 내용을 받기가 어렵습니다. TravisCI에서는 Code Deploy에서 어떤 사유로 배포가 실패했는지를 알 수 없기 때문인데요. 그래서 항상 배포가 실패하면 다음과 같은 내용으로만 알람을 받게 됩니다.알람으로 온 링크를 클릭해서 들어가봐도 알 수 있는 내용은 없습니다.그래서 배포 실패가 나면 항상 Code Deploy 화면으로 직접 이동해서 확인할 수 밖에 없습니다. 이 과정이 굉장히 불편해서 .. 2018. 5. 30.