Adds simple stats tracking to AssetProcessor (#5573)
* Adds simple stats tracking to AssetProcessor The system captures cumulative and individual processing times. It avoids touching any part of the app which affects decision making or flow, or altering any structures such as JobEntry which are involved in processing, in order to keep it as simple and small as possible. Signed-off-by: lawsonamzn <70027408+lawsonamzn@users.noreply.github.com>
This commit is contained in:
@@ -16,7 +16,8 @@
|
||||
#include <AzFramework/Logging/LoggingComponent.h>
|
||||
#include <AzFramework/Asset/AssetSystemComponent.h>
|
||||
|
||||
#include "native/resourcecompiler/RCBuilder.h"
|
||||
#include <native/resourcecompiler/RCBuilder.h>
|
||||
#include <native/utilities/StatsCapture.h>
|
||||
|
||||
#include <QLocale>
|
||||
#include <QTranslator>
|
||||
@@ -200,6 +201,10 @@ ApplicationManager::~ApplicationManager()
|
||||
delete m_appDependencies[idx];
|
||||
}
|
||||
|
||||
// end stats capture (dump and shutdown)
|
||||
AssetProcessor::StatsCapture::Dump();
|
||||
AssetProcessor::StatsCapture::Shutdown();
|
||||
|
||||
qInstallMessageHandler(nullptr);
|
||||
|
||||
//deleting QCoreApplication/QApplication
|
||||
@@ -571,6 +576,8 @@ bool ApplicationManager::StartAZFramework()
|
||||
|
||||
bool ApplicationManager::ActivateModules()
|
||||
{
|
||||
AssetProcessor::StatsCapture::BeginCaptureStat("LoadingModules");
|
||||
|
||||
// we load the editor xml for our modules since it contains the list of gems we need for tools to function (not just runtime)
|
||||
connect(&m_frameworkApp, &AssetProcessorAZApplication::AssetProcessorStatus, this,
|
||||
[this](AssetProcessor::AssetProcessorStatusEntry entry)
|
||||
@@ -587,6 +594,8 @@ bool ApplicationManager::ActivateModules()
|
||||
}
|
||||
|
||||
m_frameworkApp.LoadDynamicModules();
|
||||
|
||||
AssetProcessor::StatsCapture::EndCaptureStat("LoadingModules");
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -618,6 +627,9 @@ ApplicationManager::BeforeRunStatus ApplicationManager::BeforeRun()
|
||||
return ApplicationManager::BeforeRunStatus::Status_Failure;
|
||||
}
|
||||
|
||||
// enable stats capture from this point on
|
||||
AssetProcessor::StatsCapture::Initialize();
|
||||
|
||||
return ApplicationManager::BeforeRunStatus::Status_Success;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user