Aria Operations 8.x | Unable to save cost drivers, "Server is busy. Please try again later. If issue still persists, contact the system administrator." is seen when attempted.
search cancel

Aria Operations 8.x | Unable to save cost drivers, "Server is busy. Please try again later. If issue still persists, contact the system administrator." is seen when attempted.

book

Article ID: 367511

calendar_today

Updated On: 03-26-2025

Products

VMware Aria Suite

Issue/Introduction

When attempting to edit the server cost drivers in Aria Operations it fails to save and gives the following error: "Server is busy. Please try again later. If issue still persists, contact the system administrator."

Aria Operations:

Entries in web.log:

INFO [ajp-nio-127.0.0.1-8009-exec-22] com.vmware.vcops.ui.util.MainPortalListener.log - No result defined for action com.vmware.vcops.ui.action.CostDriverAction and result input ( Url: /ui/costDriver.action Params: mainAction=saveServerGroups )

Environment

Aria Operations 8.x

Cause

This issue is due to struts limitation of data being sent as payload. Struts framework has reduced the payload size to a much smaller value. Hence the save isn't working.

Resolution

An immediate workaround is to export the cost drivers, edit the spreadsheet, then re-import it. Here are the steps:

  1. From the left menu, click Configure > Cost Drivers > Cost Drivers tab. In the Cost Drivers tab, select either Import or Export.
  2. The import and export functionality is applicable only for vCenter cost drivers, the functionality is not available for VMware Cloud on Amazon Web Services.
  3. Using the import and export option, you can perform the following actions on the cost drivers:
  • Export or import the cost driver configuration file.
  • Read and edit the cost driver configuration file.
  • Validate the updated cost driver configuration file and report errors.
  • Identify the error from the log file and correct the errors.

You are prompted with error messages if the uploaded file has errors. You can correct the errors and upload the file, or you can ignore the errors, the system still allows you to upload the file.

For a more permanent solution when using Aria Operations 8.18.x, please follow the alternative steps outlined below.

Determining Payload Size for Modifying struts.xml Configuration

To determine the size of the payload generated in Aria Operations, which is necessary to update the struts.xml file with appropriate values.
Steps:

Log in to Aria Operations:

Log into the Aria Operations interface using an admin account.

Navigate to Cost Drivers:
From the main menu, go to Configurations > Cost > Cost Drivers.

Enable Developer Mode in Chrome Browser:
        In Chrome, enable Developer Mode by following these steps:
        Press Ctrl + Shift + I (Windows) or Cmd + Option + I (Mac) to open the Developer Tools.
        Click the three-dot menu in the upper-right corner of the browser, then select More Tools > Developer Tools.

Select the Server Group:
        Choose the Server Group that requires editing, and make any necessary changes to the values.

 Access the Network Tab in Developer Tools:
        In the Developer Tools window, go to the Network tab.
        Locate and select the Payload section related to the action being performed.

 Copy the Payload Data:
        Copy the entire payload data from the Payload tab.
        Paste the copied data into a Notepad or any text editor.

 Check the Payload Size:
        In the Notepad (or text editor), review the payload data and check the size of the file (you can use the properties of the file or check the word count in some editors).

Modify struts.xml Configuration:
    Based on the size of the payload data, increase the value for struts.multipart.maxStringLength in the struts.xml configuration file. Follow the steps below to modify this setting:

Take snapshots of the Aria Operations cluster.

  1. SSH to each vROPs node.
  2. Navigate to the appropriate directory.
    • cd /usr/lib/vmware-vcops/tomcat-web-app/webapps/ui/WEB-INF/classes/
  3. Make a backup of the struts.xml file.
    • cp struts.xml struts.xml.old
  4. Edit the struts.xml file.
    • vi struts.xml
  5. Modify the line shown below, changing the value from "16384" to "32678".
    • <constant name="struts.multipart.maxStringLength" value="16384"/> to <constant name="struts.multipart.maxStringLength" value="<32678>"/>
  6. Save and close the file.
  7. Restart the UI service on all the nodes.
    • service vmware-vcops-web restart
  8. Test the change by editing the value again in the UI.

This issue is permanently fixed in VCF 9.0.0.