이메일을 통해 로그 파일을 보낼 수 있는 스크립트를 만들고 싶습니다. 이제 문제는 이메일을 통해 받은 텍스트 파일이 비어 있다는 것입니다. 어떤 부분이 문제인가요?
MYSQL_SLOW_LOG_USER="****"
MYSQL_SLOW_LOG_PASSWORD="*****"
SLOW_LOG="/var/log/mysql-slow.log"
cat <<EOF | mysql -u $MYSQL_SLOW_LOG_USER -p$MYSQL_SLOW_LOG_PASSWORD
SET GLOBAL log_queries_not_using_indexes = 'OFF';
SET GLOBAL slow_query_log = 'OFF';
FLUSH SLOW LOGS;
EOF
cat $SLOW_LOG > /tmp/corpsoDB.txt
recipient="[email protected]"
(
cat - <<END
Subject: MySQL Slow Query Log Report-Corpso
Content-Type: multipart/mixed; boundary="-omgemailslikewhoa"
GET ON IT.
---omgemailslikewhoa
Content-Type: text/plain; name="corpsoDB.txt"
Content-Disposition: attachment; filename="corpsoDB.txt"
END
cat /tmp/corpsoDB.txt
cat <<END
---omgemailslikewhoa--
END
) | /usr/sbin/sendmail -i -- $recipient
/tmp/corpsoDB.txt
/usr/sbin/mysqld, Version: 5.7.31-log (MySQL Community Server (GPL)). started w$
Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock
Time Id Command Argument
티/tmp/sendmail-input.txt
Subject: MySQL Slow Query Log Report-Corpso
Content-Type: multipart/mixed; boundary="-omgemailslikewhoa"
---omgemailslikewhoa
Content-Type: text/plain
Content-Disposition: inline
GET ON IT.
---omgemailslikewhoa
Content-Type: text/plain; name="corpsoDB.txt"
Content-Disposition: attachment; filename="corpsoDB.txt"
/usr/sbin/mysqld, Version: 5.7.31-log (MySQL Community Server (GPL)). started w$
Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock
Time Id Command Argument
---omgemailslikewhoa--
방금 이메일로 받은 내용이에요 https://drive.google.com/file/d/1jnNuezyWxYAdNW_ZZ9ZvG1MG3ZJFLaBc/view?usp=sharing
답변1
콘텐츠 처리: 파일명="corpsoDB.txt" 끝 고양이/tmp/corpsoDB.txt
본문 섹션 제목과 본문 섹션 콘텐츠 사이에 줄 바꿈을 생성해야 합니다.