[Devops] ELK APM으로 성능측정하기 - ubuntu 22.04

2023. 12. 4. 14:56·개발/Devops
728x90
반응형

APM으로 성능측정 - ubuntu 22.04

어플리케이션의 성능을 측정하기 위해 APM 을 설치하려고 한다.
기존에 ELK에서 로그나 메트릭을 모니터링하기 때문에 여기에 추가하기 위해서 ELK에서 제공하는 APM 을 사용할 것이다.

APM 다운로드

curl -O https://artifacts.elastic.co/downloads/apm-server/apm-server-8.11.0-amd64.deb
sudo dpkg -i apm-server-8.11.0-amd64.deb

APM 설정 변경

sudo rm -rf /etc/apm-server/apm-server.yml
sudo vi /etc/apm-server/apm-server.yml
apm-server:
  host: "0.0.0.0"

output.elasticsearch:
  hosts: ["http://localhost:9200"]
  username: "elastic"
  password: "비밀번호"
  index: "apm-%{[observer.version]}-%{[processor.event]}"

APM 실행

sudo systemctl start apm-server.service

nodejs

npm install elastic-apm-node --save
var apm = require("elastic-apm-node").start({
    serviceName: "server-name",
    serverUrl: "apm server host",
});

Spring boot

(1) gradle

implementation 'co.elastic.apm:apm-agent-attach:1.44.0'

(2) maven

<dependency>
    <groupId>co.elastic.apm</groupId>
    <artifactId>apm-agent-attach</artifactId>
    <version>1.44.0</version>
    <scope>provided</scope>
</dependency>

(3) resources 경로에 elasticapm.properties 파일 생성

service_name=server-name
server_urls=apm-url

(4) main 메소드에 apm attach 추가

public static void main(String[] args) {

    ElasticApmAttacher.attach();

    SpringApplication.run(Application.class, args);
}

(4-1) main 메소드 말고 Configuration 추가

@Configuration
public class ApmConfig {

    @Bean
    public void apmInit() {
        ElasticApmAttacher.attach();
    }
}

위 코드들을 추가하여 kibana에서 Observability -> APM 에서 확인할 수 있다.

참고

APM Guide

728x90
반응형

'개발 > Devops' 카테고리의 다른 글

10kb 이상 파일 업로드가 안되는데요?  (0) 2025.11.02
[Devops] ELK - APM 연결 실패 이슈  (0) 2024.04.23
[Devops] ElasticeSearch에서 잔디 Webhook 연결 - ubuntu 22.04  (0) 2023.11.30
[Devops] ELK Beat template (8.11.0) - ubuntu 22.04  (0) 2023.11.30
[Devops] ELK 디스크 부족 이슈 S3로 해결하기 - ubuntu 22.04  (0) 2023.11.23
'개발/Devops' 카테고리의 다른 글
  • 10kb 이상 파일 업로드가 안되는데요?
  • [Devops] ELK - APM 연결 실패 이슈
  • [Devops] ElasticeSearch에서 잔디 Webhook 연결 - ubuntu 22.04
  • [Devops] ELK Beat template (8.11.0) - ubuntu 22.04
TeTedo.
TeTedo.
  • TeTedo.
    TeTedo 개발 일기
    TeTedo.
  • 전체
    오늘
    어제
    • 분류 전체보기 (319)
      • 개발 (274)
        • Article (4)
        • 정리 (21)
        • Spring Boot (17)
        • JPA (2)
        • JAVA (6)
        • Database (4)
        • 자료구조 (11)
        • 알고리즘 (32)
        • React (20)
        • Docker (10)
        • node.js (18)
        • Devops (11)
        • Linux (4)
        • TypeScript (3)
        • Go (10)
        • HyperLedger (4)
        • BlockChain (43)
        • html, css, js (48)
        • CS (3)
        • AWS (3)
      • 모아두고 나중에 쓰기 (3)
      • 팀프로젝트 (18)
        • SNS(키보드워리어) (9)
        • close_sea (9)
      • 개인프로젝트 (1)
        • Around Flavor (1)
        • CHAM (13)
        • ethFruitShop (5)
      • 독서 (0)
        • 스프링부트와 AWS로 혼자 구현하는 웹 서비스 (0)
  • 블로그 메뉴

    • 홈
    • 개발일기
    • CS
    • 실습
    • 코딩테스트
    • 웹
    • Go
    • node.js
    • 팀플
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    하이퍼레저
    도커
    node.js
    go언어
    nodejs
    블록체인
    erc20
    node
    컨테이너
    mysql
    React
    go
    프로그래머스
    30일챌린지
    js
    명령어
    html
    ERC721
    CSS
    30일 챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
TeTedo.
[Devops] ELK APM으로 성능측정하기 - ubuntu 22.04
상단으로

티스토리툴바