diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-03-03 06:59:34 -0500 | 
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-03-03 06:59:34 -0500 | 
| commit | a37e121dbf3eba78f3f44f7028eb9849c7a3883e (patch) | |
| tree | ed45c69a6d60c7528d9c78c07e11833f971196ea /indra | |
| parent | 7b3f721e7a110f9f63caacb2546207fddb44fc4b (diff) | |
SH-2970 WIP - avatar metrics
Diffstat (limited to 'indra')
| -rwxr-xr-x | indra/newview/app_settings/settings.xml | 11 | ||||
| -rw-r--r-- | indra/newview/llappviewer.cpp | 13 | ||||
| -rwxr-xr-x | indra/newview/llvoavatar.cpp | 19 | ||||
| -rwxr-xr-x | indra/newview/llvoavatar.h | 3 | ||||
| -rwxr-xr-x | indra/newview/llvoavatarself.cpp | 2 | 
5 files changed, 41 insertions, 7 deletions
| diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 27c757b306..9fff543b13 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -7150,6 +7150,17 @@        <key>Value</key>        <integer>-1</integer>      </map> +    <key>QAModeMetrics</key> +    <map> +      <key>Comment</key> +      <string>"Enables QA features (logging, faster cycling) for metrics collector"</string> +      <key>Persist</key> +      <integer>1</integer> +      <key>Type</key> +      <string>Boolean</string> +      <key>Value</key> +      <integer>0</integer> +    </map>      <key>QuietSnapshotsToDisk</key>      <map>        <key>Comment</key> diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 9378398a76..3f511748ea 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -730,12 +730,12 @@ bool LLAppViewer::init()  	{  		// Viewer metrics initialization -		static LLCachedControl<bool> metrics_submode(gSavedSettings, -													 "QAModeMetrics", -													 false, -													 "Enables QA features (logging, faster cycling) for metrics collector"); +		//static LLCachedControl<bool> metrics_submode(gSavedSettings, +		//											 "QAModeMetrics", +		//											 false, +		//											 "Enables QA features (logging, faster cycling) for metrics collector"); -		if (metrics_submode) +		if (gSavedSettings.getBOOL("QAModeMetrics"))  		{  			app_metrics_qa_mode = true;  			app_metrics_interval = METRICS_INTERVAL_QA; @@ -4244,7 +4244,8 @@ void LLAppViewer::idle()  		static LLTimer report_interval;  		// *TODO:  Add configuration controls for this -		if (report_interval.getElapsedTimeF32() >= app_metrics_interval) +		F32 seconds = report_interval.getElapsedTimeF32(); +		if (seconds >= app_metrics_interval)  		{  			metricsSend(! gDisconnected);  			report_interval.reset(); diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 8ea0fb7c50..9249e0fa21 100755 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -807,6 +807,17 @@ void LLVOAvatar::debugAvatarRezTime(std::string notification_name, std::string c  	}  } +// Dump avatar metrics data. +// virtual +LLSD LLVOAvatar::metricsData() +{ +	LLSD result; +	result["id"] = getID(); +	result["rez_status"] = getRezzedStatus(); +	result["is_self"] = isSelf(); +	return result; +} +  //------------------------------------------------------------------------  // LLVOAvatar::~LLVOAvatar()  //------------------------------------------------------------------------ @@ -943,6 +954,14 @@ BOOL LLVOAvatar::hasGray() const  	return !getIsCloud() && !isFullyTextured();  } +S32 LLVOAvatar::getRezzedStatus() const +{ +	if (getIsCloud()) return 0; +	if (hasGray()) return 1; +	if (isFullyTextured()) return 2; +	return -1; +} +  void LLVOAvatar::deleteLayerSetCaches(bool clearAll)  {  	for (U32 i = 0; i < mBakedTextureDatas.size(); i++) diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index bab4f02caf..9a9ba85eb2 100755 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -281,6 +281,7 @@ public:  	virtual BOOL	getIsCloud() const;  	BOOL			isFullyTextured() const;  	BOOL			hasGray() const;  +	S32				getRezzedStatus() const; // 0 = cloud, 1 = gray, 2 = fully textured.  protected:  	BOOL			updateIsFullyLoaded();  	BOOL			processFullyLoadedChange(bool loading); @@ -988,6 +989,8 @@ private:  public:  	void 			debugAvatarRezTime(std::string notification_name, std::string comment = "");  	F32				debugGetExistenceTimeElapsedF32() const { return mDebugExistenceTimer.getElapsedTimeF32(); } +	LLSD			metricsData(); +  protected:  	LLFrameTimer	mRuthDebugTimer; // For tracking how long it takes for av to rez  	LLFrameTimer	mDebugExistenceTimer; // Debugging for how long the avatar has been in memory. diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index d5895bdc31..467961c55e 100755 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -2278,7 +2278,7 @@ void LLVOAvatarSelf::setNewBakedTexture( ETextureIndex te, const LLUUID& uuid )  	}  } -// FIXME: This is never called. Something may be broken. +// FIXME: This is not called consistently. Something may be broken.  void LLVOAvatarSelf::outputRezDiagnostics() const  {  	if(!gSavedSettings.getBOOL("DebugAvatarLocalTexLoadedTime")) | 
