Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Data Storage Considerations

...

Code Block
languagexml
titlelistenerEventFilters list in eventHandlerContext.xml
<!-- 
 | List of event filters to apply to all event listeners that handle newly fired events.
 +-->
<util:list id="listenerEventFilters">
    <!-- Can be used to filter events based on event type using an instanceof check -->
    <bean class="org.jasig.portal.spring.context.ClassApplicationEventFilter">
        <property name="supportedEvents">
            <list>
                <value>org.jasig.portal.events.PortalEvent</value>
            </list>
        </property>
        <!-- Can configure a list of events to ignore based on event type using an instanceof check. For examle example
             if you are using Google Analytics, you can ignore all PortletExecutionEvents and some others.
             You may want to retain login, logout, layout changes, Portlet hung, and tenant events.
             Note that the PortletExecutionEvents include information about time to execute the action, render,
             event, and resource events which could be helpful to report on times that individual portlets are
             taking to do their operations, though there are currently no reports shipping in uPortal to aggregate
             and report on that information.  It is an example of information that Google Analytics would not 
             report on.  
        <property name="ignoredEvents">
            <list>
                <value>org.jasig.portal.events.PortletExecutionEvent</value>
                <value>org.jasig.portal.events.PortalRenderEvent</value>
            </list>
        </property>
        -->
    </bean>
    <!-- Can be used to filter events based on who generated the event
    <bean class="org.jasig.portal.events.handlers.UserFilteringPortalEventHandler">
        <property name="ignoredUserNamePatterns">
            <list>
                <value>user\..*</value>
                <value>vptest-user.*</value>
            </list>
        </property>
        <property name="supportGuest" value="true" />
    </bean>
     -->
</util:list>

For the list of available event types you can filter using ClassApplicationEventFilter, see all the subclasses of PortalEvent; e.g. see PortalEvents.png for the list of events as of the time of the image capture.

Google Analytics Reports overlap with portal events

Google Anallytics reports (see Google Analytics) provide extensive reports and overlaps quite a bit with uPortal's internal event reports.  The recommended strategy is to configure Google Analytics and use it as the primary reporting mechanism.  However, there are still advantages to retaining some uPortal events for local reporting.  When using Google Analytics, the recommended list of classes to add to the ignoredEvents property of the listenerEventFilters is:

Code Block
languagexml
titleRecommended list of event classes to ignore when using Google Analytics
<property name="ignoredEvents">
    <list>
        <value>org.jasig.portal.events.PortletExecutionEvent</value>
        <value>org.jasig.portal.events.PortalRenderEvent</value>
    </list>
</property>

Purging Persistent Events

The Event Aggregation process also handles purging of aggregated events. The default configuration is to purge raw event data 1 hour after it has been aggregated. This window size can be changed by setting the org.jasig.portal.events.aggr.PortalEventPurgerImpl.purgeDelay property in uportal-war/src/main/resources/properties/portal.properties

...