Troubleshooting AWS Microservice Extractor for .NET - AWS Microservice Extractor for .NET

Troubleshooting AWS Microservice Extractor for .NET

The following remediation strategies can help you troubleshoot problems with AWS Microservice Extractor for .NET.

AWS profile errors

Description

An error regarding the specified AWS profile is returned. For example:

The specified AWS profile is invalid or does not have permission to send metrics to AWS. Please refer to the Microservice Extractor User Guide for instructions on how to setup a valid AWS profile for use with Microservice Extractor.

Solution

  • Verify that you have attached the required AWS Identity and Access Management (IAM) policies to your IAM user. To view the required policies, see the Microservice Extractor prerequisites.

  • Add a named AWS profile with proper credentials, if required. For more information, see Named profiles in the AWS CLI User Guide.

Build failures

Description

The build fails when you attempt to build your repositories.

Solution

Verify the following:

  • The application is supported by Microservice Extractor. See Prerequisites for analysis and extraction of monolithic application to view the application prerequisites.

  • You have installed MSBuild, and Microservice Extractor is pointing to it on the Settings page.

  • MSBuild is working properly. Check the MSBuild log on the Application details page. If there is no preview, or choosing the log returns an error, then MSBuild is likely failing. Verify that you can build the application manually to see if MSBuild is working properly.

  • Microservice Extractor is using the same MSBuild version as your installed version of Visual Studio. If the versions don't match, you can update the MSBuild version used by Microservice Extractor from the Settings page.

  • Relevant switches are added to the .csproj file so that the default msbuild operation can use them. By default, Microservice Extractor appends the RestorePackagesConfig and restore switches to restore NuGet packages during build.

Extraction errors

Description

When you attempt to extract segments of your code as independent services, an error is returned.

Solution

For the following error:

Command failed: failed to run build command on ...\MyApp.sln: failed to execute command: exec: "msbuild": executable file not found in %PATH%
  • Verify that you have installed MSBuild and Microservice Extractor is pointing to it on the Settings page.

  • Add MSBuild to the system path environment variable.

Check logs

  • The <working Dir> referenced in this section refers to the working directory configured on the Settings page. You can determine the cause of most extraction failures by viewing <workingDir>\logs\serviceextract-extraction.log. Generally, the last line in this file contains a message with the cause of the error.

  • If the error message in the log refers to a build failure, check <workingDir>\logs\msbuild.log for details. Note that the extraction builds both the new service and the modified original application. The output of each of these builds is sent to msbuild.log.

  • If the error message refers to a failure to download packages, check <workingDir>\logs\nuget.log for details.

Application artifact location

To determine the application artifact file location, do the following:

  1. Find the application ID in the Summary section of the Application details page.

  2. The directory of the corresponding application is: C:\Users\<username>\AppData\Roaming\ServiceExtract\version-1\cache\version-<versionNumber>\<applicationId>

Onboarding and visualization errors

If you are encountering problems onboarding an application and viewing the visualization, try the following solutions:

  1. The metric policy may not be properly configured. Check the Electron main application log to check for the last succeeded state and high-level errors. If the metrics policy is not properly configured, the log file should display many error messages about metrics.

  2. Check the directory of the corresponding application ID for the following intermediate artifact files: edges.csv and vertices.csv inside of the data-extraction-output folder.

Creating groups

If you experience problems when creating groups, perform the following steps:

  1. Check in the directory for the corresponding application ID for the following intermediate artifact file: tags.csv inside of the tags-data folder.

  2. Verify that the groupings are correctly reflected in the file.

  3. Choose Reset view to remove all of the groups, and try again.

Uninstalling application

If you encounter issues when attempting to uninstall the application as a non-admin user when using the Apps and Features interface in Windows, perform the following steps:

  1. Open Control Panel>Uninstall a program. Or, choose the Windows icon>Run> and enter appwiz.cpl.

  2. Choose AWS Microservice Extractor for .NET from the list of installed applications, and select Uninstall to remove the application and its installation files.

Metrics and logs collected by AWS Microservice Extractor for .NET

AWS Microservice Extractor for .NET collects metrics and logs in the following location of the server or desktop where the tool runs: C:\Users\<username>\AppData\Roaming\ServiceExtract\logs.

Check logs

  • You can determine the cause of most extraction failures by viewing C:\Users\<username>\AppData\Roaming\ServiceExtract\logs\serviceextract-extraction.log. In most cases, the last line of this file includes a message about the cause of an error.

    • If the error message in the log refers to a build failure, check C:\Users\<username>\AppData\Roaming\ServiceExtract\logs\msbuild.log for details. Note that the extraction builds both the new service and the modified original application. The output of each of these builds is sent to msbuild.log.

    • If the error message refers to a failure to download packages, check C:\Users\<username>\AppData\Roaming\ServiceExtract\logs\nuget.log for details.

Questions and feedback

If you have questions that are not addressed in the AWS Microservice Extractor for .NET technical documentation, contact .

You can also provide feedback by choosing Feedback in the upper right-hand corner of this page.