[typescript] 타입스크립트와 AWS X-Ray 분산 추적 설정하기
AWS X-Ray는 분산된 애플리케이션 성능 문제를 식별하고 해결하는 데 도움을 주는 서비스입니다. 이 글에서는 타입스크립트로 작성된 애플리케이션에 AWS X-Ray를 설정하는 방법에 대해 알아보겠습니다.
1. AWS X-Ray 설치
먼저, 프로젝트에 AWS X-Ray SDK를 설치해야 합니다. 다음 명령어를 사용하여 패키지를 설치합니다.
npm install aws-xray-sdk
2. 타입스크립트에서 AWS X-Ray 사용하기
타입스크립트로 작성된 애플리케이션에서 AWS X-Ray를 사용하려면 먼저 aws-xray-sdk
모듈을 가져와야 합니다.
import * as AWSXRay from 'aws-xray-sdk';
그런 다음 애플리케이션의 진입점에서 다음과 같이 AWS X-Ray를 활성화합니다.
AWSXRay.setDaemonAddress('xray-service.default.svc.cluster.local:2000');
AWSXRay.setContextMissingStrategy('LOG_ERROR');
AWSXRay.captureHTTPsGlobal(require('http'));
여기서 setDaemonAddress
에는 X-Ray 데몬의 주소를 지정하고, setContextMissingStrategy
에는 컨텍스트 누락 시 로그 전략을 설정합니다. 마지막으로 captureHTTPsGlobal
을 사용하여 HTTP 요청을 캡처합니다.
3. AWS Lambda에서 AWS X-Ray 사용하기
AWS Lambda 함수에서도 X-Ray를 사용할 수 있습니다. 다음 예시는 AWS Lambda 함수에서 AWS X-Ray를 사용하는 방법을 보여줍니다.
import * as AWSXRay from 'aws-xray-sdk';
import * as AWS from 'aws-sdk';
const AWSXRayAWS = AWSXRay.captureAWS(AWS);
먼저, aws-sdk
를 가져온 다음 aws-xray-sdk
의 captureAWS
를 사용하여 AWS X-Ray를 활성화합니다.
요약
이제 타입스크립트로 작성된 애플리케이션에 AWS X-Ray를 설정하는 방법에 대해 알아보았습니다. 이를 통해 애플리케이션의 분산 추적을 통해 성능 이슈를 식별하고 해결할 수 있게 되었습니다.
참고 문헌:
- https://github.com/aws/aws-xray-sdk-node
- https://docs.aws.amazon.com/xray/index.html
본문에 나온 예시는 실제 상황에 따라 조정되어야 합니다.