Documentation Home
MySQL Enterprise Monitor 8.0 Manual
Related Documentation Download this Manual
PDF (US Ltr) - 6.0Mb
PDF (A4) - 6.0Mb


6.10 Troubleshooting the Agent

The first step in troubleshooting the agent is finding out whether it is running or not. To do this see:

Some additional tips are:

  • To run on start-up, the agent requires correct login credentials for the monitored MySQL server. Log in to the monitored MySQL server and check the agent's credentials. Compare the values of the Host, and User fields in the mysql.user table with the values shown in the etc/agentManaged/mysqlConnection<id>/bean/json file. The passwords are encrypted so they can not be manually managed here, but the password can be altered from the MySQL Instances page in the MySQL Enterprise Monitor User Interface, or by using the agent connection tool (agent.sh) from the command line.

  • Using incorrect credentials for logging in to the service manager creates an entry in the agent log file.

  • An easy way to confirm that the agent can log in to the service manager is to type https://Monitor_UI_Host:18443/heartbeat into the address bar of your web browser, substituting the appropriate host name and port. When the HTTP authentication dialog box opens, enter the agent user name and password. The following message indicates a successful login:

    <exceptions>
    <error>E0401: NullAgentPayloadException: []</error>
    </exceptions>
    Note

    Despite the fact that the preceding listing shows an error, you have logged in successfully. This error appears because you have logged in but with no payload.

    If you can log in successfully in the way described above and the agent is running, then there may be errors in Agent's configuration. Compare the host name, port, agent name, and password used in MySQL Enterprise Monitor User Interface, and also check it using agent.sh, with the values you entered into the address bar of your web browser.

  • If HTTP authentication fails, you may be using incorrect credentials for the agent. Attempting to log in to the service manager using incorrect credentials creates an entry in the agent log file.

    If no HTTP authentication dialog box is displayed, and you are unable to connect, the host name or port number might be specified incorrectly. Confirm the values you entered against those described as the Application hostname and port: in the configuration_report.txt. Failure to connect could also indicate that the port is blocked on the machine hosting MySQL Enterprise Service Manager.

  • To check if a blocked port is the problem, check your firewall's configuration for that port number. Open the port specified during installation and restart the agent. If necessary you can monitor outside the firewall using an SSH tunnel. For more information, see Section 6.8, “Monitoring Outside the Firewall with an SSH Tunnel”.

  • Running the agent from the command line sometimes displays errors that fail to appear in the log file or on the screen when the agent is started from a menu option. To start the agent from the command line see the instructions given at the start of this section.

  • If you have more than one agent running on the same machine, the UUID must be unique.

  • If the agent and the MySQL server it is monitoring are running on different machines, ensure that the correct host is specified for the agent account. The correct port, typically 3306, must also be open for remote login. For more information about remote monitoring see, Section 6.7, “Configuring an Agent to Monitor a Remote MySQL Server”.

  • On MySQL 5.5, or earlier, MySQL Enterprise Monitor Agent and MySQL Enterprise Service Manager use the unique host ID, stored within the mysql.inventory table on the monitored MySQL Server, to determine whether the instance being monitored is a clone. The host ID of the current server is checked against the stored value when the agent starts. If the generated host ID and stored host ID do not match, you get an error similar to the following in the agent log file:

    %s: [%s] the hostid from mysql.inventory doesn't match our agent's host-id (%s != %s)
    We assume that this is a cloned host and shutdown now.
    Please TRUNCATE TABLE mysql.inventory on this mysql-instance and restart the agent.
    If this is a master for replication, please also run SET SQL_LOG_BIN = 0; first.

    To fix the problem, connect to the MySQL server using the credentials configured when you installed the agent, and then truncate the mysql.inventory table:

    mysql> TRUNCATE mysql.inventory;

    Now restart the agent, which recreates the mysql.inventory table with the updated instance UUID and hostid information.