What This Article Is About
This article gives intructions to identify performance issues using Anveo Web Portal for Microsoft Dynamics NAV.
A performance analysis is a complex task. First, you have to identify the cause of a performance problem. Second, a solution may result in different types of tasks: update of configuration settings in Anveo or Dynamics NAV Web Services, change of development in Dynamics NAV C/AL code, an Dynamics NAV SQL server performance analysis or even in new hardware.
Identify the Cause of a Performance Issue
- If Initial Load Is Slow
If the initial load is slow, but second / third login with same user is much faster, the caching mechanism may not be set-up correcly.
Open Anveo's application pool settings in IIS configuration manager and double-check the following settings:
AnveoWebPortal Application Pool:
Maximum Worker Processes: minimum 10 or the half of the number of the max. concurrent Anveo Anveo Users
Idle-out (minutes): 0
Regular Time Interval (minutes): 1740 (default value)
Settings for the AnveoWebStore Application Pool:
Maximum Worker Processes: 1 (default; do not set to any other value!)
Idle-out (minutes): 0
Regular Time Interval (minutes): 0 - Check IIS / Web Service Server Infrastructure
Make sure IIS and Web Service Windows Server have enough CPU cores, disc capacity and memory. Use Windows resource monitor to identify performance problems. - If Data Entry Is Slow: Turn on Anveo's detailed text log
Anveo Web Portal provides a detailed log of all actions of a user. These log files help identifying the cause of a performance issue. However, the logfile slows down the overall performance and must be used for a performance analysis only. In live operation, turn of server logging.
Open Anveo Setup in Microsoft Dynamics NAV and configure the following:
Open your Anveo User and set-up the following:
Make sure to close the window after making changes to let the Windows Client save the values.
The log file writes a lot of text files into the logging folder set-up. The interesting ones are GetJSONResult (reading data) and SetFieldToRecordValue (writing data). Look at those that is slow.
GetJSONResult Files
The log file contains all process information on requesting data.
SetFieldToRecordValue
This file shows the data processing of a new/changed value.
In the C/AL column, a timestamp shows the consumed time for a processing. If a processing is longer than about 100ms, you have identified a possible cause of a performance issue.
An important step is "Modifying Record..." until "Record is modified."
This is Dynamics NAV's data processing using the OnValidate Trigger in the tables. If you experience long run times in this step, please have a look at your OnValidate / OnModify Triggers and do a general Microsoft Dynamics NAV performance analysis as this is not Anveo related. - Turn off Anveo's detailed text log & Clean Up Logs
Writing the log file is a very time consuming process. It is very important to turn this log of in live operation and to clean the log files as a very large number of files slows down the server as well. - Check amount of data in Drop Down lists. Too large amount of data in drop down lists with a setting to sorting Both in one result-set (slow on large lists) may cause a 100% CPU power of your Microsoft Dynamics NAV web service. Set this value to any other sorting option and restart your NAV web service.
Comments