To provide recommendations from Portal Activity Report side for improving the Portal Performance
The Wiki provides different recommendations for the scenarios where Portal Activity is used and when it is not used.
For customers who do not use Portal Activity Report:
The Portal Activity Report is enabled by default in NW 7.0 as well as in NW04. Only starting from NW 7.3 it is disabled by default. If you do not use this feature, you should disable it, in order to improve the portal performance, as this feature gathers statistics for every iView and page that are being rendered in the portal. The portal activity statistics are collected, and then being processed on the database, consuming database as well as server resources.
How to disable Portal Activity Report:
You have permissions to the Service Configuration page and to the com.sap.portal.activityreport.core service. By default, members of the built-in system administrator role have the required permission.
- Navigate to the Service Configuration Editor: System Administration -> System Configuration -> Service Configuration.
- Open the configuration page:
- Navigate to the Service Configuration Editor: In the Portal Catalog, navigate to Applications -> com.sap.portal.activityreport.core -> Services -> ActivityReport.
- Right-click ActivityReport and choose Configure. The properties for the portal activity report application are listed.
- The data collection service is turned on by default. To turn it off, set the following property to false (the property is not case sensitive):
Activate portal activity report
Starts and stops the data collection service. Enter true (default) or false.
- Select Save to save your settings.
- Restart the portal application:
- In the Portal Catalog, navigate to Application -> com.sap.portal.activityreport.core.
- Right-click com.sap.portal.activityreport.core and Administrate. The Application Details Editor is displayed.
- Click Restart to restart the portal activity report application.
For customers who use Portal Activity Report:
“Monitor Hits” property for portal iViews and pages:
The Portal Activity Report monitors all the iViews and pages that are rendered (used at runtime) in the portal by portal users. This is done due to a property that exists on all iViews and pages in the portal called “Monitor hits” that is set to “true” (“yes”) by default. In case only part of the content is needed for statistics, it is recommended to set this property to “false” (“no”) for the unneeded content.
For changing this property value, you should have permissions to the Portal Content page under Content Administration, as well as permissions to the content itself that is displayed in the Portal Catalog.
For each iView/Page the property Monitor Hits can be found using the Property Editor. If your portal version supports categories, then this property is under “Monitoring” categorization. Set the property value to “no” (false), and save the editor new settings.
“Monitor Users” property for portal pages:
All portal pages have the property “Monitor Users”, and it is set to “false” (“no”) by default. If this property is set to “true” (“yes”), the Activity report will collect the names of all the users who used that portal page at runtime.
It influences performance as there is more data to process and more operation to do when collecting that information, before it is written to the database. Moreover, there is a special table in the database that is filled with this information called WCR_USERPAGEUSAGE. When generating a report, the information has to be calculated using this table in combination with the content table WCR_WEBCONTENTSTAT, which makes the report processing slower.
All of the above consumes resources on both the server and the database, and hence, should be avoided whenever not necessary.
The reason why this property exists only on pages and not on iViews is due to performance. The conception is that instead of having to do all of the above for many iViews that are located under one page, only the page is being monitored for the users, and when this page is rendered, all the iViews under it are being rendered automatically. The assumption is that content designers know what iViews are located under each page, and it is easy to find this information as it is also collected (as long as the “Monitor Hits” property is set to “true” on those objects).
Activity Report service properties configuration:
The Activity Report service properties can be configured to optimize the performance consumption of the Portal Activity Report. Following are the recommendations according to Portal Activity Report usage:
- Gather iView statistics - By default it is set to “true”. If there is no need to gather statistics about iViews usage in the portal, it should be set to “false”.
- Gather page statistics - By default it is set to “true”. If there is no need to gather statistics about pages usage in the portal, it should be set to “false”.
- Number of days for < hourly /daily/ weekly /monthly/quarterly> data retention – The number of records in the database tables depends on this number, so it should be set to the minimal number needed, in order to prevent from having big tables as long as it is not necessary. Having bigger tables means consuming more database resources; more processing time is needed for queries in order to generate reports; and the aggregation process over the data takes more time and consumes more resources (for example: server memory).
In order to change the service properties, follow the steps described under “How to disable Portal Activity Report” as all the properties are located on the same service that contains the property to disable the feature.
Using Activity Data Collector:
If you are using the Activity Data Collector in order to collect portal activity statistics, it is highly recommended not to use it together with the Portal Activity Report. Both have parallel mechanism that listens on the server for iViews and Pages activity, and collects data separately in order to process it. Having two parallel mechanisms reduces performance, and moreover, most of the times it is not really necessary.
The Activity data Collector can collect all the data that is being collected by the Activity Report, and much more, and if you are already using it, then you are already processing the raw data that is being collected on the file system, in order to make reports from it. In such a case there is no reason not to collect the data the Activity report collects as well, and aggregate it into the same reports that are displayed by the Activity Report. Doing so would probably improve performance, and thus worthwhile.
Michal Zilcha Lang - Portal IMS Group - SAP Labs Israel
Priyanka Jain - Portal AGS Group - SAP Labs India