Translate in Your language

Monday, 12 December 2016

Horizon View 6.x and 7.x logging Part 1: Events Database

Horizon view can be configured to log events data using any of the following method,
  • Event Database
  • Syslog 
  • Flat file log

Event Database:

The event database stores View events information as records in Microsoft SQL Server or Oracle database rather than in a log file. 

Horizon View records events like end-user actions, administrator actions, system failures alerts, and errors.
  • End-user actions include logging and starting desktop and application sessions. 
  • Administrator actions include adding entitlements and creating desktop and application pools. 
By default, Horizon view event database is not configured, hence we will notice yellow warning for event database on dashboard as shown below.

Event database is configured post installing a View Connection Server instance. We need to configure event database only on one host in a View Connection Server group. The remaining hosts in the group are configured automatically. 

Configuring Event Database in View:
  • Login to View administrator portal URL at https://<IP/FQDN of View connection server>/admin with your View administrative credentials.

  • In the VMWare Horizon View administrator portal, Click on Event Configuration under View configuration and click Edit button. 

  • Enter required details of event database as shown in below image and click OK button. (In My case I have used SQL DB).

  • Once Horizon View event database is configured, we can see the event database information under event configuration.

  • Also once Horizon view event database is configured, events are logged under events in monitoring.

Event Database Tables:

Horizon View uses database tables to implement the event database. The event database prepends the names of these tables with a prefix that we define when we set up the event database (In my case, "VE_"). 

Below are the tables used to record events data in database.
  • EventThis table stores metadata and search optimization data for recent events.
  • Event_DataThis table stores data values for recent events.
  • Event_Data_HistoricalThis table stores data values for all events.
  • Event_HistoricalThis table stores metadata and search optimization data for all events.
Events are written in full to both the Current (Event & Event_Data) and Historical tables. When events in the current table reach a certain age, they are deleted. However, events are never deleted from the Historical tables

We can use View Administrator to configure the time period for which the database keeps a record in the event and event_data tables as shown in image below. 

Despite of setting "show events for" value to larger interval, as in above image it is 3 months, View admin portal can display only 2000 objects. 

However, we can use BI reporting engines like Crystal Reports and Oracle Enterprise Performance Management System to access and analyze the event database.

Supported Database Servers for Events Database in Horizon View 7.x:
  • SQL Server 2008R2 (32 & 64 bit): Express, Standard, Enterprise, Datacenter (SP2/SP3)
  • SQL Server 2012R2 (32 & 64 bit): Express, Standard, Enterprise (SP2)
  • SQL Server 2008R2 (32 & 64 bit): Standard, Enterprise  (Without SP, SP1)
  • Oracle12C: Standard One, Standard, Enterprise (Any release upto


  1. can we use SQL server availability groups while configuring event DB

    1. I have not tried this however it should work. As per VMware Docs SQL AO/AG is not required for event DB and composer DB. However you should certainly use availability group for Identity Manager.

  2. Could someone tell me where I can find client source up address information?

  3. Replies
    1. You can see the Client IP address in the debug file(c:\programdata\vmware\vdm\logs) in the View Connection server. Look for the variable ClientIpAddress. It will be somenthing like this:

      Sucessful connection:
      140534 2013-02-15T13:34:33.483-08:00 DEBUG (080C-0DB8) [EventLogger] (SESSION:c187_***_c545) Info_Event:[BROKER_USERLOGGEDIN] "User PERFLAB\emello has logged in": ClientIpAddress=, TotalUsers=1, BrokerSessionId=c187_***_c545, Module=Broker, UserDisplayName=PERFLAB\emello, Source=net.propero.modules.properOps.UserSessionTracker, Severity=AUDIT_SUCCESS, Time=Fri Feb 15 13:34:33 PST 2013, Node=vcs.perflab.local, UserSID=S-1-5-21-3248529586-1416739443-480672615-1107, Acknowledged=true

      NOT Successful - bad password:
      141746 2013-02-15T13:40:15.956-08:00 DEBUG (080C-0DA0) [EventLogger] (SESSION:87d4_***_04be emello) Error_Event:[BROKER_USER_AUTHFAILED_BAD_USER_PASSWORD] "User PERFLAB\emello failed to authenticate because of a bad username or password": Source=net.propero.portal.filters.WinAuthFilter, Time=Fri Feb 15 13:40:15 PST 2013, Severity=AUDIT_FAIL, ClientIpAddress=, Node=vcs.perflab.local, Module=Broker, UserDisplayName=PERFLAB\emello, Acknowledged=true

      I hope it helps you.

    2. Perfect. Thanks everyone!



Popular Posts This Week