PT-80 Added support for slave status in pt-stalk

This commit is contained in:
Carlos Salguero
2017-02-23 15:10:58 -03:00
parent b118e39d10
commit 7a8aadd891
2 changed files with 36 additions and 0 deletions

View File

@@ -832,6 +832,8 @@ collect() {
log "Could not find the MySQL error log"
fi
slave_status "$d/$p-slave-status" $mysql_version
if [ "${mysql_version}" '>' "5.1" ]; then
local mutex="SHOW ENGINE INNODB MUTEX"
else
@@ -1062,6 +1064,38 @@ tokudb_status() {
>> "$d/$p-tokudbstatus$n" || rm -f "$d/$p-tokudbstatus$n"
}
slave_status() {
local outfile=$1
local mysql_version=$2
if [ "${mysql_version}" '<' "5.7" ]; then
echo "MySQL < 5.7 detected"
local status="SHOW SLAVE STATUS\G"
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
else
local status="
SELECT *
FROM performance_schema.replication_connection_configuration
JOIN performance_schema.replication_applier_configuration
USING (channel_name)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
local status="SELECT *
FROM replication_connection_status\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
local status="SELECT *
FROM replication_applier_status
JOIN replication_applier_status_by_coordinator
USING (channel_name)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
fi
}
innodb_status() {
local n=$1

View File

@@ -30,3 +30,5 @@ lower_case_table_names = 0
# fkc test
binlog_format = STATEMENT
performance_schema=ON