MySQL 모니터링 시스템 개발

less than 1 minute read

개요

회사에서 MySQL 모니터링 할 일이 있어 Lambda를 이용하여 모니터링 스크립트를 적용해 두었다.
하지만 간단한 기능만 있고 좀더 다양한 기능을 만들어 보고 싶어 혼자 만들어 볼려고 한다.
`Percona`, `mysql_exporter`등 다양한 기능의 좋은 솔루션들이 있지만 기능이 너무 많아 접근성이 어렵고 일단 영어다..
그외에도 유료, 무료 다양한 APM이 있지만 소규모의 회사에서 복잡한 설정 없이 다운로드만 하여 사용 할 수 있는 프로그램을 만드는 것을 목표로 하겠다!!

개발 영역

  1. 사용자 페이지 또는 스크립트
  2. 모니터링 Agent

기능

  1. 알람 발송 기능 - 채널: Slack, telegram, Mail
  2. DB 접속 상태 모니터링
  3. DB 접속자 임계치 모니터링
  4. DB 접속자 증가율 모니터링
  5. Slow 쿼리 모니터링
  6. 등록되지 않은 IP 접근 시도 모니터링
  7. 중복 쿼리 모니터링
  8. 테이블 락 모니터링
  9. 쿼리 타입별 증가율 모니터링
  10. 쿼리 타입별 통계 기반 증가율 모니터링 # 별도의 저장소 필요 (저번주 보다 10% 사용량 증가 하였습니다..)
  11. 네트워크 사용량 증가율 모니터링
  12. Replication 상태 모니터링

참고 링크

  • https://runebook.dev/ko/docs/mariadb/server-status-variables/index

GitHub Source

Updated: