Wilco van Bragt - LinkeIn Wilco van Bragt - Twitter rssa 


While Citrix Resource Manager was not perfect in earlier version of Citrix Presentation Server, many Citrix administrators are missing its functionality in the latest releases. From XenApp 5 for Windows 2008 Citrix removed Resource Manager and embedded its functionality in EdgeSight, their more advanced monitoring product. Although EdgeSight is a good product, it has a high learning curve and needs more configurations than Resource Manager. In large enterprises (where the default monitoring tools gives too much information) as well as in small companies (where Resource Manager was the only monitoring tool available), Resource Manager was used a lot. In both situations, EdgeSight is quite often not implemented because it needs additional hardware and software to be installed.

It is exactly this monitoring gap that Smart-X is aiming to fill with its product called ControlUp. Monitoring, however, is not the only feature the product offers. Much more functionality is available in the product, which fits perfectly in RDS/Citrix infrastructures, but can also be applied to any Windows server or VDI farm.

In this review we will take a look at some of Control-Up features.




The first thing that is pretty remarkable is the installation process, because actually there isn't one. The product consists of a single executable, which runs completely standalone. The only prerequisite is the availability of .Net Framework 3.5 and the Active Directory domain membership. Because it's a standalone product, everything is loaded into RAM, so it's possible that memory consumption can go up to several gigabytes in very large infrastructures.

The first time you start the executable you need to activate the product.

Figure 1: ControlUP Registration Process

By default, the machine on which you are running the console should be connected to the Internet; however, an offline registration option is also available. The advantage of running ControlUp with an online connection is that the product sees that more people are running the tool out of the same domain and the same organization can be shared. Currently the whole configuration is not shared, but this is on the roadmap, and according to Smart-X the ability to share the same configuration is planned for release during 2012. You should also agree to the EULA during the product registration.


After these first steps, the Add Computers Wizard is started where you can add computers and servers to your managed environment. Control-Up offers two types of agent installations. The first one is called ‘temporary mode', where the agents will not be installed permanently on the managed computers. Every time the console is started, the agents will be deployed seamlessly, which can take a few seconds. The second option is the 'Installed agent mode', whereby the agent software will be installed as a Windows service on the remote hosts. Future management connections to these machines will be faster than in the temporary mode.  

Figure 2: Adding machines for management with ControlUp

It's also possible to create folders within the console to organize the managed hosts in a logical order.

ControlUp in action

As mentioned in the introduction the product has two targets, showing current resource usages and other administrative tasks.

Let's start with the monitoring part. The console includes five information views.

- Computers

In this view you see all managed hosts, showing current values of several parameters. You can adjust the view with the Select Columns option. There are several columns available, including information about the machine (operating system, system type, CPU, Memory, OS Service Pack, Manufacturer, Model and so on), resource usage (CPU, Memory Utilization, Disk Queue, Free Disk Space, Page Faults) and the sums of user sessions, processes, Active Sessions and Disconnected Sessions.

- Sessions

Sessions shows "normal" user accounts, providing lots of information. Again the data can be divided in three categories: user information (machine, connect/disconnect time, state, idle time, client IP, client name and logon name), resource usage (CPU, Memory, Page Faults) and the sums of running processes.

Figure 3: Available Views and overview of monitoring capabilities

- Processes

The most detailed view is the processes view. This view list all processes and shows lots of information about the processes. Examples are: command line, product name, product version, CPU usage, Page Faults, Memory usage, started by users, session ID, PID, machine, start/exit/created/modified time and priority.

- Accounts

Basically, this is an aggregated view of resources consumed by different user accounts. Beside the user sessions here also the local and NT authority users are shown. From all agents the values are counted and shown like CPU, Page Fault, Memory, sum of machines.

- Executables

Similar to the Processes View, only this time all of the processes in your managed environment are aggregated by the name of the process. On all the agents (within the view) the total CPU, Page Fault, Memory and sum of machines the executable is running on.

In the latest version Smart-X introduced a new feature called Stress Level. The stress level is calculated of the current values of performance counters available in that specific view. It's a quick indicator of the current status of that object.

Personally, I find it a pity you can't add additional performance counters into the views. I would like to monitor some more performance counters like network queues, committed bytes and so on. After contact with Smart-X about this feature they said that this feature is on the roadmap.

When selecting one of the views you can access the "other" actions available for that view. Actions can be accessed via the actions button in the menu or by selecting the agent and then use the right mouse button. Actions are only available in the Machines, Sessions, Processes and Accounts views. I will discuss the actions available per view. Some of the actions are available in more views or can be called from other places in the product.

Figure 4: Available Computer Actions

Let's start with the Computer View Actions.

The Registry actions are available as a separate window in the console, known as the Registry Controller. The real power of the Registry Controller is the possibility to add more registry hives (in case of machine HKEY_LOCAL_MACHINE) logically. These different machines registries are compared and shown with different colors keys and/or values. Secondly, you can perform registry tasks on multiple machines at once. Available actions are 'Add key/value', 'Delete key/value', 'Rename key/value', 'Change value data', 'Copy/Move key' and 'Copy/Move value'.

Figure 5: Registry Controller

Next are the Services actions. These are also available as a separate Controller. Like the other Controllers you can compare service availability and settings of services on multiple machines simultaneously. Secondly, you can perform actions on the services such as stopping, starting, restarting, pausing and modifying properties.

Figure 6: Services Controller

The next action available is Remote Desktop. Yes, the product offers Remote Desktop functionalities, which are also available as a separate menu in the left pane. So ControlUp is also a Remote Desktop Management product.

The next set of actions - Terminal Services, is specific for RDS and Citrix XenApp servers. You can send a plain text messages via Send Message or rich text messages via Send Super Message. This is normally done to sessions, so when initiated from the Machines view this action will send a message to all users connected on the selected servers. I will go a bit more into detail about these actions when I get to the Session Actions.

Next on the menu is the Power Management set of actions which offer the possibility to reboot or shutdown the selected server.

When you have made changes to Refresh Machine Group Policy and you would like to prorogate these changes immediately to several machines you can use Refresh Machine Group Policy actions available under the Group Policy set if actions.

Under Files you can copy, delete and rename files and/or folders on multiple machines (as shown in figure 4). The Files actions are also available as a separate window in the console known as the File System Controller. The File System Controller offers the same actions like copy, delete and rename, but a bit more advanced by performing these actions on all selected machines. Also, within the File System Controller you can compare between file systems on different servers easily, using color codes which help you identify the differences (see the legend for the explanation of these colors).

Under Processes, currently there is one action available called RunAs. As the name implies, you can start a task on the selected machine(s) with specific privileges.

Under 'Process Execution' there are really powerful actions with which you can control process execution. You can temporary disable any executable using the option Disable Process Execution. It is possible to configure a message that will be displayed to the user when they try to start any blocked executable. This can be useful in the case of maintenance or an upgrade of an application is required. With Enable Process Execution you can enable the specific executable again or, in case more executables are blocked, release them all.

The Agent Control set of actions allow you to manage the ControlUp agents; this part is specific for the ControlUp product.

Continuing with Session View Actions now, these offer some cool functionality.

The first action shown in the actions menu - The Get Session Screenshot is one of my favorites. As the name stated you can take a screenshot of the user session without shadowing the session. You have the option to take the screen with notifying the user, request approval of the user or without a notification. If your organization's privacy policy requires the users' permission to see their activity, ControlUp allows you to enforce the need for user approval for the entire organization.

Figure 7: Session Actions

Remote Assistance action can be used for shadowing the user in a non RDS or Citrix session.

There is also a possibility to start a chat session with the user via the Chat action.

Within the Terminal Services set of actions, well-known RDS/Citrix options are available like Logoff Session, Shadow Session, Disconnect Session and Send Message. The Send Super Message is also a really useful option. It offers the possibility to send formatted text and graphics with advanced options like a message time out, displaying the message on top and the possibility to get a user response on the message.

Figure 8: The Super Message feature

The Group Policy set of actions is again a killer feature. With it you have the possibility to remove the user policies out of the current session for troubleshooting purposes. I think this is a really useful action. When you are done with troubleshooting, you can apply the policy again with Reapply Group Policy button. Also, recent changes to the user Group Policy can be applied immediately using the Refresh User Group Policy action.

The next set of actions should already be familiar to you from the Computer view. The files set of actions offers exactly the same actions as in Computer view. The same can be reflected to Registry set of actions. This component also offers the same Registry Controller with the same options, but then only for the User Registry (HKEY_CURRENT_USER) settings. You can compare different user registry configurations and manage the user registry for multiple users at once. It's worth noting that built-in Windows tools do not offer a convenient method of connecting to a currently-logged-on user's HKCU hive, so ControlUp comes as a big help here.

The Processes set of actions is also a nice one. With the action Start Process in Session you can start any executable in the user session. Use cases are troubleshooting issues, where the user cannot find or start an application.

Within the Processes View an Action Menu is available as well. This Action Menu offers the following actions.

The "Get Session Screenshot" action is already described in the Sessions View Action Menu and is providing the same functionality.

In the processes set of actions three actions are available for ending/killing the chosen process, where the way the process is ended is the difference between the actions.

The last action is Go To Session, which will move the view to the User Session view, where the user which is running the process selected in the Processes View is selected.

Figure 9: Processes Action Menu

The Accounts View is similar to the Sessions view, except for the fact that all resources currently in use by a user are grouped in a single row, which can be useful for analysis and planning purposes. The Actions Menu in the Accounts View offers a limited set of actions which are also available within the Session View Actions Menu. Actions available are the Terminal Services related actions and the Group Policy related actions as well as the Registry Controller shortcut.

We now have gone through the options within the My Organization pane out of the left menu. This menu is also offering some more panes. The second pane is called Remote Desktop. As stated earlier in Computers View Actions Menu, the product also offers a full Remote Desktop Management suite. The logical view is inherited from the Computers View. Remote Desktop settings can be both configured on a folder level or machine level (and inherited to the below object in that view). Unfortunately, the configuration is not yet shared between different users, but just as with the whole configuration, you can copy the configuration file (ControlUp.xml) from one machine to another. According to Smart-X, configuration sharing is planned for future releases of ControlUp.

Figure 10: Remote Desktop within ControlUP

Also a very nice feature is the Events Tab. This tab collects the event messages from the Event Viewers of the agents, which have a warning or error state. The messages can be searched, grouped or sorted by the columns shown. I'm sure many administrators would like to use this part to quickly survey the event logs of their servers. Another cool feature is the ability to search for event details on the Web, which can save more than a few clicks to an administrator currently researching a system issue.

Figure 11: Events within ControlUP

In the latest version of ControlUp Smart-X introduced a new feature called Notifications. This option can be configured in the Office-styled "ball" menu in the upper left corner.

Figure 12: ControlUp Notification Settings

With this notification feature, you can minimize ControlUp to the system tray and balloon notifications will be displayed when resources such as computers, sessions and processes reach a configured stress level. The notifications are based on the stress level option with customizable thresholds.

Actions History

The last topic I'm going to cover is the Action History tab. This tab is showing the activities performed in ControlUp. So if I, for example, performed an action in the registry it is logged into this component, along with the success/failure result and an option to re-run the action if needed. Unfortunately the way it's shown is bit cryptic, so you can't see exactly what is done. I would love to see administrator Wilco has added registry key TEST to HKLM\Software on server TS1, TS3 and TS4 for example.


When you see the first screenshots you think ControlUp is a nice but relatively small monitor product. Although I love the idea of the monitor functionality of ControlUp, I would really like it to display more information, so adding custom performance counters in the monitor views is on the top of my wish list. Also I hope Smart-X will add a possibility to really log the monitor data, so you can use the collected data for trend analysis and troubleshooting purposes.

However, if you dive a bit deeper into the product, you will discover it to be much more than a monitoring product. It offers a good Remote Desktop Manager component and advanced Event Viewer features. But most of all it offers very useful actions, some of which are really killer features. At the moment, this part is the real power of ControlUp and I think many organizations can benefit from it.


  • Product has several good features available, not seen in other products like Get Session Screenshot, Super Message and the Group Policy features.
  • Besides basic monitoring and all the actions the product also offers a (shared) Remote Desktop Management Suite.
  • Collecting warning and error log events from the agent on a central location.


  • The counters that are monitored are a bit limited, I would love to add additional performance counters.
  • The data is real-time; there is no possibility to store the information for analytics.
  • You should read the Privacy Policy carefully before using the online connection (Smart-X offers an offline possibility for sensitive environments).

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.

About Smart-X

Smart-X Software Solutions Ltd. develops and markets innovative software solutions that solve some of the most complex and common problems faced by System Administrators. Smart-X was established in 2009, by a team of IT experts who have been active in the field of Server Based Computing and System Administration for more than a decade. With products which are used by thousands of companies around the world, Smart-X helps IT professionals efficiently manage, optimize and improve IT systems performance in every industry.


PDF Review ControlUp