Advisory · Projects · Speaking LinkedIn GitHub Credly IT EN

Automation and AI · PowerShell

AppUserList v2.2 – Application User List

Here it is, after a few weeks: a new version of AppUserList, v2.2.

For those of you who are new to AppUserList, this tool was developed to make it easy to monitor the applications installed on Citrix Desktops (but it doesn’t depend on Citrix itself…it can run anywhere) and to show which applications are actually used by users and how many times over time. Its main purpose is to help system administrators understand the real usage of the software packages installed on the desktops, so they can assess which ones are actually needed and in use by the users.

AppUserList is made up of 3 components:

  • AULMonitor: the central database where AULService writes and from which AULReport reads the data to generate the reports;
  • AULService: the agent running on the machines to be monitored, which intercepts the executables launched by users and sends the information to AULMonitor;
  • AULReport: the tool dedicated to generating reports; the heart of the application.

New installations can be done directly with the components included in this release; for upgrades from versions earlier than v2.0, I’m available to help you upgrade the AULMonitor DB. Some releases introduced changes to the DB. These changes have to be applied by hand, since there is no automatic upgrade procedure for the tables and views in AULMonitor.

In this release I especially optimized the AULReport component, adding the option to activate the tool with a license file. Previously AULReport had to be activated individually on every machine it was installed on, which caused a bit of trouble when running it on machines provisioned with Citrix MCS or PVS (where, obviously, the hostname of the “child” machines differs from the master machine).

So I decided to add the option to activate with a license file; this option doesn’t depend on the machine’s hostname, so it lets you activate during installation on the master and doesn’t require reactivation on the “children”. A single license file can also be reused across different environments, but always paired with the same email address.

To activate with a license file, follow these steps:

  • Install AULReport from the AULReport.msi package
  • When you start AULReport, you’ll see this screen:
  • Fill in the Mail field with your email address;
  • Select the “Hostname independent” tab;
  • Click “Generate” to get the “LicPreKey” code:
  • Open the activation page
  • On the website, enter the same email address you used in the application and paste the LicPreKey code you just generated;
  • Click “Generate activation code”;
  • The page shows the activation code, which is also sent by email to the address you entered;
  • Open Notepad (or any other application you prefer) and create a file named AULReport.lic, then paste the code you just generated into it (without adding any other characters);
  • Save the file in the C:\AULReport\ folder on the machine where you are running AULReport (create the folder if it doesn’t exist);
  • Go back to the AULReport application, click the “License file Activation” button and select the license file you just created (c:\AULReport\AULReport.lic).
  • Enjoy the tool, now activated with a license file 🙂

The AULReport tool is now also optimized in those procedures and queries that used to freeze the application while they ran. In particular while loading the applications in the main screen, in the “AppUser Matrix” page and in “User’s TreeView”.

Specifically, the main AULReport window no longer loads the applications automatically, but waits for you to select the time window and click the “Query” button.

The AppUser Matrix window now builds the matrix in real time, showing each row as it is processed, which makes the wait less boring 🙂

All the Export to Excel procedures now end by opening the file that was just generated, so you immediately see the result of the export (PS: I never mentioned it before, but Excel must be installed to run the exports). By default, exports are saved in the c:\AULReport\Reports\ folder.

Update, September 29, 2023:

I released a new version of AULService, because I found that in certain situations the agent could hang while reading the application’s icon (causing the process to stall). I have now added a check that verifies whether the executable’s icon can be extracted and, if it can’t, assigns a generic icon to the application, to be shown in AULReport.

Update, October 11, 2023:

I released yet another version of AULService, v2.0.9, largely rewritten and with the addition of a SQLite DB as a local cache. By using the cache, which is kept in sync with the AULMonitor DB, I keep the AULService agent’s interactions with the DB to a minimum, reducing network traffic and improving the agent’s own resource consumption.

Below are the links to the previous blog posts where I covered the various stages of the product’s evolution: