aboutsummaryrefslogtreecommitdiff
path: root/zenserver/upstream
diff options
context:
space:
mode:
authorPer Larsson <[email protected]>2021-12-15 20:12:41 +0100
committerPer Larsson <[email protected]>2021-12-15 20:12:41 +0100
commit9313768464789551f287304eadb2fb3f139cdf18 (patch)
tree2e0da7e5ac6217b0d587b297f2827fede4379b7c /zenserver/upstream
parentUpdated readme. (diff)
downloadzen-9313768464789551f287304eadb2fb3f139cdf18.tar.xz
zen-9313768464789551f287304eadb2fb3f139cdf18.zip
Added trace scopes.
Diffstat (limited to 'zenserver/upstream')
-rw-r--r--zenserver/upstream/jupiter.cpp27
-rw-r--r--zenserver/upstream/upstreamcache.cpp31
2 files changed, 58 insertions, 0 deletions
diff --git a/zenserver/upstream/jupiter.cpp b/zenserver/upstream/jupiter.cpp
index 177184591..ffb9b1cbf 100644
--- a/zenserver/upstream/jupiter.cpp
+++ b/zenserver/upstream/jupiter.cpp
@@ -10,6 +10,7 @@
#include <zencore/iohash.h>
#include <zencore/string.h>
#include <zencore/thread.h>
+#include <zencore/trace.h>
ZEN_THIRD_PARTY_INCLUDES_START
#include <cpr/cpr.h>
@@ -86,6 +87,8 @@ CloudCacheSession::Authenticate()
CloudCacheResult
CloudCacheSession::GetDerivedData(std::string_view BucketId, std::string_view Key)
{
+ ZEN_TRACE_CPU("HordeClient::GetDerivedData");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -203,6 +206,8 @@ CloudCacheSession::GetBlob(const IoHash& Key)
CloudCacheResult
CloudCacheSession::GetCompressedBlob(const IoHash& Key)
{
+ ZEN_TRACE_CPU("HordeClient::GetCompressedBlob");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -239,6 +244,8 @@ CloudCacheSession::GetCompressedBlob(const IoHash& Key)
CloudCacheResult
CloudCacheSession::GetObject(const IoHash& Key)
{
+ ZEN_TRACE_CPU("HordeClient::GetObject");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -275,6 +282,8 @@ CloudCacheSession::GetObject(const IoHash& Key)
CloudCacheResult
CloudCacheSession::PutDerivedData(std::string_view BucketId, std::string_view Key, IoBuffer DerivedData)
{
+ ZEN_TRACE_CPU("HordeClient::PutDerivedData");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -320,6 +329,8 @@ CloudCacheSession::PutDerivedData(std::string_view BucketId, const IoHash& Key,
PutRefResult
CloudCacheSession::PutRef(std::string_view BucketId, const IoHash& Key, IoBuffer Ref, ZenContentType RefType)
{
+ ZEN_TRACE_CPU("HordeClient::PutRef");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -387,6 +398,8 @@ CloudCacheSession::PutRef(std::string_view BucketId, const IoHash& Key, IoBuffer
FinalizeRefResult
CloudCacheSession::FinalizeRef(std::string_view BucketId, const IoHash& Key, const IoHash& RefHash)
{
+ ZEN_TRACE_CPU("HordeClient::FinalizeRef");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -451,6 +464,8 @@ CloudCacheSession::FinalizeRef(std::string_view BucketId, const IoHash& Key, con
CloudCacheResult
CloudCacheSession::PutBlob(const IoHash& Key, IoBuffer Blob)
{
+ ZEN_TRACE_CPU("HordeClient::PutBlob");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -486,6 +501,8 @@ CloudCacheSession::PutBlob(const IoHash& Key, IoBuffer Blob)
CloudCacheResult
CloudCacheSession::PutCompressedBlob(const IoHash& Key, IoBuffer Blob)
{
+ ZEN_TRACE_CPU("HordeClient::PutCompressedBlob");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -521,6 +538,8 @@ CloudCacheSession::PutCompressedBlob(const IoHash& Key, IoBuffer Blob)
CloudCacheResult
CloudCacheSession::PutObject(const IoHash& Key, IoBuffer Object)
{
+ ZEN_TRACE_CPU("HordeClient::PutObject");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -556,6 +575,8 @@ CloudCacheSession::PutObject(const IoHash& Key, IoBuffer Object)
CloudCacheResult
CloudCacheSession::RefExists(std::string_view BucketId, const IoHash& Key)
{
+ ZEN_TRACE_CPU("HordeClient::RefExists");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -626,6 +647,8 @@ CloudCacheSession::ObjectExists(const std::set<IoHash>& Keys)
CloudCacheResult
CloudCacheSession::PostComputeTasks(std::string_view ChannelId, IoBuffer TasksData)
{
+ ZEN_TRACE_CPU("HordeClient::PostComputeTasks");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -695,6 +718,8 @@ CloudCacheSession::GetComputeUpdates(std::string_view ChannelId, const uint32_t
CloudCacheResult
CloudCacheSession::GetObjectTree(const IoHash& Key)
{
+ ZEN_TRACE_CPU("HordeClient::GetObjectTree");
+
const CloudCacheAccessToken& AccessToken = GetAccessToken();
if (!AccessToken.IsValid())
{
@@ -919,6 +944,8 @@ CloudCacheClient::~CloudCacheClient()
CloudCacheAccessToken
CloudCacheClient::AcquireAccessToken()
{
+ ZEN_TRACE_CPU("HordeClient::AcquireAccessToken");
+
using namespace std::chrono;
// If an access token was provided, return it instead of querying OAuth
diff --git a/zenserver/upstream/upstreamcache.cpp b/zenserver/upstream/upstreamcache.cpp
index 6283457e3..38179f490 100644
--- a/zenserver/upstream/upstreamcache.cpp
+++ b/zenserver/upstream/upstreamcache.cpp
@@ -13,6 +13,7 @@
#include <zencore/stats.h>
#include <zencore/stream.h>
#include <zencore/timer.h>
+#include <zencore/trace.h>
#include <zenstore/cas.h>
#include <zenstore/cidstore.h>
@@ -72,6 +73,8 @@ namespace detail {
virtual GetUpstreamCacheResult GetCacheRecord(CacheKey CacheKey, ZenContentType Type) override
{
+ ZEN_TRACE_CPU("Upstream::Horde::GetSingleCacheRecord");
+
try
{
CloudCacheSession Session(m_Client);
@@ -149,6 +152,8 @@ namespace detail {
const CacheRecordPolicy& Policy,
OnCacheRecordGetComplete&& OnComplete) override
{
+ ZEN_TRACE_CPU("Upstream::Horde::GetCacheRecords");
+
ZEN_UNUSED(Policy);
CloudCacheSession Session(m_Client);
@@ -203,6 +208,8 @@ namespace detail {
virtual GetUpstreamCacheResult GetCachePayload(const CacheKey&, const IoHash& PayloadId) override
{
+ ZEN_TRACE_CPU("Upstream::Horde::GetSingleCachePayload");
+
try
{
CloudCacheSession Session(m_Client);
@@ -232,6 +239,8 @@ namespace detail {
std::span<size_t> RequestIndex,
OnCachePayloadGetComplete&& OnComplete) override final
{
+ ZEN_TRACE_CPU("Upstream::Horde::GetCachePayloads");
+
CloudCacheSession Session(m_Client);
GetUpstreamCacheResult Result;
@@ -259,6 +268,8 @@ namespace detail {
IoBuffer RecordValue,
std::span<IoBuffer const> Payloads) override
{
+ ZEN_TRACE_CPU("Upstream::Horde::PutCacheRecord");
+
using namespace fmt::literals;
ZEN_ASSERT(CacheRecord.PayloadIds.size() == Payloads.size());
@@ -529,6 +540,8 @@ namespace detail {
virtual GetUpstreamCacheResult GetCacheRecord(CacheKey CacheKey, ZenContentType Type) override
{
+ ZEN_TRACE_CPU("Upstream::Zen::GetSingleCacheRecord");
+
try
{
ZenStructuredCacheSession Session(*m_Client);
@@ -559,6 +572,8 @@ namespace detail {
const CacheRecordPolicy& Policy,
OnCacheRecordGetComplete&& OnComplete) override
{
+ ZEN_TRACE_CPU("Upstream::Zen::GetCacheRecords");
+
std::vector<size_t> IndexMap;
IndexMap.reserve(KeyIndex.size());
@@ -623,6 +638,8 @@ namespace detail {
virtual GetUpstreamCacheResult GetCachePayload(const CacheKey& CacheKey, const IoHash& PayloadId) override
{
+ ZEN_TRACE_CPU("Upstream::Zen::GetSingleCachePayload");
+
try
{
ZenStructuredCacheSession Session(*m_Client);
@@ -652,6 +669,8 @@ namespace detail {
std::span<size_t> RequestIndex,
OnCachePayloadGetComplete&& OnComplete) override final
{
+ ZEN_TRACE_CPU("Upstream::Zen::GetCachePayloads");
+
std::vector<size_t> IndexMap;
IndexMap.reserve(RequestIndex.size());
@@ -736,6 +755,8 @@ namespace detail {
IoBuffer RecordValue,
std::span<IoBuffer const> Payloads) override
{
+ ZEN_TRACE_CPU("Upstream::Zen::PutCacheRecord");
+
ZEN_ASSERT(CacheRecord.PayloadIds.size() == Payloads.size());
const int32_t MaxAttempts = 3;
@@ -1020,6 +1041,8 @@ public:
virtual GetUpstreamCacheResult GetCacheRecord(CacheKey CacheKey, ZenContentType Type) override
{
+ ZEN_TRACE_CPU("Upstream::GetCacheRecord");
+
if (m_Options.ReadUpstream)
{
for (auto& Endpoint : m_Endpoints)
@@ -1053,6 +1076,8 @@ public:
const CacheRecordPolicy& Policy,
OnCacheRecordGetComplete&& OnComplete) override final
{
+ ZEN_TRACE_CPU("Upstream::GetCacheRecords");
+
std::vector<size_t> MissingKeys(KeyIndex.begin(), KeyIndex.end());
if (m_Options.ReadUpstream)
@@ -1098,6 +1123,8 @@ public:
std::span<size_t> RequestIndex,
OnCachePayloadGetComplete&& OnComplete) override final
{
+ ZEN_TRACE_CPU("Upstream::GetCachePayloads");
+
std::vector<size_t> MissingPayloads(RequestIndex.begin(), RequestIndex.end());
if (m_Options.ReadUpstream)
@@ -1142,6 +1169,8 @@ public:
virtual GetUpstreamCacheResult GetCachePayload(const CacheKey& CacheKey, const IoHash& PayloadId) override
{
+ ZEN_TRACE_CPU("Upstream::GetCachePayload");
+
if (m_Options.ReadUpstream)
{
for (auto& Endpoint : m_Endpoints)
@@ -1224,6 +1253,8 @@ public:
private:
void ProcessCacheRecord(UpstreamCacheRecord CacheRecord)
{
+ ZEN_TRACE_CPU("Upstream::ProcessCacheRecord");
+
ZenCacheValue CacheValue;
std::vector<IoBuffer> Payloads;