MarkLogic recommends that all production servers be monitored for system health.
For production MarkLogic Server clusters, the system monitoring solution should include the following features:
- Enable monitoring history, which will allows for the capture and viewing of critical performance data from your cluster. You can learn more about the Monitoring History features by following this link: http://docs.marklogic.com/guide/monitoring/history
- Monitor processes that are running on the system
- Monitor RAM & swap space utilization.
- Monitor I/O device service time, wait time, and queue size; any of these could be indications that the storage system is underpowered or poorly configured.
- Monitor the network for signs of problems that impact application performance. A misconfigured or poorly performing network can have drastic impacts on the performance of an application running on MarkLogic Server.
- MarkLogic Error logs should be constantly monitored (and notifications sent) for the following keywords: 'exception', 'SVC-', 'XDMP-', & 'start'; Over time, you may want to refine the keywords, but these may indicate that something is wrong.
- Log-file messages should also be monitored based on message level, see Understanding the Log Levels. It's good practice to investigate and resolve important messages promptly.
- Switch to debug level logging. Not only will this provide additional information for you to monitor system health, but will also provide additional information to analyze in the event a problem does occur.
- Monitor forest sizes - in particular the ratio of forest size to total available disk size (see Memory, Disk Space, and Swap Space Requirements). Alarms should sound if the forest sizes increases significantly beyond target available disk space.
- Ensure that the server time is synchronized across all the hosts in the cluster. For example: Use NTP to manage system time across the cluster.
- Monitor for host “hot spots.” Uneven host workload could be a symptom that there is an uneven distribution of data across the hosts which may result in performance issues.
MarkLogic Server provides a rich set of monitoring features that include a pre-configured monitoring dashboard, and a Management API that allows you to integrate MarkLogic Server with existing monitoring applications or create your own custom monitoring applications.
For additional information regarding the monitoring support in MarkLogic, Please refer to the Monitoring MarkLogic Guide available on the MarkLogic developer website.