pt-query-digest 이용
TOP10 쿼리를 뽑아 mail로 첨부파일 형식으로 주에 한번씩 보내볼 예정입니다.
Slow query에 변수로 인한 같은 쿼리임에도 불구하고 숫자하나만 다른 데이터가 들어가도 top 쿼리에 찍힙니다..결국 중복된 쿼리가 찍혀있을 수 있기때문에 필터링하는 방법을 강구해야할 거 같습니다.
사전 작업
pt-query-digest 설치
https://jhdatabase.tistory.com/53?category=953606
[pt-query-digest - Mysql slowquery 분석 ]
안녕하세요 이번글에서는 Mysql or Mariadb에서 쿼리 실행 시간이 설정된 시간 이상으로 걸릴 시 slow query log가 남게됩니다. 하지만 가시성 가독성이 떨어지기 때문에 Percona에서 만든 툴을 이용하여
jhdatabase.tistory.com
mutt 설치
https://jhdatabase.tistory.com/74
[NCP - mail 전송 방법] use.(sendmail/mutt)
일반 텍스트 메일 보내는 방법(sendmail) ▶ sendmail 설치 [root@mysql]# yum install -y sendmail sendmail-cf ▶ config 수정 [root@mysql]# vi /etc/mail/sendmail.mc -- 52,53라인에 dnl을 삭제 [root@mysql..
jhdatabase.tistory.com
▶ email body 생성
[root@mysql bin]# vi body.txt
Deliver slowquery this week
▶ script 생성
[root@mysql bin]# vi mail.sh
#!/bin/bash
date=$(date +"%Y%m%d")
/root/percona-toolkit-3.0.5/bin/pt-query-digest --type='slowlog' /root/mysql-slow-query-$date.log > /root/slowquery_$date.log
sed -n '/Query 1:/,/Query 11:/p' /root/slowquery_$date.log | awk '!x[$0]++ {print $0}' > /root/slowquery_$date_mail.log
mutt -s "Slow query mail" jeonghyun.kim@*******.com < /root/body.txt -a /root/slowquery_$date_mail.log
▶ script 테스트
[root@mysql bin]# sh +x mail.sh
![](https://blog.kakaocdn.net/dn/yJkuF/btrB5K8VXFH/Bkj4RrWve45J5ItPY3Kxlk/img.png)
▶ crontab
매주 일요일 새벽 3시에 전송
00 03 * * 7 /bin/sh /root/mail.sh
'Others > Opensource Tool' 카테고리의 다른 글
[Terraform - NaverCloud vm생성] part 2 (0) | 2022.06.19 |
---|---|
[Terraform - NaverCloud vm생성] part 1 (0) | 2022.06.19 |
[ Slack - Webhook 이용 alert 설정] (0) | 2022.05.14 |
[Ansible - Semaphore playbook테스트] part 3 (0) | 2022.04.24 |
[Ansible - Semaphore Web설정] part 2 (0) | 2022.04.24 |