diff options
author | ivanmorozov <ivanmorozov@yandex-team.com> | 2022-09-22 17:13:22 +0300 |
---|---|---|
committer | ivanmorozov <ivanmorozov@yandex-team.com> | 2022-09-22 17:13:22 +0300 |
commit | e8cdc1150f2c8f9972bcbd5468972ee8e1b6cc85 (patch) | |
tree | 1f81ee0bb8b9dea4289251023ea4ebd7d4d038e1 | |
parent | 9da11aae5d1b0db8f79c059f3c6a5aae7ccb93e9 (diff) | |
download | ydb-e8cdc1150f2c8f9972bcbd5468972ee8e1b6cc85.tar.gz |
add profile attribute into profile span
-rw-r--r-- | library/cpp/actors/wilson/wilson_profile_span.cpp | 20 | ||||
-rw-r--r-- | library/cpp/actors/wilson/wilson_profile_span.h | 3 | ||||
-rw-r--r-- | ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp | 6 |
3 files changed, 21 insertions, 8 deletions
diff --git a/library/cpp/actors/wilson/wilson_profile_span.cpp b/library/cpp/actors/wilson/wilson_profile_span.cpp index 1748b28068..177db5de83 100644 --- a/library/cpp/actors/wilson/wilson_profile_span.cpp +++ b/library/cpp/actors/wilson/wilson_profile_span.cpp @@ -27,23 +27,33 @@ void TProfileSpan::AddMin(const TString& eventId, const TString& /*info*/) { } } +TProfileSpan::TProfileSpan(const ui8 verbosity, TTraceId parentId, std::optional<TString> name) + : TBase(verbosity, std::move(parentId), name, NWilson::EFlags::AUTO_END) +{ + +} + +TProfileSpan::~TProfileSpan() { + if (Enabled) { + TBase::Attribute("profile", ProfileToString()); + } +} + TString TProfileSpan::ProfileToString() const { if (!Enabled) { return "DISABLED"; } TStringBuilder sb; - sb << "----FullDuration = " << Now() - StartTime << ";"; - sb << "----Durations:"; FlushNoGuards(); { NJsonWriter::TBuf sout; - ResultTimes.InsertValue("--current_guards_count", CurrentJsonPath.size()); - ResultTimes.InsertValue("--duration", (Now() - StartTime).MicroSeconds() * 0.000001); + ResultTimes.InsertValue("-current_guards_count", CurrentJsonPath.size()); + ResultTimes.InsertValue("-duration", (Now() - StartTime).MicroSeconds() * 0.000001); sout.WriteJsonValue(&ResultTimes, true, EFloatToStringMode::PREC_POINT_DIGITS, 6); sb << sout.Str(); } sb << ";"; - sb << "----Pairs:{"; + sb << "Pairs:{"; for (auto&& i : PairInstances) { sb << i.first << ":" << i.second.ToString() << ";"; } diff --git a/library/cpp/actors/wilson/wilson_profile_span.h b/library/cpp/actors/wilson/wilson_profile_span.h index 20bde7857c..ece1837631 100644 --- a/library/cpp/actors/wilson/wilson_profile_span.h +++ b/library/cpp/actors/wilson/wilson_profile_span.h @@ -29,6 +29,9 @@ private: void FlushNoGuards() const; TProfileSpan() = default; public: + TProfileSpan(const ui8 verbosity, TTraceId parentId, std::optional<TString> name); + ~TProfileSpan(); + using TBase::TBase; TString ProfileToString() const; diff --git a/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp b/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp index 33be9fa583..68a4dd96fd 100644 --- a/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp +++ b/ydb/core/kqp/compute_actor/kqp_scan_compute_actor.cpp @@ -124,10 +124,10 @@ public: , Snapshot(snapshot) , ShardsScanningPolicy(shardsScanningPolicy) , Counters(counters) - , KqpComputeActorSpan(NKikimr::TWilsonKqp::ComputeActor, TBase::ComputeActorSpan.GetTraceId(), "KqpScanActor", NWilson::EFlags::AUTO_END) + , KqpComputeActorSpan(NKikimr::TWilsonKqp::ComputeActor, TBase::ComputeActorSpan.GetTraceId(), "KqpScanActor") , InFlightShards(ShardsScanningPolicy, KqpComputeActorSpan) { - KqpComputeActorSpan.SetEnabled(IS_DEBUG_LOG_ENABLED(NKikimrServices::KQP_COMPUTE)); + KqpComputeActorSpan.SetEnabled(IS_DEBUG_LOG_ENABLED(NKikimrServices::KQP_COMPUTE) || KqpComputeActorSpan.GetTraceId()); YQL_ENSURE(GetTask().GetMeta().UnpackTo(&Meta), "Invalid task meta: " << GetTask().GetMeta().DebugString()); YQL_ENSURE(!Meta.GetReads().empty()); YQL_ENSURE(Meta.GetTable().GetTableKind() != (ui32)ETableKind::SysView); @@ -989,7 +989,7 @@ private: if (!sState->ActorId) { return; } - auto abortEv = MakeHolder<TEvKqp::TEvAbortExecution>(NYql::NDqProto::StatusIds::CANCELLED, "Cancel scan"); + auto abortEv = MakeHolder<TEvKqp::TEvAbortExecution>(NYql::NDqProto::StatusIds::CANCELLED, "Cancel non actual scan"); Send(sState->ActorId, abortEv.Release()); } |