mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 02:59:33 +07:00
IJPL-178297 Eel/IJent: enable tracing of MultiRoutingFileSystem only in benchmarks
The queue inside `com.intellij.platform.diagnostic.telemetry.exporters.BatchSpanProcessor` is unlimited, so tracing of file system request can require an additional couple of gigabytes RAM. This commit disables the tracing of MultiRoutingFileSystem in production and enables it explicitly in benchmark tests. GitOrigin-RevId: 73b91162642dec57ecfe9c758df5854cd4ed531f
This commit is contained in:
committed by
intellij-monorepo-bot
parent
b5cac17266
commit
c522eb0f2b
@@ -1,15 +1,16 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.platform.ijent.community.impl.nio.telemetry
|
||||
|
||||
import com.intellij.platform.diagnostic.telemetry.PlatformMetrics
|
||||
import com.intellij.platform.diagnostic.telemetry.Scope
|
||||
import com.intellij.platform.diagnostic.telemetry.TelemetryManager
|
||||
import com.intellij.platform.diagnostic.telemetry.TracerLevel
|
||||
import com.intellij.platform.diagnostic.telemetry.helpers.use
|
||||
import java.util.concurrent.atomic.AtomicLong
|
||||
|
||||
private val eventsCounter: AtomicLong = AtomicLong()
|
||||
|
||||
internal val ijentMetricsScope = Scope("ijent", PlatformMetrics)
|
||||
internal val ijentMetricsScope = Scope("ijent", PlatformMetrics, verbose = true)
|
||||
internal val ijentTracer by lazy { TelemetryManager.getTracer(ijentMetricsScope) }
|
||||
internal val ijentMeter = TelemetryManager.getMeter(ijentMetricsScope)
|
||||
|
||||
@@ -57,7 +58,7 @@ object Measurer {
|
||||
}
|
||||
|
||||
internal inline fun <T> Measurer.measure(operation: Measurer.Operation, body: () -> T): T {
|
||||
return ijentTracer.spanBuilder("ijent.${operation.name}").use {
|
||||
return ijentTracer.spanBuilder("ijent.${operation.name}", TracerLevel.DETAILED).use {
|
||||
eventsCounter.incrementAndGet()
|
||||
body()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user