Enterprise Monitoring of Tableau Server with Zabbix

Version 1

    Tableau is one of the leaders in Visualization and Data analytics as stated by Gartner for third consecutive year in “Magic Quadrant for Business Intelligence & Analytics Platforms”. Tableau server is an offering that holds the worksheets and enables users to seemingly do analysis with just the browser, connecting to various data sources to present elegant visualizations and Kerberos support for Active directory. It is indeed an IT service and in most enterprise installed and managed by IT department.

     

    There are lot of ways to monitor Tableau server, from the status provided by the tableau to third party custom scripts that get you the job done. But integrating it as part of IT Enterprise require more than that, less downtime and proactive monitoring makes it all the more effective. In this blog we will see how we can use Zabbix, an Enterprise monitoring platform to effectively monitor tableau server.

     

    Setting up the Zabbix Server and host agent

    Zabbix server comes with its own host agent which is installed on the host and used for monitoring and executing remove commands. If you are already running Zabbix as part of your IT monitoring stack, you can follow along to see how tableau can be monitored with it. For those who are new to Zabbix, you can refer to the documentation https://www.zabbix.com/documentation/2.4/ to learn about Zabbix and set it up in your Enterprise.

    After you have installed host agent in your Tableau server host and configured it to communicate with the Zabbix server, make sure you enable the remote command execution. You can set the following in your Zabbix configuration file to enable it.

    Setting up Host groups

    The first step is to setup Host group in Zabbix. Host group consists of the hosts in which Tableau server run. If you are having multiple tableau server in clusters, you need to install zabbix agent to them and add each host to this host group.

    Navigate to the Configuration menu and select the Host group section, click on the Create host group button.

    Give a meaning full host name like Tableau server and add the necessary host into this group from the list of host shown, click on Save to save the host group with the added host. You can then set monitoring to this host group.

    Importing the Tableau Monitoring Template

    For easy setup, I am attaching the Tableau Zabbix Template I made along with this. You can download the template attached with this blog. Import this Template into zabbix by navigating to Configuration->Templates and click on import button on the right

    Browse for the template and click on import to get the Template and all the necessary monitoring configuration along with it.

    Browse for the template and click on import to get the Template and all the necessary monitoring configuration along with it.

    Note
    The Template is given as is. Please setup in some sandbox before you deploy to production. This template will be enhanced over time and published with more features and metrics

     

    Linking Template to the Host group

    After you import the Template, next step is to link it to the Tableau Server Host group. Navigate to Configuration->Templates and select the Tableau Server Monitor Template that was imported.

    Add the Tableau Server group into this Template and click on Save to attach the Template to the group.

     

    Additional Monitoring

    Zabbix comes with the predefined Template for Windows Server which provides lot of useful metric related to Windows Server which we can leverage for monitoring Tableau Server. Navigate to the Templates section and select Template OS Windows and add the Tableau Server group into this template

    Measuring the metrics

    You can check out all the Graph defined on the Templates by Navigating to Monitoring->Graph and Select the graph required from the Template Group to view them

    Here are some of interesting metrics.

     

    Figure 1 – Tableau Process uptime

    Figure 2 – Tableau Server Availability

    Figure 3 – Tableau Server CPU load

    Figure 4 – Tableau Process Memory usage

     

    Tableau can now be integrated perfectly into the IT monitoring system and monitored. If you have any specific monitoring of Tableau Server, be sure to mention in the comments.