FEEDBACK Plugin

You are viewing an old version of this article. View the current version here.

The Feedback plugin is designed to collect and, optionally, upload configuration and usage information to MariaDB.org, or any other configured URL.

See the MariaDB User Feedback page on MariaDB.org to see collected MariaDB usage statistics.

The feedback plugin exists in all MariaDB versions.

MariaDB is distributed with this plugin included, but not installed by default. On Windows this plugin is part of the server and has a special checkbox in the installer window. Either way, you need to explicitly install or enable it, otherwise no feedback data will ever be sent.

Installation (Quick)

Add feedback=ON to the [mysqld] section in the my.cnf file (my.ini on Windows) and restart MariaDB.

In many cases this is all you need to do. The next section goes into more detail.

Installation (Detailed)

Enabling the plugin on Windows

Add feedback=ON to the [mysqld] 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

As described in the "Installation (Quick)" section, above, in most cases all you need to do is add feedback=ON to the [mysqld] section in the my.cnf file and then restart MariaDB.

See the next section for how to verify the plugin is installed and active and (if needed) install the plugin.

Verifying and Installing the Plugin

To verify whether the Feedback plugin is installed use a SHOW PLUGINS statement or

SELECT plugin_status FROM information_schema.plugins WHERE plugin_name = 'feedback';

If that SELECT returns no rows, that means that the Feedback plugin is not installed. If this is the case and you want to install the plugin, you can do so with:

INSTALL PLUGIN feedback SONAME 'feedback';

or by adding --plugin-load=feedback.so to the server's command line or to the [mysqld] section in your my.cnf file.

NOTE: If the plugin is compiled statically within MariaDB, you have to add --feedback to the server's command line instead.

When the plugin is installed you will see:

SELECT plugin_status FROM information_schema.plugins WHERE plugin_name = 'feedback';
+---------------+
| plugin_status |
+---------------+
| ACTIVE        |
+---------------+

Instead of ACTIVE you might see DISABLED. In this case you need to add feedback=ON to the [mysqld] section of your my.cnf or my.ini file.

Configuration

The plugin can be configured with the following system variables (on the command line, in the my.cnf file or dynamically):

feedback

  • Description: Enable or disable Feedback plugin.
  • Valid Values: ON, OFF or FORCE

feedback_send_retry_wait

  • Description: Time in seconds before retrying if the plugin failed to send the data for any reason.
  • Commandline: --feedback-send-retry-wait=#
  • Scope: Global
  • Dynamic: Yes
  • Data Type: numeric
  • Default Value: 60
  • Valid Values: 1 to 86400

feedback_send_timeout

  • Description: An attempt to send the data times out and fails after this many seconds.
  • Commandline: --feedback-send-timeout=#
  • Scope: Global
  • Dynamic: Yes
  • Data Type: numeric
  • Default Value: 60
  • Valid Values: 1 to 86400

feedback_url

  • Description: URL to which the data is sent. More than one URL, separated by spaces, can be specified. Set it to an empty string to disable data sending.
  • Commandline: --feedback-url=url
  • Scope: Global
  • Dynamic: No
  • Data Type: string
  • Default Value: https://mariadb.org/feedback_plugin/post

feedback_user_info

  • Description: 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).
  • Commandline: --feedback-user-info=string
  • Scope: Global
  • Dynamic: No
  • Data Type: string
  • Default Value: Empty string

Collecting data

The 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:

MariaDB [test]> SELECT * FROM information_schema.feedback;

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.

MariaDB starting with 10.0.14

MariaDB 10.0.14 added collation usage statistics. Each collation that has been used by the server will have a record in "SELECT * FROM information_schema.feedback" output, for example:

+----------------------------------------+---------------------+
| VARIABLE_NAME                          | VARIABLE_VALUE      |
+----------------------------------------+---------------------+
| Collation used utf8_unicode_ci         | 10                  |
| Collation used latin1_general_ci       | 20                  |
+----------------------------------------+---------------------+

Collations that have not been used will not be included into the result.

Sending data

The plugin sends the data using a POST request to any URL or a list of URLs that you specify. By default data is sent to https://mariadb.org/feedback_plugin/post. 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 after that 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:

$ mysql -e 'select * from information_schema.feedback' > report.txt

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):

$ curl -F data=@report.txt https://mariadb.org/feedback_plugin/post

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.

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.