startup phase tracking added to appearance metrics

meow-7.2.2
Brad Payne (Vir Linden) 2012-04-19 17:12:49 -04:00
parent 7fbf42dec8
commit 08704b36f6
3 changed files with 9 additions and 2 deletions

View File

@ -240,6 +240,7 @@ static bool mLoginStatePastUI = false;
boost::scoped_ptr<LLEventPump> LLStartUp::sStateWatcher(new LLEventStream("StartupState"));
boost::scoped_ptr<LLStartupListener> LLStartUp::sListener(new LLStartupListener());
boost::scoped_ptr<LLViewerStats::PhaseMap> LLStartUp::sPhases(new LLViewerStats::PhaseMap);
//
// local function declaration
@ -2707,9 +2708,9 @@ void LLStartUp::setStartupState( EStartupState state )
getStartupStateString() << " to " <<
startupStateToString(state) << LL_ENDL;
selfStopPhase(getStartupStateString());
sPhases->stopPhase(getStartupStateString());
gStartupState = state;
selfStartPhase(getStartupStateString());
sPhases->startPhase(getStartupStateString());
postStartupState();
}

4
indra/newview/llstartup.h Normal file → Executable file
View File

@ -34,6 +34,8 @@ class LLEventPump;
class LLStartupListener;
class LLSLURL;
#include "llviewerstats.h"
// functions
bool idle_startup();
void release_start_screen();
@ -113,6 +115,7 @@ public:
static bool startLLProxy(); // Initialize the SOCKS 5 proxy
static LLViewerStats::PhaseMap& getPhases() { return *sPhases; }
private:
static LLSLURL sStartSLURL;
@ -120,6 +123,7 @@ private:
static EStartupState gStartupState; // Do not set directly, use LLStartup::setStartupState
static boost::scoped_ptr<LLEventPump> sStateWatcher;
static boost::scoped_ptr<LLStartupListener> sListener;
static boost::scoped_ptr<LLViewerStats::PhaseMap> sPhases;
};

View File

@ -59,6 +59,7 @@
#include "llmeshrepository.h"
#include "llvovolume.h"
#include "llsdutil.h"
#include "llstartup.h"
#if LL_MSVC
// disable boost::lexical_cast warning
@ -2148,6 +2149,7 @@ LLSD LLVOAvatarSelf::metricsData()
result["timers"]["invisible"] = mInvisibleTimer.getElapsedTimeF32();
result["timers"]["fully_loaded"] = mFullyLoadedTimer.getElapsedTimeF32();
result["phases"] = getPhases().dumpPhases();
result["startup"] = LLStartUp::getPhases().dumpPhases();
return result;
}