4.1.3 Overview of Rule Creation

You create rules using the same screen seen in Figure 2.5, “MySQL Enterprise Monitor User Interface: Editing Rules”. To create a new rule with all-new settings, click the create rule button. To create a rule similar to an existing one, click the copy rule button. You can edit any rule element during the copying process, unlike editing an existing rule.

You can change the rule name, change the advisor group that a rule belongs to, and set your own version number. In Figure 2.5, “MySQL Enterprise Monitor User Interface: Editing Rules”, you have already seen how to alter the threshold and frequency of a rule.


If you do not specify a version number for the new rule, the version 1.0 is automatically added.

Most importantly, you can alter a rule's expression. Expressions are the core of a MySQL Enterprise Advisors and define the scenario being monitored. An expression can be as simple as a single server parameter or can be complex, combining multiple parameters with mathematical operations.

An expression has two main characteristics:

  • An expression tests whether a best practice is being violated.

  • The result of an expression must always be 1 or 0 (corresponding to true or false).

If an expression evaluates to true for a specific server, an alarm is raised, indicating that a best practice is not being followed. If an expression evaluates to false, the best practice is being followed and no alarm is raised.

For example, if you decide that enabling binary logging is a best practice for a production server (as Oracle recommends), then this best practice is violated if log_bin is OFF. Consequently, the expression for the Binary Logging Not Enabled rule is %log_bin% == OFF. If this evaluates to 1, an alarm is raised because the best practice is not being followed.

An expression is made up of one or more variables and zero or more mathematical operators. The MySQL Enterprise Monitor product uses the Java Expression Parser. The operators and functions consist of:

  • The IN() operator.

  • The MySQL functions LEAST(), LOCATE(), ABS(), MOD(), NOW() (returns time since UNIX epoch UTC in seconds), UNIX_TIMESTAMP (technically a no-op), and INTERVAL [n] SECOND, MINUTE, HOUR, WEEK, MONTH.

  • The operators functions listed on this page: http://www.singularsys.com/jep/doc/html/operators.html.

  • Comparisons with MySQL timestamps and datetimes collected by the agent in the standard MySQL format 'YYYY-MM-DD hh:mm:ss[.nanos]'.

  • The IF function: IF (condition, true_expression, false_expression) returns either true_expression or false_expression, depending on whether condition is true or false. This function uses short-circuit evaluation, so only one of the return expressions is evaluated.

  • The LEFT(string, length) and RIGHT(string, length) functions.

  • The NUM(string) function.


    The CAST(expression as type) function is not implemented. Instead, use NUM(string) to use strings as numbers.

  • Other functions and operators may be implemented as needed to assist with custom rule creation. Open a service request if you have such a requirement.

For a complete list of the built-in variables used to create rules, see Server Option and Variable Reference.

Creating an expression is dependent on variables defined in the Variable Assignment frame. This frame links variables used in the expression field with data gathered from the target MySQL server instance: server status variables, operating system status information, and table information. Variable names are associated with elements in the Data Item drop-down list. To define more than one variable, click the add row button. For a complete listing of the data collection items used in creating rules, see Appendix D, Data Collection Items.

The remaining fields determine the information that you receive in a notification email or the informational pop-up window associated with each advisor.


When saving a new rule, choose a unique name not used by any existing rule.

Download this Manual
PDF (US Ltr) - 4.0Mb
PDF (A4) - 4.0Mb
EPUB - 3.2Mb
HTML Download (TGZ) - 3.1Mb
HTML Download (Zip) - 3.1Mb
User Comments
Sign Up Login You must be logged in to post a comment.