PT-81 Moved functions to the collect module

This commit is contained in:
Carlos Salguero
2017-02-25 10:41:07 -03:00
parent 173d04b8b6
commit 90e1e9cf1e
2 changed files with 50 additions and 21 deletions

View File

@@ -102,6 +102,8 @@ collect() {
log "Could not find the MySQL error log"
fi
ps_locks_transactions "$d/$p-ps-locks-transactions"
# Get a sample of these right away, so we can get these without interaction
# with the other commands we're about to run.
if [ "${mysql_version}" '>' "5.1" ]; then
@@ -389,6 +391,33 @@ innodb_status() {
}
}
ps_locks_transactions() {
local outfile=$1
mysql -e 'select @@performance_schema' | grep "1" &>/dev/null
if [ $? -eq 0 ]; then
local status="select t.processlist_id, ml.* from performance_schema.metadata_locks ml join performance_schema.threads t on (ml.owner_thread_id=t.thread_id)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
local status="select t.processlist_id, th.* from performance_schema.table_handles th left join performance_schema.threads t on (th.owner_thread_id=t.thread_id)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
local status="select t.processlist_id, et.* from performance_schema.events_transactions_current et join performance_schema.threads t using(thread_id)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
local status="select t.processlist_id, et.* from performance_schema.events_transactions_history_long et join performance_schema.threads t using(thread_id)\G"
echo -e "\n$status\n" >> $outfile
$CMD_MYSQL $EXT_ARGV -e "$status" >> $outfile
else
echo "Performance schema is not enabled" >> $outfile
fi
}
# ###########################################################################
# End collect package
# ###########################################################################