SAP 모니터링 도구 /SDF/SMON 소개 및 설정 방법__Introduction and Configuration for the SAP Monitoring Tool /SDF/SMON

감귤은탱귤·2024년 12월 2일
0

SAP BC - 기본 개념

목록 보기
18/18

SAP 에서는 시스템의 상태와 관련된 데이터를 주기적으로 스냅샷 형태로 수집하고 모니터링하는 도구로 /SDF/SMON (이하 SMON) 을 제공한다.

SMON 은 CPU 사용률, 메모리 관리, 데이터베이스 성능, 작업 프로세스 이용률, 작업 부하, STAD, RFC 등에 대한 데이터를 수집하며, 이러한 데이터를 기반으로 OS 또는 Application 단의 이슈를 추적하는데 도움이 된다.

/SDF/SMON 은 NW 7.4 이상(ST-PI 740 SP2 이상) 에서 버전에서 사용할 수 있으며, 이전 버전에서는 /SDF/MON 을 사용할 수 있다.
그러나, 후속 버전인 /SDF/SMON 에서 수집하는 데이터가 더 많고, 추가 기능을 제공하니 SMON 을 사용하는 것을 권장한다.

  • SAP Notes 2651881 - How to configure SMON for performance monitoring and analysis
  • SAP Notes 2383809 - How to configure /SDF/MON for performance monitoring and analysis


1. /SDF/SMON 설정 방법

Tcode : /n/SDF/SMON (네임스페이스로 인해 앞에 /n 이 붙어야 한다.)

아직 모니터링 도구 SMON 이 설정되지 않았기 때문에, 다음과 같은 SMON 수행을 위한 설정 시작화면이 나올 것이다.
이후, SMON 설정 및 수행이 완료된다면, 해당 Tcode 로 접속했을때, 스냅샷 모니터링 데이터를 조회할 수 있다.

운영 환경에 따라 약간의 구성은 달라질 수 있지만, SAP Notes 에 따른 권장 설정은 다음과 같다.

상단 메뉴탭에 Schedule Daily Monitoring 버튼을 누르고, 아래 설정 값 설명에 따른 SMON 일일 모니터링 수집기 설정 세팅을 완료한 다음 하단의 실행 버튼을 누르면, 각 AP 서버에서 세팅에 맞게 스냅샷 데이터를 저장한다.

일일 모니터링이 아닌, 단기간에 짧은 시간만 모니터링을 하기 위해서는, Schedule Daily Monitoring 버튼 대신에, 초기 /SDF/SMON 화면에서 세팅값 설정 후, 실행 버튼을 누르면 된다.

세팅 값 중 모니터링 시간 범위(Timeframe of analysis) 는 24시간을 초과하면 안된다.

1-1. Interval in seconds

데이터 스냅샷을 찍는 간격이다.
기본값은 1초이며, 아래 Content on application servr level 의 Every N Time(s) 값에 따라 데이터가 저장되게 된다.

즉, SAP 권장에 설정에 따르면, 10초에 한번씩 모니터링 데이터 스냅샷을 찍게 되며, Memory per modes 값은 10 x 6 = 60초 마다 저장되고, 이외에 값은 전부 10초마다 한번씩 스냅샷이 찍히게 된다.

1-2. List of Workprocesses (SM50)

해당 스냅샷의 시간대의 workprocesses 현황(Tcode SM50) 을 저장한다.
수행 중(Actvie) 인 workprocess 및 액세스된 테이블, WP 상태 및 세마포어 세부 정보도 조회가 가능하다.

1-3. Create Callstacks

스냅샷 시간대에 수행 중인 Workprocess 의 ABAP Call stack 데이터를 저장한다.

1-4. Dispoatcher Queue

각 애플리케이션 서버의 DIA, UPD, ENQ 유형의 Queue 대기열을 저장한다.

1-5. Ext. and heap mem.

SAP 메모리인 EM(Extended Memory) 과 HEAP 메모리 사용량에 대한 데이터를 저장한다.

1-6. No. of logins/sessions

스냅샷 시간대에 로그인한 사용자 수와 내부 세션 수를 저장한다.

1-7. Memory per modes

각 로그온과 각 사용자 모드/세션에서 사용하는 메모리에 대한 데이터를 저장한다. (SM04)

1-8. CPU and paging activity

스냅샷 시간대에 CPU 사용량(User/ Sys/ Idle) 과 메모리, Paging 데이터를 저장한다.

1-9. Top CPU Processes

OS 단의 상위 40개 CPU 사용량 프로세스의 데이터를 저장한다.
여기서 프로세스는 SAP Workprocesses 가 아닌 OS 단의 Processes 를 뜻한다.

1-10. Global Content

Enqueue entries, Enqueue statistics 항목은 SM12 의 데이터가 저장되며,
In/Outbound queues 항목은 SMQ1, SMQ2 의 데이터가 저장된다.

일반적인 경우에는 해당 데이터를 수집할 필요가 없다.



2. /SDF/SMON 데이터 테이블

SMON 에서 사용되는 테이블은 전부 테이블 이름앞에 Prefix 로 /SDF/SMON 이 붙어있다.

여기서는 중요 테이블 몇개에 대해서만 정리한다.

TableDesc
/SDF/SMON각 모니터링 데이터 스냅샷에 대한 클러스터
/SDF/SMON_HEADER모니터링 데이터 화면 에서 볼 수 있는 각 스냅샷의 헤더 데이터
/SDF/SMON_SESS세션 정보(SM04) 데이터
/SDF/SMON_STACK
/SDF/SMON_STACKD
/SDF/SMON_STACKH
Workprocess Callstack 데이터
/SDF/SMON_WPINFOWorkprocesses (SM50) 데이터


3. /SDF/SMON 모니터링 중지

현재 수행 중인 /SDF/SMON 모니터링을 중지하기 위해서는 Tcode /n/SDF/SMON 접속 후, 현재 실행중인 모니터링 스냅샷(기어 아이콘) 을 클릭한 다음, 메뉴바에서 STOP 아이콘을 눌러 중지할 수 있다.

일일 모니터링 자체를 중지하기 위해서는 메뉴바에 Schedule new Monitoring 버튼 (F6) 을 누른 다음, 메뉴바에 Stop Daily Monitoring 버튼을 누르면 된다.



4. /SDF/SMON_DISPLAY 를 통한 모니터링 데이터 시각적 조회

  • SAP Notes 3210905 - Display Snapshot Monitor Data

Tcode /n/SDF/SMON 에서 ALV 형태로 데이터를 바로 조회할 수 있지만, 시각적으로 보다 쉽게 조회할 수 있는 방법이 있다.

컴포넌트 ST-PI 740 SP20 이상 버전부터는 Tcode /n/SDF/SMON_DISPLAY 를 사용하여 SMON 모니터링 데이터를 JavaScript 의 plotly.js 라이브러리를 사용하여 간단하게 그래픽으로 확인할 수 있다.

4-1. /SDF/SMON_DISPLAY 전제 조건

/SDF/SMON_DISPLAY 을 사용하기 위해서는 아래와 같은 몇가지 전제 조건이 필요하다.

  • 당연하겠지만, /SDF/SMON 모니터링 스냅샷 데이터가 필요하다.
  • plotly 호환 라이브러리의 URL을 제공해야 한다.
    plotly Javascript 라이브러리의 최소 버전은 v1.58.5
  • SAP 에서는 크롬 기반 Edge가 활성화된 SAPGUI 릴리스 7.70 이상 버전을 권장한다.
  • 대안으로 SAP ABAP 애플리케이션 서버에서 plotly 라이브러리를 파라미터로 설정해 호스팅할 수 있다.
    파라미터 icm/HTTP/file_access_X 를 사용 하면 plotly.js 파일을 호스팅하는 애플리케이션 서버 디렉토리를 가리키고, URL http://<SERVER:PORT>/<PREFIX>/plotly.js 를 사용할 수 있다.

다만, 조회 프로그램은 SAP 공식 제공이 아닌, 외부 프로그램으로써 Notes 에 면책 조항이 있으니 반드시 확인 후 사용하기 바란다.

Disclaimer
SAP is unable to guarantee that the libraries downloaded from external sources are safe to use. Theoretically such external download locations could be compromised.
If you do not trust an externally hosted library, you can download a library version of your choice, test this library and then host this library on a trusted server and use the URL to this trusted location. (we recommend using the minimized versions like plotly-basic-x.xx.x.min.js - more versions are available at https://cdnjs.com/libraries/plotly.js).

4-2. /SDF/SMON_DISPLAY 설정값

다른 값들은 직관적으로 이해가 되나, URL to plotly library 값은 /SDF/PLOTLYCONF 테이블에 plotly.js URL 을 저장해줘야 한다.
(SAP 에서는 plotly.js 버전 중, plotly-basic-x.xx.x.min.js 와 같은 미니 버전을 사용하길 권장)

Table : /SDF/PLOTLYCONF
ID : PLOTLY_LIBRARY
VALUE : http://cdn.plot.ly/plotly-basic-2.35.2.min.js

작성일 기준, plotly.js 최신 버전은 2.35.2 이다.

profile
SAP BC (2019 ~ )

0개의 댓글