So work on the blueprint has been kind of slow lately since I had to disappear for a while.

Some things brought up in the last blueprint meeting dealt with:

  • Using Configuration Groups API to control logging
  • Alternative to os.stat to find the log's modification time
  • Log Encryption
  • How would this exactly work for a cluster
  • Who has access to the logs - Since there would be no way to block the admin from accessing them from the Swift container but we can block unauthorized users using a Swift ACL

Configuration Groups:

A configuration group is a collection of settings that can be saved and applied to one or more instances in Cloud Databases.

And a single setting or option for that datastore is known as a parameter.

A few of the log related parameters are:

MySQL:

slow_query_log - Enable or disable slow query log

general_log - Enable or disable general log

log_error - Set the location of the error log

log_warnings - Enable or disable writing additional warning messages to the error log

log_bin - Binary logs

Some of these variables are static so a restart is required before the changes can take effect.

But of course this only works if the datastore supports configuration groups, have to figure out something else for the ones that don't.

References:

http://www.rackspace.com/knowledge_center/article/managing-configuration-groups-for-cloud-databases-with-the-trove-command-line-tool 

https://wiki.openstack.org/wiki/Trove/Configurations