Citrix Optimizer Reporting Tool

This post will show you how to generate a Citrix Optimizer Template report in Markdown using the Citrix Optimizer Automation PowerShell Module.
The report is generated in Markdown and you can use any of you preferred VSCode etc conversion tools to move that to a PDF for management.
Overview
Ever been asked by the boss
I know we optimize our virtual machine master images for performance, but what settings do we actually apply?
I have, and it’s at that point that I start to trawl through Citrix Optimizer and take hundreds of screenshots of every optimization in place and put them into a Word doc to send over. That’s what this is for. A simple automated way to produce a markdown report based off ANY Citrix Optimizer Template that you run across your master images.
Citrix Optimizer Automation
First you will need the Citrix Optimizer Automation PowerShell module. You can install it by following the below.
Install from the PowerShell Gallery
The Citrix Optimizer Automation module is published in the PowerShell Gallery
You can install the module by entering the below commands in an elevated PowerShell session:
Install-Module -Name CitrixOptimizerAutomation
Import-Module -Name CitrixOptimizerAutomation
Updating the Module
If you have installed a previous version of the module from the gallery, you can install the latest update with Update-Module
and the -Force
parameter:
Update-Module -Name CitrixOptimizerAutomation -Force
Getting a Report
Once you have the module installed it’s as simple as running the below command passing in the path to the XML file (Citrix Optimizer Template) you want the report for.
New-CitrixTemplateReport -Path $Path "Bretty VMware OSOT Import.xml" -All
That command will take the XML file and produce a report for every setting contained within it. If you don’t want it all, say you just want the registry entries defines you would type in the following.
New-CitrixTemplateReport -Path $Path "Bretty VMware OSOT Import.xml" -Registry
The switches available are
Switch | Description |
---|---|
All | Report on every entry defined |
Registry | Report the Registry Entries |
ScheduledTask | Report the Scheduled Task Entries |
Service | Report the Service Entries |
PowerShell | Report the PowerShell Entries |
If you want more that one entry type then you can combine the switches as below.
New-CitrixTemplateReport -Path $Path "Bretty VMware OSOT Import.xml" -Registry -ScheduledTask -PowerShell
The function will create a REPORT.MD file in the same directory that you run the cmdlet from.
Examples Of Output
Below are some screenshots of what you can expect to see in the report.
Metadata Section
Registry Entry
Scheduled Task Entry
Service Entry
PowerShell Entry
Thanks for reading !