Add statistics (FUS) collector for IDE Settings. At the moment - New Inference only.

This commit is contained in:
Anton Yalyshev
2019-07-23 12:37:41 +03:00
parent 56b6b957d1
commit 6d53151256
7 changed files with 44 additions and 0 deletions
@@ -0,0 +1,30 @@
/*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.idea.statistics
import com.intellij.internal.statistic.beans.UsageDescriptor
import com.intellij.internal.statistic.eventLog.FeatureUsageData
import com.intellij.internal.statistic.service.fus.collectors.ProjectUsagesCollector
import com.intellij.openapi.project.Project
import org.jetbrains.kotlin.idea.KotlinPluginUtil
import org.jetbrains.kotlin.idea.project.NewInferenceForIDEAnalysisComponent
class IDESettingsFUSCollector : ProjectUsagesCollector() {
override fun getUsages(project: Project): Set<UsageDescriptor> {
val usages = mutableSetOf<UsageDescriptor>()
val inferenceState = NewInferenceForIDEAnalysisComponent.isEnabled(project)
val data = FeatureUsageData()
.addData("enabled", inferenceState)
.addData("pluginVersion", KotlinPluginUtil.getPluginVersion())
usages.add(UsageDescriptor("newInference", data))
return usages
}
override fun getGroupId() = "kotlin.ide.settings";
override fun getVersion(): Int = 1
}
@@ -0,0 +1,3 @@
class IDESettingsFUSCollector {
// Not whitelisted
}
@@ -0,0 +1,3 @@
class IDESettingsFUSCollector {
// Not whitelisted
}
@@ -0,0 +1,3 @@
class IDESettingsFUSCollector {
// Not whitelisted
}
@@ -0,0 +1,3 @@
class IDESettingsFUSCollector {
// Not whitelisted
}
+1
View File
@@ -79,6 +79,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
<statistics.counterUsagesCollector groupId="kotlin.ide.npwizards" version="1"/>
<statistics.counterUsagesCollector groupId="kotlin.ide.debugger.eval" version="1"/>
<statistics.counterUsagesCollector groupId="kotlin.ide.j2k" version="1"/>
<statistics.projectUsagesCollector implementation="org.jetbrains.kotlin.idea.statistics.IDESettingsFUSCollector"/>
<trafficLightRendererContributor implementation="org.jetbrains.kotlin.idea.core.script.ScriptTrafficLightRendererContributor"/>
</extensions>
+1
View File
@@ -79,6 +79,7 @@ The Kotlin plugin provides language support in IntelliJ IDEA and Android Studio.
<statistics.counterUsagesCollector groupId="kotlin.ide.npwizards" version="1"/>
<statistics.counterUsagesCollector groupId="kotlin.ide.debugger.eval" version="1"/>
<statistics.counterUsagesCollector groupId="kotlin.ide.j2k" version="1"/>
<statistics.projectUsagesCollector implementation="org.jetbrains.kotlin.idea.statistics.IDESettingsFUSCollector"/>
<trafficLightRendererContributor implementation="org.jetbrains.kotlin.idea.core.script.ScriptTrafficLightRendererContributor"/>
</extensions>