MySQL 기본 검사 및 정책

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기7분
  • 에이전트 클라이언트 수집기는 MySQL 메트릭 모니터링에 대해 다음과 같은 기본 검사 및 정책을 제공합니다.

    표 1. MySQL 이벤트
    유형 검사 설명 사용법 및 사용 예시 출력
    이벤트 app.mysql.check-mysql-alive MySQL 쿼리에서 결과 세트의 길이를 확인합니다. check-mysql-query-result-count.rb(옵션)

    -c, --critical COUNT COUNT 쿼리에서 반환되는 항목 수에 대한 중요 임계치(필수)

    -d, --database DATABASE MySQL 데이터베이스(필수)

    -h, --host HOST 연결할 MySQL 호스트(필수)

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션. .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -P, --port PORT 연결할 MySQL 포트

    -q, --query QUERY 실행할 쿼리(필수)

    -w, --warning COUNT 쿼리에서 반환되는 항목 수에 대한 카운트 경고 임계치(필수)

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    사용 예시

    check-mysql-query-result-count.rb -h 127.0.0.1 -P 3306 -d mysql -q "select * from user" -w 5 -c 8

    MysqlQueryCountCheck OK/CRITICAL/WARNING: 쿼리 길이와 임계값 사이의 비율에 관한 메시지
    이벤트 app.mysql.check-mysql-threads MySQL DB에서 실행 중인 스레드 수를 확인하고 입력 값에 따라 OK/WARNING/CRITICAL 상태를 할당합니다. check-mysql-threads.rb(옵션)

    -h, --hostname HOST 로그인할 호스트 이름

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션(.ini 경로가 제공된 경우 필요). .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -c, --critnum NUMBER 경보가 발행되는 실행 중인 스레드 수

    -w, --warnnum NUMBER 경고가 발행되는 실행 중인 스레드 수

    -P, --port PORT 연결할 MySQL 포트

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    사용 예시

    check-mysql-threads.rb -h 127.0.0.1 -P 3306 -l 0 -m 1 -c 25 -w 20

    CheckMySQLHealth 정상/중요/경고 및 실행 중인 스레드 수
    이벤트 util.check-mysql-query MySQL DB가 실행 중인지 확인합니다. check-mysql-threads.rb(옵션)

    -h, --hostname HOST 로그인할 호스트 이름

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션(.ini 경로가 제공된 경우 필요). .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -c, --critnum NUMBER 경보가 발행되는 실행 중인 스레드 수

    -w, --warnnum NUMBER 경고가 발행되는 실행 중인 스레드 수

    -l, --critlow NUMBER 경보가 발행되는 실행 중인 스레드 수

    -m, --warnlow NUMBER 경고가 발행되는 실행 중인 스레드 수

    -P, --port PORT 연결할 MySQL 포트

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    사용 예시

    check-mysql-threads.rb -h 127.0.0.1 -P 3306 -l 0 -m 1 -c 25 -w 20

    CheckMySQLHealth 정상/중요/경고 및 실행 중인 스레드 수

    표 2. MySQL 메트릭
    유형 검사 설명 사용 및 사용 예시 출력
    메트릭 app.mysql.metrics-mysql MySQL DB에서 메트릭을 반환합니다. /usr/local/bin/metrics-mysql-graphite.rb(옵션)

    -h, --host HOST 연결할 MySQL 호스트(필수)

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션(.ini 경로가 제공된 경우 필요). .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -P, --port PORT 연결할 MySQL 포트입니다.

    -s, --scheme SCHEME 메트릭 명명 체계로, 메트릭에 추가하는 텍스트입니다.

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    -v, --verbose 보조 상태 복사본과 관련된 오류(생성된 경우)를 표시합니다. 활성화하려면 명령에 -v를 추가합니다.

    사용 예시

    check-mysql-threads.rb -h 127.0.0.1 -P 3306 -l 0 -m 1 -c 25 -w 20

    MysqlQueryCountCheck OK/CRITICAL/WARNING: 쿼리 길이와 임계값 사이의 비율에 관한 메시지
    메트릭 app.mysql.check-mysql-threads MySQL DB에서 실행 중인 스레드 수를 확인하고 입력 값에 따라 OK/WARNING/CRITICAL 상태를 할당합니다. /usr/local/bin/metrics-mysql-graphite.rb(옵션)

    -h, --host HOST 연결할 호스트 이름(필수)

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션(.ini 경로가 제공된 경우 필요). .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -c, --critnum NUMBER 경보가 발행되는 실행 중인 스레드 수

    -w, --warnnum NUMBER 경고가 발행되는 실행 중인 스레드 수

    -l, --critlow NUMBER 경보가 발행되는 실행 중인 스레드 수

    -m, --warnlow NUMBER 경고가 발행되는 실행 중인 스레드 수

    -P, --port PORT 연결할 MySQL 포트

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    사용 예시

    metrics-mysql-graphite.rb -h 127.0.0.1 -P 3306

    hostname.mysql.general.abortedClients 7600 1649630975

    hostname.mysql.general.abortedConnects 247 1649630975

    hostname.mysql.general.txBytes 752733902 1649630975

    hostname.mysql.commands.admin_commands 1631 1649630975

    hostname.mysql.commands.alter_table 0 1649630975

    메트릭 app.mysql.metrics-mysql-processes MySQL DB 프로세스와 관련된 다양한 메트릭을 반환합니다.

    /usr/local/bin/metrics-mysql-processes.rb(옵션)

    -h, --host 연결할 MySQL 호스트

    -i, --ini VALUE My.cnf ini 파일

    --ini-section VALUE my.cnf ini 파일의 섹션(.ini 경로가 제공된 경우 필요). .ini 파일을 통해 MySQL에 연결할 수 있도록 하려면 .ini 파일의 클라이언트 섹션에서 'user' 및 'password' 속성에 대한 값을 제공합니다.

    -P, --port PORT 연결할 MySQL 포트

    -s, --scheme SCHEME 메트릭 명명 체계로, 메트릭에 추가하는 텍스트입니다.

    -S, --socket 연결할 UNIX 소켓(지정된 호스트가 UNIX 유사 시스템에서 'localhost'인 경우 필수)

    사용 예시

    metrics-mysql-processes.rb -h 127.0.0.1 -P 3306

    프로세스, 실행 중인 명령 및 명령을 실행 중인 데이터베이스

    예:

    • hostname.mysql.database.mysql 1 1649631113
    • hostname.mysql.command.Daemon 1 1649631113
    • hostname.mysql.command.Sleep 4 1649631113
    • hostname.mysql.command.Query 1 1649631113