본문 바로가기
업무 기록/ETC

리눅스 1초마다 실행 된 반복된 횟수 찾기(더하기)

by code2772 2024. 1. 4.

[ 목차 ]

    728x90
    반응형

    메세지 발송 코드 디버깅 과정에서 새로 배운 내용이다. 기존 테스트 시에는 Postman 이나 Jmeter에 이미 초당 발송 건수나 평균을 확인할 수 있는 경우가 많았는데 SQL 로 10000건같이 대량 발송 후 초당 처리건수를 로그에서 확인할 수 있다는 것을 알게되었다. 

    14:03:45.094 dlvs : oa=[90004] da=[010------] sn=[464878] rcsn=[300990] call=[------][------] sid=[2] cpid=[song_test3] scnt[1] id=[id] resellerCode[30-----71]



    위에 로그는 발송 간 일부분이다. 여기서 dlvs가 발송간 1번만 나오는 것이여서 저걸 기준으로 초당 발송 카운트를 할려고 하였다.

    해당 MMS.20240103 에서 초당 메세지 처리건수를 확인하기 위한 로그이다.

    grep "dlvr" MMS.20240103 | awk '{print $1 " " $2}' | cut -c 1-8 | uniq -c | awk '{print $2, $1}'



    자세한 설명으로 

    grep "dlvr" MMS.20240103:
    grep 명령어는 파일에서 특정 문자열을 찾는 데 사용된다. 여기서는 "dlvr"이라는 문자열을 포함하는 모든 행을 찾는다.

    awk '{print $1 " " $2}':
     awk 명령어는 텍스트 데이터를 처리하고 특정 형식으로 출력하는 데 사용된다. 이 부분에서는 각 행의 첫 번째($1)와 두 번째($2) 열을 공백으로 구분하여 출력한다.

    cut -c 1-8:
    cut 명령어는 텍스트 파일에서 특정 부분을 추출하는 데 사용된다. 여기서는 각 행에서 처음 8개의 문자를 추출한다.

    uniq -c:
    uniq 명령어는 연속된 중복된 행을 하나로 줄이는 데 사용된다. -c 옵션은 각 고유한 행의 발생 횟수를 출력한다.

    awk '{print $2, $1}':
    다시 한 번 awk를 사용하여 결과를 형식화, 이 부분에서는 두 번째 열(고유한 행)과 해당 횟수를 출력한다.

    결과 페이지

    결과 페이지를 확인하면 초당 반복된 횟수를 출력한다.

    반응형