Gather performance data after tempest
This makes us gather a bunch of consistent statistics after we run
tempest that can be use to measure the impact of a given change. These
are stable metrics such as "number of DB queries made" and "how much
memory is each service using after a tempest run."
Note that this will always run after devstack to generate the JSON
file, but there are two things that control its completeness:
- MYSQL_GATHER_PERFORMANCE must be enabled to get per-db stats
- Unless tls-proxy is enabled, we will only get API stats for keystone
Change-Id: Ie3b1504256dc1c9c6b59634e86fa98494bcb07b1
diff --git a/lib/databases/mysql b/lib/databases/mysql
index 0f45273..6b3ea02 100644
--- a/lib/databases/mysql
+++ b/lib/databases/mysql
@@ -150,6 +150,15 @@
iniset -sudo $my_conf mysqld log-queries-not-using-indexes 1
fi
+ if [[ "$MYSQL_GATHER_PERFORMANCE" == "True" ]]; then
+ echo "enabling MySQL performance_schema items"
+ # Enable long query history
+ iniset -sudo $my_conf mysqld \
+ performance-schema-consumer-events-statements-history-long TRUE
+ iniset -sudo $my_conf mysqld \
+ performance_schema_events_stages_history_long_size 1000000
+ fi
+
restart_service $MYSQL_SERVICE_NAME
}