활용사례

Focus를 활용하여 자주 사용하는 명령 및 기타 활용 사례를 나열합니다. 이를 통해 개발 및 운영시 확인 가능한 데이터를 시계열로 확인할 수 있도록 하여 개발 운영에 도움이 되었으면 합니다.

라이선스 및 수집 서버 IP 확인

선택한 프로젝트의 관리 / 에이전트 설치 메뉴에서 프로젝트 코드, 수집서버 IP와 라이선스를 확인합니다.

Linux Shell
export WHATAP_LICENSE=xxxx-xxxxxx-xxxxxx
export WHATAP_HOST=xxxx.xxxx.xxxx
export WHATAP_PCODE=xxx

TOP 을 활용하여 pid 별 CPU, Memory 수집

아래 예는 top 명령을 실행하여 특정 프로세스의 cpu, memory 사용량을 계속하여 수집 합니다.

Linux Shell
#매트릭 카테고리
CATEGORY="my_category"
export PID=수집하기 원하는 프로세스의 PID

top -b -p $PID | awk '/'$PID'/{ printf "{\"pid\": %s, \"cpuPercent\": %s, \"memoryPercent\": %s, \"cmd\": \"%s\"}\n",$1, $9, $10, $12}; system("")' | \
./focus -license $WHATAP_LICENSE \
    -pcode $WHATAP_PCODE -server.host $WHATAP_HOST \
    -category $CATEGORY

NETSTAT 활용

아래 예는 netstat 명령을 실행하여 하여 TCP Connection 상태 별 갯수를 수집 합니다.

Linux Shell
#매트릭 카테고리
CATEGORY="my_category"

netstat -nat| tail -n+3 |  awk '{print $6}' | sort | uniq -c | awk 'BEGIN { printf "{" } {if (NR!=1) {printf ", "}}{printf "\"%s\":%s",$2,$1} END { print "}" }' | \
./focus -license $WHATAP_LICENSE \
    -pcode $WHATAP_PCODE -server.host $WHATAP_HOST \
    -category $CATEGORY -onetime

VMSTAT 활용

아래 예는 vmstat 명령을 실행하여 항목별 지수를 수집 합니다.

Linux Shell
#매트릭 카테고리
CATEGORY="my_category"

vmstat -n 5 | awk ' NR>2 {printf "{ \"r\":%s,\"b\":%s, \"swpd\" :%s, \"free\" :%s, \"buff\" :%s, \"cache\" :%s, \"si\" :%s, \"so\":%s, \"bi\" :%s, \"bo\" :%s,  \"in\" :%s,  \"cs\":%s, \"us\":%s, \"sy\":%s, \"id\":%s, \"wa\":%s, \"st\" :%s }\n", $1,$2, $3,$4, $5,$6, $7,$8, $9,$10, $11,$12, $13,$14, $15,$16,$17}\n' | \
./focus -license $WHATAP_LICENSE \
    -pcode $WHATAP_PCODE -server.host $WHATAP_HOST \
    -category $CATEGORY

DU 활용

아래 예는 du 명령을 실행하여 하여 임의의 디렉토리 용량을 수집 합니다.

Linux Shell
#매트릭 카테고리
CATEGORY="my_category"
TARGET=용량수집을 원하는 디렉토리

du -sb $TARGET --max-depth=0 | awk 'BEGIN { printf "{" } {if (NR!=1) {printf ", "}}{printf "\"%s\":%s",$2,$1} END { print "}" }' | \
./focus -license $WHATAP_LICENSE \
    -pcode $WHATAP_PCODE -server.host $WHATAP_HOST \
    -category $CATEGORY -onetime