인프런 커뮤니티 질문&답변

윤종석님의 프로필 이미지
윤종석

작성한 질문수

아마존 클라우드 무료계정으로 시작하는 서버리스 애플리케이션 프로젝트

문제 발생지점을 쉽게 찾아내는 X-Ray 소개

X-Ray 부분에서 하위 세그먼트들이 보이지 않네요 ㅠ

작성

·

266

1

영상에 getCards 아래 Initialization, Invocation, Overhead 등이 나오는데 제 콘솔에서는 확인할 수가 없네요. aws-xray-sdk를 추가해도 마찬가지고요. 빠뜨린 점이 있을까요?

답변 1

2

HP님의 프로필 이미지
HP
지식공유자

안녕하세요. 

Passive 모드인 람다함수가 다른 함수에 의해 호출될때 Initialization, Invocation, Overhead 등의 서브세그먼트 정보가 나타나지 않는 부분을 알려주셨습니다.

람다함수의 실행역할(IAM Role)로 사용 중인 'Lambda_Kanba_Role'에 X-Ray에 정보를 보낼 수 있는 권한이 부여되지 않아 생긴 문제로 여겨지며, 이를 간단하게 해결하기 위해서는 4개의 람다 함수 중 아무 곳에서

1. AWS X-Ray 항목의 '활성 추적'을 클릭해주세요.

2. 클릭시, 하단에 붉은 글씨로 '...자동으로 역할에 해당 권한을 추가합니다.' 라는 안내문이 나옵니다. (참조: 하단 첫번째 이미지)

3. 저장 버튼을 누릅니다. 에러 없이 저장이 되었다면 IAM에서 Lambda_Kanba_Role 역할을 확인시 X-Ray관련 권한이 추가된 것을 확인할 수 있습니다. (참조: 하단 두번째 이미지)

 - xray: PutTracesSegments 와 xray:PutTelemetryRecords 라는 권한이 새로운 정책이나 기존 정책에 포함된 것이 확인되어야 합니다.

4. 상기 1번에 클릭한 '활성 추적' 부분은 필요하지 않으니 다시 클릭하여 해제하시고 저장 버튼을 누릅니다. 

5. 'Lambda_Kanba_Role ' 역할의 X-Ray권한이 살아있는한 동일한 역할을 사용하는 나머지 람다 함수에서도 관련 세그먼트 정보가 X-ray 에서 정상적으로 나타나야 합니다.

** 강의 촬영 당시엔 API Gateway에서 X-Ray 추적 활성화시(Active) 호출되는 Passive 람다함수의 실행역할에 해당 정책이 자동으로 추가되었던것 같은데 변경이 있었던 것 같습니다. 그게 아니면 녹화 외 시간에 제가 상기 1-4번을 수행했다는 것인데 확실치가 않네요(이번에 처음 알게 된 것이라..). 

** 해당 내용 알려주셔서 감사합니다. 

윤종석님의 프로필 이미지
윤종석

작성한 질문수

질문하기