Localization.UGC.AlwaysExportFullGatherLog

Localization.UGC.AlwaysExportFullGatherLog

#Overview

name: Localization.UGC.AlwaysExportFullGatherLog

This variable is created as a Console Variable (cvar).

It is referenced in 3 C++ source files.

#Summary

#Usage in the C++ source code

The purpose of Localization.UGC.AlwaysExportFullGatherLog is to control the export behavior of the localization gather log for User Generated Content (UGC) in Unreal Engine 5. It is a console variable that determines whether to always export the full gather log from running the localization commandlet, even if there were no errors during the process.

This setting variable is primarily used in the Localization module of Unreal Engine 5, specifically within the User Generated Content localization system. It is part of the Developer subsystem, as evident from its location in the Developer/Localization directory.

The value of this variable is set through the Unreal Engine console system using FAutoConsoleVariableRef. It is initialized as false by default, meaning that the full gather log is not exported unless errors occur during the localization process.

The associated variable bAlwaysExportFullGatherLog directly interacts with Localization.UGC.AlwaysExportFullGatherLog. They share the same value, with bAlwaysExportFullGatherLog being the C++ boolean variable that is used within the code to check the setting’s value.

Developers must be aware that enabling this setting may increase the amount of data generated during the localization process, as it will always export the full gather log regardless of whether errors occurred. This could potentially impact performance and storage requirements, especially for large projects with extensive localization needs.

Best practices when using this variable include:

  1. Keep it disabled (false) by default to minimize unnecessary log generation.
  2. Enable it temporarily when debugging localization issues or when a complete log of the gathering process is required for analysis.
  3. Be mindful of the potential increase in file size and processing time when enabled, especially for large projects.

Regarding the associated variable bAlwaysExportFullGatherLog:

The purpose of bAlwaysExportFullGatherLog is to serve as the internal C++ representation of the Localization.UGC.AlwaysExportFullGatherLog console variable. It is used within the code to determine whether to export the full gather log.

This variable is used in the Localization module, specifically in the User Generated Content localization system. It is referenced in the ExportLocalization function, which is responsible for exporting localization data for plugins.

The value of bAlwaysExportFullGatherLog is set by the console variable system when Localization.UGC.AlwaysExportFullGatherLog is modified. It does not need to be manually set by developers.

bAlwaysExportFullGatherLog interacts directly with the console variable Localization.UGC.AlwaysExportFullGatherLog, as they share the same value.

Developers should be aware that this variable is used in conditional statements to determine whether to export the full gather log. Changes to the console variable will affect the behavior of functions that use this boolean.

Best practices for bAlwaysExportFullGatherLog include:

  1. Do not modify this variable directly in code; instead, use the console variable to change its value.
  2. When debugging localization issues, check the value of this variable to understand why full logs might or might not be exported.
  3. Use this variable in conjunction with other localization debugging tools and settings for comprehensive analysis of the localization process.

#References in C++ code

#Callsites

This variable is referenced in the following C++ source code:

#Loc: <Workspace>/Engine/Source/Developer/Localization/Private/UserGeneratedContentLocalization.cpp:29

Scope (from outer to inner):

file
namespace    UserGeneratedContentLocalization

Source code excerpt:


bool bAlwaysExportFullGatherLog = false;
FAutoConsoleVariableRef CExportFullGatherLog(TEXT("Localization.UGC.AlwaysExportFullGatherLog"), bAlwaysExportFullGatherLog, TEXT("True to export the full gather log from running localization commandlet, even if there we no errors"));

}

void FUserGeneratedContentLocalizationDescriptor::InitializeFromProject(const ELocalizedTextSourceCategory LocalizationCategory)
{
	ELocalizationLoadFlags LoadFlags = ELocalizationLoadFlags::None;

#Associated Variable and Callsites

This variable is associated with another variable named bAlwaysExportFullGatherLog. They share the same value. See the following C++ source code.

#Loc: <Workspace>/Engine/Source/Developer/Localization/Private/UserGeneratedContentLocalization.cpp:28

Scope (from outer to inner):

file
namespace    UserGeneratedContentLocalization

Source code excerpt:

{

bool bAlwaysExportFullGatherLog = false;
FAutoConsoleVariableRef CExportFullGatherLog(TEXT("Localization.UGC.AlwaysExportFullGatherLog"), bAlwaysExportFullGatherLog, TEXT("True to export the full gather log from running localization commandlet, even if there we no errors"));

}

void FUserGeneratedContentLocalizationDescriptor::InitializeFromProject(const ELocalizedTextSourceCategory LocalizationCategory)
{
	ELocalizationLoadFlags LoadFlags = ELocalizationLoadFlags::None;

#Loc: <Workspace>/Engine/Source/Developer/Localization/Private/UserGeneratedContentLocalization.cpp:439

Scope (from outer to inner):

file
namespace    UserGeneratedContentLocalization
function     bool ExportLocalization

Source code excerpt:

			UE_LOG(LogUGCLocalization, Display, TEXT("Localization commandlet finished with exit code %d"), ReturnCode);

			if (bGatherFailed || UserGeneratedContentLocalization::bAlwaysExportFullGatherLog)
			{
				TArray<FString> CommandletOutputLines;
				CommandletOutput.ParseIntoArrayLines(CommandletOutputLines);

				for (const FString& CommandletOutputLine : CommandletOutputLines)
				{