- Published: Wednesday, 08 June 2016
In an earlier article series (“Selecting a Monitor Solution for SBC/VDI Infrastructures”), I discussed the monitor solutions market for SBC/VDI environments. One of the main takeaways was that monitoring is becoming more and more important within organizations. This was already recognized for back-end infrastructures, but now also front-end infrastructure (which is key to accessing the back-end) monitoring is higher on the list at many organizations. Within the monitoring market, a large number of vendors are active, all with their own perspective on monitoring. Monitoring goes from showing real-time information to giving insight in historical reports about the environment. A product that both offers real-time and reports is Acceleratio SysKit (formerly known as Terminal Services Log), which focuses on SBC infrastructure. In this review, I’m going to take a look at this product.
SysKit focuses on monitoring RDS infrastructures by actually monitoring the host that is hosting the user sessions. No specific monitoring is available (or required) on Delivery Controllers, Web Interface, and so on. The product differs from other monitoring solutions in that on monitored machines, no agent is required; all the information is gathered using default APIs and/or WMI queries. This makes it really easy to add the product into the infrastructure. You only need an SQL database (in which all data is stored) and one server to host the SysKit service that acquires all the information from the monitored computers. If you have multiple data centers or require a high available solutions, an additional machine can be added that will also host the SysKit service. Currently, this is not available from the installer (Acceleratio will help you set up such infrastructure), but it is planned for an upcoming version. The information is stored in the database via the service. By default, the data is stored forever, but timeframes are configurable within the product.
SysKit has three pillars that are monitored: the performance of the computer, the users, and applications. Let’s start with the installation of the product.
From the website, you can download the two installation options: a web installer and a full install. The Web Installer is a small download of 30MB. During the installation, the required software will be downloaded directly from the Internet. When the machines you are installing the software on don’t have access to the Internet, a full installation download is available as well.
Regardless of which version you have the installation steps from the GUI are basically the same. From this installation file, you can install the two components: SysKit Desktop Application and the Web Application. SysKit requires a service account that is local admin on the systems monitored by SysKit. Syskit uses a Microsoft SQL database to store data. .NET Framework 4.5.2 is required, which if not already on the system can be automatically installed by the SysKit installation.
The installation is pretty straightforward. Like in most installations, we start with accepting the license agreement.
Figure 1: SysKit installation
The installation can install two components: the SysKit Desktop Application (SysKit for short) and the SysKit Web Application (WEB UI over IIS). By default, only the SysKit option is selected. After selecting the SysKit Web Application, a web-based GUI becomes available for using the SysKit product. Logically, this needs to be installed on the back-end server, where the Desktop Application can be installed. All the logic is available in the database so you can migrate the application from server to server.
After selecting the components, some default questions are shown, such as the destination folder and the program folder for the application shortcut(s).
As mentioned, SysKit stores the data in a Microsoft SQL database. During the installation, you are asked if you would like to add an existing SQL server or if the installation needs to install an SQL Express edition on the machine you are executing the installation process on.
Figure 2: SQL installation options
After this selecting process, the actual installation starts. At the end of the installation, an option to directly start the SysKit Configuration Wizard will be offered.
After the first installation, it’s time to run the Configuration Wizard. This can be started directly at the end of the installation by using the shortcut in the Start menu. The Configuration Wizard starts with asking if you would like to connect to an existing database or create a new database. Logically, the option for a new database is used for creating the SysKit environment. The next steps are specifying the SQL server and the name of the database (it will be created by the wizard), and the type of authentication for the SQL database. Next, specify the service account that will be used by the product on the SysKit agents.
If you also installed the Web Application, options are offered for creating or using an existing application pool and creating or using an existing website.
Figure 3: SysKit Configuration Wizard
After specifying those settings, the actual configuration is executed, creating the database, the Web Application, and so on. When the configuration is done, one more question is asked about participating in the Customer Experience Improvement Program. The wizard also offers to start the application directly.
When you start the application the first time, you will be asked if you need help configuring SysKit. This option executes a quick walkthrough of the product and gives a nice overview of how to start with the product.
Figure 4: SysKit Desktop Application initial startup
The first step is to add the machines you want to add for monitoring. This option is available under the Administration component, but is also shown at the initial start. Via a simple wizard, the computers are added. A cool thing within SysKit is the ability to add computers from multiple domains even if the domains are not in the same forest or even trusted at all. Within the configuration options, you can add every domain and specify a user of that domain, who will be used to access those machines. That’s enough to start collecting the data for the reports.
Figure 5: Adding computers to monitor
Besides adding the machines and optional Active Directory domains, you need to configure a mail server if you want to use one of the interesting features of SysKit (which I’ll mention later on). Some more configuration options are available in the Options section to set up the product according to your needs (e.g., Data Retention).
As mentioned earlier, the product consists of a Desktop Application and a Web Application, where the configuration is done within the Desktop Application. Within the Desktop Application, the starting point is the Dashboard. The Dashboard contains a set of overview dashboards of the pillars in the product. The Session Dashboard offers three different views based on users’ data, one Application Dashboard, and a License Dashboard. Finally, there is one general Overview dashboard. The Dashboard views show real-time or the last few hours only. Within the Dashboard, you can add additional dashboards, which will be available within My Dashboards.
Figure 6: Dashboard overview
Besides the Dashboard option, SysKit has a large number of reports available that are grouped per subject. The first group of reports are User Reports. Within User Reports, a large set of reports are available, so it’s almost impossible to discuss each report individually. I will mention a set of reports that I found most useful/valuable:
Session Log Summary: shows the time a user has a running session, including the state of the session (active, idle, disconnected)*.
User Count per day: the number of user sessions specified per day*.
Network Traffic Reports: there are several reports based on different points of view. Provides great insight into the network usage, which is not found in many other products.
Concurrent Usage reports: can be used to verify the actual usage versus the purchased licenses.
Client Versions: shows which Citrix clients are being used to access the infrastructure.
User Activity by Group/OU: one of the nicest reports, in my opinion. An overview of user activities based on group and/or OU membership.
* Within Detailed Reports and Session Counts, more detailed information is shown about the Session Log Summary and User Count per day reports. This will be used if the reports show unexpected figures.
Figure 7: User Reports
The second component is the Application Reports, which also offers a nice set of reports. I will mention my favorites:
Most Used Applications: a quick overview of the most used application on the Citrix VDAs.
Users per Application: the number of users per application that have run the application.
Application Usage Summary: provides an overview of instances running per application.
Concurrent Apps by User: Nice overview to find the users that run the most applications.
Figure 8: Application Reports
The third component is the Performance tab. It starts with well-known performance charts of machine resources like CPU, Memory, Disk, and Network. There are views for each resource, and an overall view as well. Also available on the Performance tab is Application Performance. These reports provide interesting views of the resource usage per application. With these views, you can easily find which application is consuming the machine resources. The last view provides an overview of the resource usage for each user.
Figure 9: Performance Reports
SysKit can also be used to monitor licenses for applications. Within the product, you define the licensing methods and the number of licenses available. SysKit will then monitor the actual usage and show the information in a different set of reports. For example, License Compliance provides an overview of the licenses assigned and actually used. It can also combine applications in suites, such as Microsoft Office. Besides applications, SysKit can also monitor the usage of Citrix and RDS licenses.
Figure 10: License Reports
The last report component is Event Log Reports. SysKit offers the possibility of letting it check the Event Logs for specific events. Currently, the following reports are available: Logon Audit, Restart Log, System Uptime, File Access, and Blocked IP Addresses.
Figure 11: Event Log Reports
Also nice within SysKit is the possibility of creating custom reports. Within the same table, you can create your own reports. If you would like to have a report that uses multiple tables, SysKit can set those up for you on request.
Figure 12: Custom Reports
The last component available is Inventory. For Inventory, you need to enable snapshots. With the snapshot, a full inventory will be run periodically on the machines. This provides information about the machines, such as the CPUs, memory, disks, installed applications, updates, and so on. When you have multiple snapshots, you can compare snapshots of one machine to see if changes are made to the machine or compare different machines against each other.
Figure 13: Inventory
One of the great features within SysKit is that all of the reports can be created periodically, and you can also distribute them at a scheduled time. It’s nice that you can create subscriptions, where you can define which reports will be sent for each subscription, including a schedule per subscription.
Figure 14: Manage Subscriptions
During the installation, we also installed the Web Application. With the Web Application, you can provide access to the reports to other users without providing the Desktop Application. The Web Application does not offer configuration options, but all reports are available. Personally, I really like this option to provide report access easily. The only option that would be cool to have is one to create custom reports from the Web Application as well.
Figure 15: SysKit Web Application
In my opinion, SysKit is a product that you use to provide more insight into your Citrix infrastructure, as the main purpose. Those insights are based on data that you do not respond directly on but use for planning and strategic purposes. However, SysKit can also be used for reactive system administration by using alerting on performance counters. SysKit offers the possibility of enabling alerting based on defined values for warnings and critical thresholds on those performance counters. Here also, SysKit shows that this part is used for other servers as well, as it provides templates with performance counters for different server roles. The thresholds are configured within Inventory, while enabling Altering is part of the Options menu.
Figure 16: Configuring Alerting Thresholds
SysKit is an easy-to-implement product, as it only requires a database and a service to run. No agents are required on the system you would like to be monitored. All data is gathered using APIs and WMI. SysKit aims to provide insight into your XenApp infrastructure via easy and useful reports that are based on user activity and application access. Several reports provide great insights. Besides its reporting functionality, SysKit also offers the possibility of doing real-time monitoring based on thresholds and corresponding alerting.
About the Author
Wilco van Bragt is an independent consultant and author based in the Netherlands. He is the owner of the Server Based Computing and Virtualization website called VanBragt.Net Virtualization, where he is publishing several articles related to Virtualization topics and product reviews. Besides Wilco van Bragt presents on several independent conferences and also writes articles for several other websites. Wilco van Bragt is self employed (VanBragt.Net Consultancy) providing consultancy services in the Netherlands and Belgium. Wilco van Bragt is a MVP on Remote Desktop Services, a RES Valuable Professional and a Citrix Technology Professional.
Acceleratio Ltd. is a software development company specializing in creating high-quality enterprise monitoring and administration solutions for SharePoint, Office 365, Windows Servers, Remote Desktop Services, and Citrix admins and consultants across the globe. The company was founded in 2009 in Zagreb, Croatia. Acceleratio Ltd. has developed several innovative software products, such as SysKit, SPDocKit and CloudKit 365. These products are used on thousands of servers in more than 50 countries worldwide