mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 06:50:54 +07:00
[gradle][telemetry][IDEA-349510] cleanup in GradleDaemonOpenTelemetryUtil
GitOrigin-RevId: 58b5ff98d4db4eb3bb4b808bbbe620e4171aefa4
This commit is contained in:
committed by
intellij-monorepo-bot
parent
2cfd03bd80
commit
0d2763d208
@@ -3,12 +3,13 @@ package org.jetbrains.plugins.gradle.util.telemetry
|
||||
|
||||
import com.intellij.gradle.toolingExtension.impl.telemetry.GradleTelemetryFormat
|
||||
import com.intellij.openapi.util.Key
|
||||
import com.intellij.openapi.util.UserDataHolder
|
||||
import com.intellij.openapi.util.io.toNioPathOrNull
|
||||
import com.intellij.openapi.util.registry.Registry.Companion.`is`
|
||||
import com.intellij.openapi.util.registry.Registry.Companion.stringValue
|
||||
import com.intellij.platform.diagnostic.telemetry.impl.getOtlpEndPoint
|
||||
import com.intellij.util.text.nullize
|
||||
import org.jetbrains.annotations.ApiStatus.Internal
|
||||
import org.jetbrains.plugins.gradle.settings.GradleExecutionSettings
|
||||
import java.net.URI
|
||||
import java.nio.file.Path
|
||||
import java.util.function.Supplier
|
||||
@@ -29,40 +30,36 @@ object GradleDaemonOpenTelemetryUtil {
|
||||
val DAEMON_TELEMETRY_TARGET_ENDPOINT_KEY: Key<URI?> = Key.create("DAEMON_TELEMETRY_TARGET_ENDPOINT")
|
||||
|
||||
@JvmStatic
|
||||
fun isDaemonTracingEnabled(holder: UserDataHolder): Boolean {
|
||||
return holder.providedOrElse(DAEMON_TELEMETRY_ENABLED_KEY) {
|
||||
`is`("gradle.daemon.opentelemetry.enabled", false)
|
||||
} == true
|
||||
fun isDaemonTracingEnabled(settings: GradleExecutionSettings): Boolean {
|
||||
return settings.getUserData(DAEMON_TELEMETRY_ENABLED_KEY)
|
||||
?: `is`("gradle.daemon.opentelemetry.enabled", false)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun getTelemetryFormat(holder: UserDataHolder): GradleTelemetryFormat {
|
||||
return holder.providedOrElse(DAEMON_TELEMETRY_FORMAT_KEY) {
|
||||
fun getTelemetryFormat(settings: GradleExecutionSettings): GradleTelemetryFormat {
|
||||
return settings.providedOrElse(DAEMON_TELEMETRY_FORMAT_KEY) {
|
||||
val format = stringValue("gradle.daemon.opentelemetry.format")
|
||||
GradleTelemetryFormat.valueOf(format.uppercase())
|
||||
} ?: GradleTelemetryFormat.PROTOBUF
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun getTargetFolder(holder: UserDataHolder): Path? {
|
||||
return holder.providedOrElse(DAEMON_TELEMETRY_TARGET_FOLDER_KEY) {
|
||||
val folder = stringValue("gradle.daemon.opentelemetry.folder")
|
||||
if (folder.isBlank()) {
|
||||
return@providedOrElse null
|
||||
}
|
||||
folder.toNioPathOrNull()
|
||||
fun getTargetFolder(settings: GradleExecutionSettings): Path? {
|
||||
return settings.providedOrElse(DAEMON_TELEMETRY_TARGET_FOLDER_KEY) {
|
||||
val folder = stringValue("gradle.daemon.opentelemetry.folder").nullize()
|
||||
folder?.toNioPathOrNull()
|
||||
}
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun getTargetEndpoint(holder: UserDataHolder): URI? {
|
||||
return holder.providedOrElse(DAEMON_TELEMETRY_TARGET_ENDPOINT_KEY) {
|
||||
fun getTargetEndpoint(settings: GradleExecutionSettings): URI? {
|
||||
return settings.providedOrElse(DAEMON_TELEMETRY_TARGET_ENDPOINT_KEY) {
|
||||
val uri = getOtlpEndPoint() ?: return@providedOrElse null
|
||||
URI.create(uri)
|
||||
}
|
||||
}
|
||||
|
||||
private fun <T> UserDataHolder.providedOrElse(key: Key<T>, fn: Supplier<T?>): T? {
|
||||
private fun <T> GradleExecutionSettings.providedOrElse(key: Key<T>, fn: Supplier<T?>): T? {
|
||||
val provided = getUserData(key)
|
||||
if (provided != null) {
|
||||
return provided
|
||||
@@ -70,7 +67,7 @@ object GradleDaemonOpenTelemetryUtil {
|
||||
try {
|
||||
return fn.get()
|
||||
}
|
||||
catch (e: Exception) {
|
||||
catch (_: Exception) {
|
||||
// ignore
|
||||
return null
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user