User Feedback plugin - Source

Revision
7087
User
sergii
Date
2011-10-28 11:32
<<toc>> The Feedback plugin (earlier called a "Phone Home" feature) is designed to collect and, optionally, upload configuration and usage information to [[http://mariadb.org/|MariaDB.org]], or any other configured URL. See the [[http://mariadb.org/feedback_plugin/|MariaDB User Feedback]] page on MariaDB.org to see collected MariaDB usage statistics. == Installation MariaDB is distributed with this plugin included, but not installed by default. On Windows this plugin is part of the server, but disabled by default. Either way, you need to explicitly install or enable it, otherwise no feedback data will ever be sent. === Enabling the plugin on Windows Add <<code>>feedback=ON<</code>> to the <<code>>[mysqld]<</code>> section in the my.ini configuration file. The plugin can also be enabled during a new installation. There is an "Enable feedback plugin" checkbox during the GUI installation, or, if you are installing the MSI from the command line, there is a FEEDBACK=1 command line option you can use to enable the plugin. === Enabling the plugin on Unix/Linux To verify whether the Feedback plugin is installed use a ##[[show-plugins|SHOW PLUGINS]]## statement or <<sql>> MariaDB [test]> SELECT plugin_status FROM information_schema.plugins WHERE plugin_name = 'feedback'; Empty set (0.01 sec) <</sql>> The example above shows that the Feedback plugin is **not** installed. If this is the case (as above) and you want to install the plugin, you can do so with: <<sql>> MariaDB [test]> INSTALL PLUGIN feedback SONAME 'feedback.so'; Query OK, 0 rows affected (0.00 sec) <</sql>> or by adding ##--plugin-load=feedback.so## to the server's command line or to the <<code>>[mysqld]<</code>> section in your ##my.cnf## file. When the plugin is installed you will see: <<sql>> MariaDB [test]> SELECT plugin_status FROM information_schema.plugins WHERE plugin_name = 'feedback'; +---------------+ | plugin_status | +---------------+ | ACTIVE | +---------------+ 1 row in set (0.01 sec) <</sql>> Instead of ##ACTIVE## you might see ##DISABLED##, in this case you need to add ##--enable-feedback## to the ##my.cnf## file. == Configuration The plugin can be configured with the command-line options (in the ##my.cnf## file or on the command line). The following command-line options are available: <<style class="darkheader-nospace-borders">> |= Option |= Description | ##--feedback## | Enable or disable Feedback plugin. Possible values are ##ON##, ##OFF##, ##FORCE##. | ##--feedback-send-retry-wait## | If the plugin fails to send the data, it will retry after that many seconds. The default value is 60. | ##--feedback-send-timeout## | An attempt to send the data times out and fails after that many seconds. The default value is 60. | ##--feedback-url## | Space separated URL list to send the data to. Set it to the empty string to disable data sending. The default value is {{{https://mariadb.org/feedback_plugin/post}}}. | ##--feedback-user-info## | The value of this option is not used by the plugin, but it is included in the feedback data. It can be used to add any user-specified string to the report. This could be used to help to identify it. For example, a support contract number, or a computer name (if you collect reports internally by specifying your own ##feedback-url##). <</style>> == Collecting data Feedback plugin is an ##INFORMATION_SCHEMA## plugin. It creates a table with the name ##FEEDBACK## in the ##INFORMATION_SCHEMA##, and only the contents of this table is sent. To see the collected data try: <<sql>> MariaDB [test]> SELECT * FROM information_schema.feedback; <</sql>> This will include selected rows from ##SHOW STATUS## and ##SHOW VARIABLES##, plus versions of all installed plugins and information about the system (cpu count, memory size, OS, architecture, linux distribution). Also it includes the server UID - a SHA1 hash of the MAC address of the first network interface and the TCP port that the server listens on. == Sending data The plugin sends the data using a POST request to any URL or a list of URLs that you specify. Both HTTP and HTTPS protocols are supported. If data sending is enabled (##feedback-url## is not an empty string), the Feedback plugin will automatically send a report a few minutes after a startup and once a week to all URLs in the list. You can, alternatively, disable the automatic data sending and upload the feedback report manually. First, generate the report file with the MariaDB command-line ##mysql## client: <<code>> $ mysql -e 'select * from information_schema.feedback' > report.txt <</code>> Then you can send it by opening https://mariadb.org/feedback_plugin/post in your browser, and uploading your generated ##report.txt##. Or you can do it from the command line with (for example): <<code>> $ curl -F data=@report.txt https://mariadb.org/feedback_plugin/post <</code>> If you do not trust the plugin, manual uploading allows you to be absolutely sure that we receive only the data shown in the ##INFORMATION_SCHEMA.FEEDBACK## table and that no private or sensitive information is being sent.