This section documents changes and bug fixes that have been applied to MySQL Enterprise Monitor version 3.0.0, since version 2.3.13.
This listing is incomplete. For additional information, see Chapter 2, What's new in MySQL Enterprise Monitor 3.0?.
Functionality Added or Changed
For annotated MySQL Instance's, the
Selector will display a Note Icon to the right when
hovering over the MySQL Instance. The note will be displayed as
The Server Details section was expanded and
rewritten for the new Monitor Overview
page. It now shows (and groups) all configuration variables for
monitored instances (using
and also displays information for the hosts, such as CPU and
A Monitor, MySQL Servers, Export Servers as CSV option was added. It will export MySQL Server information and includes the following fields: "Group", "Server", "Host ID", "Query Analyzer Enabled", "Query Analyzer Examples", "Query Analyzer Explains", "MySQL", "Agent", "Operating System", "Port", "Socket", "Data Dir", "Up Since", "Last Agent Contact", "Agent Reporting Delay", and "Last MySQL Contact". (Bug #13261949)
Thresholds for rules can now be set for specific assets, for example, on a per-instance or per-group basis. Before this required the creation of new (copied) rules for each new threshold. (Bug #13101380)
Expand All, Collapse All, and Select All buttons were added to the Advisor's page. (Bug #12890471)
The Event Handler SMTP Notification policy now has three options: Notify on event escalation, Notify on any status change, and Always notify. Earlier versions would not allow the "Always notify" option. (Bug #12536728, Bug #13682273)
The MySQL Enterprise Monitor User Interface now displays timestamped login information, to determine which users used (and are using) the MySQL Enterprise Monitor User Interface. The related information under Manage Users includes the Password Set Date, Last Login, Failed Logins, and Last Failed Login. (Bug #11762796)
Graphs now display a
SUM of the series across
all servers at the group level now, and not specific AVG/MIN/MAX
entries for every series.
A new Event Handlers feature was added that replaces the 2.x Notification Groups feature. It now allows individual severity levels to be configured to notify users, as opposed to a restricted subset of Warnings and/or Critical events. Additional improvements were also implemented. (Bug #11747339, Bug #11748828, Bug #31879)
Graphs can now be reordered and filtered. For example, adding graphs to the top of the Reports & Graphs page allows them to be viewed first. (Bug #11750720, Bug #41352)
Group based graphs now include a "Combined" graph type, which shows a series for every asset within that group (per host for host specific graphs, or per MySQL instance for MySQL specific graphs), rather than just the avg/min/max of all servers within the group.
This, for example, makes it easier to determine which MySQL instances or hosts caused spikes in a graph. (Bug #11754701, Bug #46344)
The global Asset selector was improved for each tab in the dashboard, and search functionality was added. The new Show All Assets search option is available where Assets other than MySQL instances are desirable. (Bug #11750174, Bug #40577)
You can now filter the asset selector navigation tree (by opening the filter with the magnifying glass button, and using the search field to find assets matching a criteria). This allows assets to be updated per group or host. (Bug #11749615, Bug #39472)
Attempts to create a support diagnostics package for a server group name with two or more single quotes would fail. (Bug #11762466, Bug #55064)
A new "combined" graph type now exists that will display one series per asset. For example, this allows you to see exactly which hosts utilize the highest amount of CPU usage. MySQL Enterprise Service Manager determines the most useful graph type for each Advisor. (Bug #11760276)
The replication Advisors now detect when a server changes roles, such as slave to fail-over master, and automatically adapts the assigned replication Advisors accordingly. (Bug #11751898)
It is now possible to see which hosts and Assets a particular
Advisor is scheduled against. This is viewable under the
Advisors tab, and by expanding a particular
Advisor. The Schedule column will define a
particular time frame if the Advisor is scheduled (such as "5m"
for five minutes), otherwise it will be labeled as
A graph mouseover now displays values for both the x-axis and y-axis, when before only the x-axis values were displayed. (Bug #11761569)
Each item or series on a graph may now be toggled as hidden or
viewable. For example, you might hide all of the
INSERT queries, or only show the
SELECT queries on a particular graph. The
y-axis range will adjust itself automatically.
Note: This change reflects the client-side nature of the graphs since MySQL Enterprise Monitor 3.0, when before they were static images generated by the server. (Bug #11755495)
Advisors are now automatically scheduled, and the settings depend on their assigned group. Before, each Advisor had to be manually enabled for each new MySQL instance. (Bug #11754971, Bug #13973260)
An Info column was added to the Advisors listing. It's a mouseover that describes the particular Advisor. (Bug #11751893)
MySQL Enterprise Service Manager user accounts now have a Full Name label. If set, the full name will be displayed instead of the username for the logged in user button, and within the logged notes for closed events. (Bug #11747693)
The MySQL Enterprise Service Manager installer now sets
innodb_file_format to "Barracuda" to enable
The Advisors package is no longer packaged as a separate download, and are instead bundled with the Service Manager and enabled by default.
The bundled JRE was updated to 1.7.0_25 for both the Agent and Service Manager.
It is now possible to "Ignore" a MySQL instance, which will hide the instance from all pages aside from the MySQL Instances dashboard. To show the instance here, you need to filter for Ignored Server == "(any)" or "Enabled", which will then also allow you to "Show" the instance again either in bulk, or per ignored instance.
For more information about this functionality, see Section 4.4, “MySQL Instances”.
GTID information is now available when viewing details of a MySQL instance from the Replication Dashboard.
A Graph Height slider was added to the timeseries graphs page that adjusts the height (size) of each graph. This replaces the hour-based zoom, and also replaces the requirement to manually type in height/width dimensions.
A new Query Response Time Index (QRTI) feature was added. For more information, see Section 5.1, “Query Response Time index (QRTi)”.
A new Agent management utility was added. Execute
alter MySQL server connections. For more information, see
Section C.2.1, “MySQL Enterprise Monitor Agent Configurable Options”.
Connects to monitored MySQL Instances can now be configured centrally, via the MySQL Enterprise Monitor User Interface. For more information, see Section 4.4, “MySQL Instances”.
Asset Selector now displays a numeric
"badge" next to any Asset that has open Emergency Events.
Clicking on the badge will show the associated Emergency Events.
The MySQL Enterprise Monitor User Interface now requires SSL for all communication, when before it was optional.
Because only a basic self-signed security certificate is included when the Service Manager is installed, it is likely that your browser will display a warning about an untrusted connection. You may either install your own certificate, or add a security exception for the Service Manager URL to your browser.
The What's New page was rewritten, and now includes informative information for completing an installation or upgrade.
The bundled MySQL Server was upgraded to 5.6.13. The previous version, in MySQL Enterprise Monitor 2.3.13, was 5.5.29.
A configurable Analyze Filesystem Types
option, to define the filesystem types that should be collected
and analyzed for both events and graphs, was added to the
Filesystem Free space Advisor. It defaults
RAM Disk, and
Swap. Other options include
This change does not affect what is collected by the Agent, nor shown on the asset selector.
On Mac OS X, the Agent Installer now bundles Java 7 JRE, and requires Mac OS X 10.7.3 or greater to install. Older versions of Mac OS X can be monitored remotely.
The CPU Usage Excessive Advisor was improved, to use exponential moving averages for evaluating CPU usage on a host.
It now looks at CPU usage over a period of time, and evaluates when the thresholds are broken for multiple collection intervals in a row. This does not necessarily have to be over a long moving average, just consistently at a high usage for more than 2 time intervals.
A SNMP Notification Status section was added to the Event Handling configuration section. It reports the Last Successful SNMP Trap, Last SNMP Trap Failure, and Last Failure Message. For example, an error is generated if a noisy Event sends an amount of email that exceeds the email quota on the system. These errors will also show up in the logs.
The MySQL Enterprise Service Manager passwords are now encrypted. You may set the
repository password with the bundled
utility. The encrypted version of this password is listed in
The Agent Installer is now its own package, when before it included installers for the Proxy and Aggregator.
Upgrading from 2.3.x to 3.0.0 will overwrite MySQL Enterprise Monitor's
configuration file. The only MySQL options that are migrated
from the 2.3.x MySQL configuration file are
innodb_log_file_size. This is because
MySQL Enterprise Monitor 3.x contains a significant amount of changes, so we
recommend using our default MySQL configuration file.
On Linux, the 64-bit Agent Installer now includes two options for the bundled JVM. A 64-bit JVM, and the recommended 32-bit JVM. We recommend the 32-bit JVM because it uses less memory, although some systems may not allow 32-bit applications to run.
Installer binaries bundle the 32-bit JVM unless the Installer filename contains "jvm64".
The UI for displaying down Agents and Instances was improved. Each row is now styled to account for the primary state of the instance.
The styling of the server name was changed in the Asset Selector for problematic MySQL instances. It changed from a blue strike-through for problematic MySQL instances, to having the MySQL instance name red if it is down, or italic red if the Agent is down. Hovering over the name will yield a tooltip with the error.
Our Agent Installer is now a completely separate component from the Proxy and Aggregator, so all Proxy and Aggregator references were removed from the Agent Installer.
Bad Connection Configurations and MySQL Availability are now reported separately. A bad connection is a new connection that failed, typically due to configuration issues. Availability issues come from known connections that are unavailable. For more information, see Section 4.4, “MySQL Instances”.
The format of the
diagnostics file changed. It is now listed as one Asset per
block, instead of having one row per Asset inventory item.
A new Status Summary widget was added. For more information, see Section 4.1.1, “Status Summary”.
Advisors can now be assigned to specific assets, which includes specific MySQL instances or Groups. And assets will automatically be rescheduled when their group status changes in the future, or automatically be unscheduled when removed from groups.
The Overview page was rewritten and simplified. It now displays the latest critical events, a "Top 5" list of likeliest MySQL Instances and hosts that require attention, a Query Response Time Index (QRTI), and Database Statistics including Availability and Activity information. This new functionality also replaces the 2.x Heat Chart.
Parsing was updated to properly parse
INNODB STATUS with MySQL Server 5.6 options.
The Query Analyzer (QUAN) now works with MySQL Server 5.6.14 (or
PERFORMANCE_SCHEMA enabled. In
this situation, an extra component (such as a plugin) is not
required to use QUAN.
The event log will now note that the same event was closed multiple times, as opposed to listing each individual closure.
A MySQL instance (or any asset, such as a file system) that is in two groups may now be scheduled independently.
The MySQL Server upgrade related Advisors, which typically referred to older MySQL Server versions and bugs, were removed.
Several duplicate rules were removed, and similar rules were merged where applicable.
The Agent installer now has the option to assign the Agent to a group, at installation time.
The following Advisors were added. Most of the new Advisors take advantage of the new trends, projections, and group comparison features in MySQL Enterprise Monitor 3.0. Here is a partial list:
Agent Health Advisor: It monitors JVM and OS metrics to determine if the Agent is misbehaving.
In 2.3, a MySQL Agent Memory Usage Excessive Advisor performed a memory check on the Agent. The Agent Health Advisor now performs this action, and much more.
SQL Statement Generates Warnings or Errors: It generates an alert when a normalized SQL statement generates errors or warnings over a period of time. Its "One Alert Per Query" parameter defaults to true, as otherwise it generates one Alert per MySQL Server. The default period of time is one minute.
Query Pileup: It detects for cases when the number of queries suddenly increases and remains there for a period of time. The default window to check is five seconds.
MySQL Availability: It provides data for the Database Availability metric on the Monitor Overview page, and is scheduled by default.
CPU Usage Higher than Peers: It detects when CPU usage across a group of servers is higher than its peers.
CPU Utilization: CPU I/O wait usage should be low on a properly configured and well-tuned system. Excessive CPU I/O wait usage is often indicative of poor disk or network performance.
Average Statement Execution Time: It monitors the average execution time of a normalized SQL statement and generates an alert when the time exceeds the specified thresholds.
The default thresholds are 500ms (notice), 1000ms (warning), and 5000ms (critical). Other default parameter values: Minimum Execution Count = 10, One Alert Per Query = true, and DML Statements Only = true.
Filesystem Free Space: It monitors free space and growth rates on file systems over a period of time.
Defaults: Extrapolate Free Space To Zero = true, Free Space Availability Thresholds (% of total space) = 20% (warning) 10% (critical) 0% (emergency), Disk Space Consumption Rate Thresholds (% per unit time) = 1 / 1 hour.
MySQL Availability: Formally known as "MySQL Server Not Reachable," it pings the MySQL Server and checks its availability. The ability to set the schedule type is new.
Schedule types: Fixed Rate executes every N interval no matter how long execution takes. Fixed Delay starts the N interval timer after execution completes.
Defaults: Ping every second, Schedule type = Fixed rate, and interval is set to one minute.
Replication Configuration: It analyzes the configuration of masters and slaves in replication topologies and alerts when configuration problems have been detected (e.g., duplicate server IDs, max_allowed_packet sizes on slaves are less than their master, and when a master is replicating to an older slave).
Defaults: Scheduled every minute, at a fixed rate.
After MySQL Enterprise Monitor Agent discovers unmonitored MySQL processes on a host with the new "MySQL Process Discovery" Advisor, this Advisor will attempt to create a connection using the default connection credentials that are defined per Agent in MySQL Enterprise Service Manager for the "MySQL Process Discovery" Advisor. If the connection succeeds, then the newly discovered MySQL instance will automatically be monitored and viewable in MySQL Enterprise Service Manager.
The default connection parameters may be edited under Advisors, Monitoring and Support Services, expand MySQL Process Discovery, choose the Agent you wish to edit, Schedule, then edit the Parameters and save.
To coincide with the upgrade to Tomcat 7, Servlet 3.0 constructs are now used throughout the MySQL Enterprise Monitor source code.
The Database Availability information now differentiates the time a MySQL instance has been monitored. It used to be assumed that an instance was down during the time it was not monitored.
The Advisor tab now displays the current status for each Advisor. It also lists the assigned Event Handlers and defined parameters.
The Agent installation wizard now encrypts the password that the user enters prior to writing it to the Agent configuration file. The password is no longer stored in cleartext.
This also means that the Agent's password can no longer be
agent-instance.ini. Instead, use
MySQL Enterprise Service Manager or
Several new graphs were added, which include measuring CPU and memory usage by the MySQL processes, and Agent operations on the MySQL server.
The asset listing for MySQL instances and hosts under each Advisor is now collapsible, when before viewing an Advisor would display every asset. This view is collapsed by default.
Parameters may be configured for each individual Advisor that is scheduled, when before an Advisor could only be configured globally.
Improved third-party component tracking, which now utilizes Apache Ivy.
The Stored Procedures Found With SELECT * Syntax Advisor was removed.
The "General Query Log Enabled" Advisor would not function (or start) when scheduled against MySQL Server 5.6. (Bug #16816203)
The Network - Interface Throughput graph has a key for "Sent" (as a light blue line), but "Sent" was not displayed on the graph. (Bug #16702522)
MySQL Enterprise Monitor would perform EXPLAIN for all statements that exceeded the "Auto-Explain Threshold" when the Auto-Explain feature was enabled. This generated errors and filled the logs for statements that could not be explained. Now only SELECT statements are explained in 5.5, and SELECT, INSERT, DELETE, REPLACE, and UPDATE statements with 5.6. In other words, the plugin does not attempt to EXPLAIN statements that are not queries or DML. (Bug #16604177)
When Authoritative LDAP Authentication was enabled, MySQL Enterprise Service Manager would offer an Edit User option, but using it would cause an error because user information was managed by a LDAP server. The Edit User option has been removed. (Bug #14572585)
Passing in an incomplete amount of data via the Aggregator to MySQL Enterprise Service Manager would cause the Query Analyzer tab to be unresponsive. (Bug #13510689)
Graphs with "CPU Utilization | User | max" and/or "CPU Utilization | Total | max" showed wrong lines for a server that was dead, died, or stopped. (Bug #13412565)
Under certain conditions, the Agent would repeatedly attempt to
exceptions, and shut down. The Agent no longer listens for
duplicate UUID errors, nor does it shut down.
While the MySQL Instance display name could be edited, the old name would also be displayed. (Bug #12888645)
Upgrading a MySQL Enterprise Service Manager that monitored one MySQL instance with all rules scheduled would generate warnings. (Bug #12547918)
When executing the Agent installer, providing incorrect login credentials for a monitored MySQL server would cause the Agent to not show up in the MySQL Enterprise Monitor User Interface. (Bug #11756131)
A long MySQL Server name could cause the MySQL Enterprise Monitor User Interface to be too wide. The Asset Selector width is now configurable. (Bug #11748099)
A lost MySQL connection to an Agent now displays "Bad Connection" on the MySQL Server Instances page, and the MySQL connection error is displayed my mouse hovering. (Bug #11754380, Bug #45981)
Added rule parsing for 5.6
SHOW ENGINE INNODB
LATEST DETECTED DEADLOCK,
LATEST FOREIGN KEY ERROR.
(Bug #11747681, Bug #33593)
An Agent can now monitor multiple MySQL instances where the MySQL server versions can each be different. Before, each version had to be identical. And a single Agent can now monitor both remote and local MySQL instances. (Bug #11747247)
After restarting an Agent that monitors multiple MySQL instances, instances that were down while the Agent was inactive would not be reconnected by the Agent, therefore they would not be seen in the dashboard. (Bug #11758177)
By default, an Agent now monitors the MySQL Enterprise Service Manager itself, when before problems could arise like the MEM repository running out of disk space. A workaround was to install an Agent on the MEM host itself, and monitor it. (Bug #11759652)
Changing a data collection item variable from within a scheduled Rule would cause MySQL Enterprise Monitor to emit an error. A workaround was to unschedule the rule before editing it. (Bug #11762748)
The MySQL Enterprise Service Manager installer default changed from "127.0.0.1" to "localhost" for the bundled MySQL server repository, as to allow negotiation of IPv6 or IPv4 at the OS layer.
Upgraded the bundled Tomcat Native and APR applications.
On FreeBSD, the Agent installer does not bundle the newly required Java 7 JRE. Therefore, FreeBSD users must install the Java 7 JRE before the Agent can be installed.
On Microsoft Windows, 32-bit versions of Windows now use the
jvm.dll rather than the server
Running an upgrade will overwrite local changes to
setenv.sh, as this file is replaced and
optimized for MySQL Enterprise Monitor 3.0 during an upgrade.
The supported MySQL server versions for monitoring by MySQL Enterprise Service Manager was changed from 4.1+ to 5.1+. Versions prior to 5.1 reached EOL status at the time of this release.
The supported browsers changed, mainly due to the new requirement of SVG support. The updated browser requirements include Chrome 22+, Firefox 17+, IE 9+, and Safari 5+.
Previously, the supported browsers were Chrome 4+, Firefox 3.0+, IE 7+, and Safari 3.2+.
--agent-run-os-tests option was rewritten and
merged into the new
--run-collection-tests discovers and outputs
information for each Asset that an Agent is aware of to
STDOUT. This may include the OS, UUID,
hostname, reachable status, timestamp, (Agent) version, users
(limitedUser, generalUser, superUser), and the MySQL
If a MySQL Server is restarted between the time MySQL Enterprise Monitor samples its status, then this unreachable state was not reported. The uptime is now checked, and reported.
The Delete Group option was removed from the Replication dashboard, because Replication groups cannot be deleted.
The Replication Status Advisor was rewritten to trigger just one event after discovering an error. Before it would generate several, which was considered too noisy.