Use PowerShell to get the Citrix Configuration Log as well as Old and New Property Values
This is a quick tip to show you how to get the Citrix Configuration Log, plus all the old and new property values, and convert this all to JSON.

Here is a quick tip for you. I had a need to get the Citrix Configuration Log, so I dropped into PowerShell and ran Get-CtxConfigurationLogReport. That is all good and well, but you do not get all the old and new values of the changed properties. However, converting this output to JSON will do just what I want. Plus, converting to JSON is better for me anyway as I want to push this stuff over to Splunk to do some analytics. Here is what you need to do:
Step 1 – Create your UDL file to connect to the database
Add-Content C:\conflog.udl –Value $null; Start-Process C:\conflog.udl
This will prompt you for your SQL credentials. You can use Windows integrated security if you like, but I’m saving my creds for later use outside of my interactive PowerShell session later.
Step 2 – Get the things
# Load the Citrix Common Commands Snapin Get-PSSnapin -Registered "Citrix.Common.Commands" | Add-PSSnapin # Get the configuration log and convert to JSON Get-CtxConfigurationLogReport -DataLinkPath C:\conflog.udl | ConvertTo-Json -Depth 10
Here is some sample output (notice the property old and new values)
{ "EntryId": "3_0_3", "Date": "\/Date(1443804400000)\/", "Account": "LAB\\administrator", "TaskType": 2, "ItemType": 0, "ItemName": "Calc", "Description": "Published application Calc was modified.", "Details": [ { "PropertyName": "Application Description", "OldValue": "Calculator", "NewValue": "Calculator 123" } ], "References": [ ] }
Note, this requires PowerShell 3.0
Here is a Gist as well -> https://gist.github.com/JasonConger/62b9c6ce165503a3112c