<<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.