1. 개요
- AWS X-Ray에 대한 설명
- X-Ray는 Telemery 영역을 담당하는데 OSS 기반이라면 Zipkin, Jaeger 등이 있음
2. 기능
- AWS 콘솔 상에 볼 수 있음
- 기본적인 분석 기능 제공
- 자바, Node.js, 파이썬, 루비 등 지원
3. 권한
EC2 인스턴스 프로파일에 xray 관련 정책 연결
4. 애플리케이션 설정
4-1. pom.xml
<dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-xray-recorder-sdk-core</artifactId> <version>1.2.1</version> </dependency>
4-2. web.xml
<filter> <filter-name>XRayServletFilter</filter-name> <filter-class>com.amazonaws.xray.javax.servlet.AWSXRayServletFilter</filter-class> <init-param> <param-name>fixedName</param-name> <param-value>MyPortal</param-value> </init-param> </filter> <filter-mapping> <filter-name>XRayServletFilter</filter-name> <url-pattern>*</url-pattern> </filter-mapping>
MyPortal 부분은 수정하여 사용한다.
5. 호스트 설정
5.1. 다운로드
# curl https://s3.dualstack.ap-northeast-1.amazonaws.com/aws-xray-assets.ap-northeast-1/xray-daemon/aws-xray-daemon-2.x.rpm -o /home/ec2-user/xray.rpm % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 2431k 100 2431k 0 0 7335k 0 --:--:-- --:--:-- --:--:-- 7346k
5.2. 설치
# yum install -y /home/ec2-user/xray.rpm Loaded plugins: priorities, update-motd, upgrade-helper Examining /home/ec2-user/xray.rpm: xray-2.1.0-1.x86_64 Marking /home/ec2-user/xray.rpm to be installed Resolving Dependencies amzn-main/latest | 2.1 kB 00:00:00 amzn-updates/latest | 2.5 kB 00:00:00 --> Running transaction check ---> Package xray.x86_64 0:2.1.0-1 will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================================================================================================================================================== Package Arch Version Repository Size =============================================================================================================================================================================================================== Installing: xray x86_64 2.1.0-1 /xray 6.6 M Transaction Summary =============================================================================================================================================================================================================== Install 1 Package Total size: 6.6 M Installed size: 6.6 M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : xray-2.1.0-1.x86_64 1/1 xray start/running, process 4002 Verifying : xray-2.1.0-1.x86_64 1/1 Installed: xray.x86_64 0:2.1.0-1 Complete!
5.3. 데몬 실행
$ xray -o -n ap-northeast-1 2018-03-28T07:31:14Z [Info] Initializing AWS X-Ray daemon 2.1.0 2018-03-28T07:31:14Z [Info] Using buffer memory limit of 9 MB 2018-03-28T07:31:14Z [Info] 144 segment buffers allocated 2018-03-28T07:31:14Z [Info] Using region: ap-northeast-1
다음과 같은 내용을 확인할 수 있다.
2018-03-28T07:32:03Z [Info] Successfully sent batch of 1 segments (0.059 seconds) 2018-03-28T07:32:04Z [Info] Successfully sent batch of 1 segments (0.008 seconds) 2018-03-28T07:32:05Z [Info] Successfully sent batch of 1 segments (0.023 seconds) 2018-03-28T07:32:08Z [Info] Successfully sent batch of 1 segments (0.010 seconds) 2018-03-28T07:32:09Z [Info] Successfully sent batch of 1 segments (0.008 seconds)