One very useful feature in the latest VMware Horizon (2106) release is the introduction of a new Audit Events API, that will finally allow users to retrieve all Horizon events in a programmatic manner. Previously, the only method of extracting the Horizon events was to unfortunately query the SQL Server database directly.
Since VMware Horizon is not a solution I normally work with, I was actually curious on how many events are produced by Horizon? Back in 2019, I shared how to retrieve and list all vCenter Server Events and ended up publishing a Github repo that folks can quickly view and search for a specific event, which is especially useful if you are using the VMware Event Broker Appliance (VEBA) solution.
After speaking with Chris Halstead, one of the most knowledgable person on VMware Horizon that I know, a list of all known Horizon events has never been published.
I decided to take a quick look around the Horizon Server that I had accessed to and while browsing the installation path of Horizon, I stumbled onto an LDAP directory and there was a few localized LDAP diff files that were named VDIEventsStrings 🤔 This looked promising and after opening up the english file, I saw that all the values following pae-EventString were all encoded and looked to be base64
pae-EventString:: QURNSU5fUkFESVVTX0FVVEhFTlRJQ0FPUl9BRERfRkFJTEVEPUZhaWxlZCB0byBhZGQgUkFESVVTIEF1dGhlbnRpY2F0b3IgJHtSQURJVVNBdXRoZW50aWNhdG9yTmFtZX0=
I took the first encoded strings and ran it through online base64 decoded and 💥, it translated to:
ADMIN_RADIUS_AUTHENTICAOR_ADD_FAILED=Failed to add RADIUS Authenticator ${RADIUSAuthenticatorName}
where the first token is the Horizon Event ID and the second is the actual message that is displayed in Horizon Events UI along with the individual token variables that would be substituted during runtime.
With a quick PowerShell script, I was able to process C:\Program Files\VMware\VMware View\Server\LDAP\ldif\VDIEventStrings_en.ldf file and decode all the Horizon event strings and as of 2106 release, there is a total of 858 events in VMware Horizon!
For those interested, I have published a similiar Github repo listing out all Horizon events https://github.com/lamw/horizon-event-mapping/blob/master/horizon-2106.md
Thanks for the comment!