Added some profiling events for subsonic API (media retrieval)

This commit is contained in:
emeric
2024-03-09 19:14:13 +01:00
parent f072f171d8
commit d6fd95ab44
+3 -2
View File
@@ -268,7 +268,7 @@ namespace API::Subsonic
};
using MediaRetrievalHandlerFunc = std::function<void(RequestContext&, const Wt::Http::Request&, Wt::Http::Response&)>;
static std::unordered_map<std::string, MediaRetrievalHandlerFunc> mediaRetrievalHandlers
static std::unordered_map<LiteralString, MediaRetrievalHandlerFunc, LiteralStringHash, LiteralStringEqual> mediaRetrievalHandlers
{
// Media retrieval
{"/download", handleDownload},
@@ -277,7 +277,6 @@ namespace API::Subsonic
};
}
SubsonicResource::SubsonicResource(Db& db)
: _serverProtocolVersionsByClient{ readConfigProtocolVersions() }
, _openSubsonicDisabledClients{ readOpenSubsonicDisabledClients() }
@@ -338,6 +337,8 @@ namespace API::Subsonic
auto itStreamHandler{ mediaRetrievalHandlers.find(requestPath) };
if (itStreamHandler != mediaRetrievalHandlers.end())
{
LMS_SCOPED_PROFILE_OVERVIEW("Subsonic", itStreamHandler->first);
itStreamHandler->second(requestContext, request, response);
LMS_LOG(API_SUBSONIC, DEBUG, "Request " << requestId << " '" << requestPath << "' handled!");
return;