@@ -86,6 +86,7 @@ namespace {
8686 const TInterconnectProxyCommon::TPtr Common;
8787 const bool MergePerDataCenterCounters;
8888 const bool MergePerPeerCounters;
89+ const bool HasSessionCounters;
8990 NMonitoring::TDynamicCounterPtr Counters;
9091 NMonitoring::TDynamicCounterPtr PerSessionCounters;
9192 NMonitoring::TDynamicCounterPtr PerDataCenterCounters;
@@ -102,6 +103,7 @@ namespace {
102103 : Common(common)
103104 , MergePerDataCenterCounters(common->Settings.MergePerDataCenterCounters)
104105 , MergePerPeerCounters(common->Settings.MergePerPeerCounters)
106+ , HasSessionCounters(!MergePerDataCenterCounters && !MergePerPeerCounters)
105107 , Counters(common->MonCounters)
106108 , AdaptiveCounters(MergePerDataCenterCounters
107109 ? PerDataCenterCounters :
@@ -248,7 +250,7 @@ namespace {
248250 PerDataCenterCounters = Counters->GetSubgroup (" dataCenterId" , *DataCenterId);
249251 }
250252
251- const bool updatePerSession = !PerSessionCounters || updatePerDataCenter;
253+ const bool updatePerSession = HasSessionCounters && ( !PerSessionCounters || updatePerDataCenter) ;
252254 if (updatePerSession) {
253255 auto base = MergePerDataCenterCounters ? PerDataCenterCounters : Counters;
254256 PerSessionCounters = base->GetSubgroup (" peer" , *HumanFriendlyPeerHostName);
@@ -263,12 +265,12 @@ namespace {
263265 false ;
264266
265267 if (updatePerSession) {
266- Connected = PerSessionCounters ->GetCounter (" Connected" );
267- Disconnections = PerSessionCounters ->GetCounter (" Disconnections" , true );
268- ClockSkewMicrosec = PerSessionCounters ->GetCounter (" ClockSkewMicrosec" );
269- Traffic = PerSessionCounters ->GetCounter (" Traffic" , true );
270- Events = PerSessionCounters ->GetCounter (" Events" , true );
271- ScopeErrors = PerSessionCounters ->GetCounter (" ScopeErrors" , true );
268+ Connected = AdaptiveCounters ->GetCounter (" Connected" );
269+ Disconnections = AdaptiveCounters ->GetCounter (" Disconnections" , true );
270+ ClockSkewMicrosec = AdaptiveCounters ->GetCounter (" ClockSkewMicrosec" );
271+ Traffic = AdaptiveCounters ->GetCounter (" Traffic" , true );
272+ Events = AdaptiveCounters ->GetCounter (" Events" , true );
273+ ScopeErrors = AdaptiveCounters ->GetCounter (" ScopeErrors" , true );
272274
273275 for (const auto & [id, name] : Common->ChannelName ) {
274276 OutputChannels.try_emplace (id, Counters->GetSubgroup (" channel" , name), Traffic, Events);
0 commit comments