diff --git a/indra/llmessage/aicurl.h b/indra/llmessage/aicurl.h index d8aafe3b3..1b5953e7f 100644 --- a/indra/llmessage/aicurl.h +++ b/indra/llmessage/aicurl.h @@ -186,6 +186,15 @@ void setCAFile(std::string const& file); // Can be used to set the path to the Certificate Authority file. void setCAPath(std::string const& file); +// Returns number of queued 'add' commands minus the number of queued 'remove' commands. +U32 getNumHTTPCommands(void); + +// Returns the number of queued requests. +U32 getNumHTTPQueued(void); + +// Returns the number of curl requests currently added to the multi handle. +U32 getNumHTTPAdded(void); + // This used to be LLAppViewer::getTextureFetch()->getNumHTTPRequests(). // Returns the number of active curl easy handles (that are actually attempting to download something). U32 getNumHTTPRunning(void); diff --git a/indra/llmessage/aicurlthread.cpp b/indra/llmessage/aicurlthread.cpp index 62b76d8cb..4cc147473 100644 --- a/indra/llmessage/aicurlthread.cpp +++ b/indra/llmessage/aicurlthread.cpp @@ -2505,5 +2505,23 @@ bool handleNoVerifySSLCert(LLSD const& newvalue) return true; } +U32 getNumHTTPCommands(void) +{ + using namespace AICurlPrivate; + + command_queue_rat command_queue_r(command_queue); + return command_queue_r->size; +} + +U32 getNumHTTPQueued(void) +{ + return AIPerHostRequestQueue::total_queued_size(); +} + +U32 getNumHTTPAdded(void) +{ + return AICurlPrivate::curlthread::MultiHandle::total_added_size(); +} + } // namespace AICurlInterface diff --git a/indra/newview/lltextureview.cpp b/indra/newview/lltextureview.cpp index 8541dff47..9e644d51a 100644 --- a/indra/newview/lltextureview.cpp +++ b/indra/newview/lltextureview.cpp @@ -66,6 +66,9 @@ std::set LLTextureView::sDebugImages; // Forward declaration. namespace AICurlInterface { + U32 getNumHTTPCommands(void); + U32 getNumHTTPQueued(void); + U32 getNumHTTPAdded(void); U32 getNumHTTPRunning(void); } // namespace AICurlInterface @@ -598,7 +601,7 @@ void LLGLTexMemBar::draw() #endif //---------------------------------------------------------------------------- - text = llformat("Textures: %d Fetch: %d(%d) Pkts:%d(%d) Cache R/W: %d/%d LFS:%d IW:%d RAW:%d(%d) HTP:%d DEC:%d CRE:%d ", + text = llformat("Textures: %d Fetch: %d(%d) Pkts:%d(%d) Cache R/W: %d/%d LFS:%d IW:%d RAW:%d(%d) HTTP:%d/%d/%d/%d DEC:%d CRE:%d ", gTextureList.getNumImages(), LLAppViewer::getTextureFetch()->getNumRequests(), LLAppViewer::getTextureFetch()->getNumDeletes(), LLAppViewer::getTextureFetch()->mPacketCount, LLAppViewer::getTextureFetch()->mBadPacketCount, @@ -606,6 +609,9 @@ void LLGLTexMemBar::draw() LLLFSThread::sLocal->getPending(), LLAppViewer::getImageDecodeThread()->getPending(), LLImageRaw::sRawImageCount, LLImageRaw::sRawImageCachedCount, + AICurlInterface::getNumHTTPCommands(), + AICurlInterface::getNumHTTPQueued(), + AICurlInterface::getNumHTTPAdded(), AICurlInterface::getNumHTTPRunning(), LLAppViewer::getImageDecodeThread()->getPending(), gTextureList.mCreateTextureList.size());