diff --git a/src/main/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactory.kt b/src/main/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactory.kt index 78e8c121c..f8552dd74 100644 --- a/src/main/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactory.kt +++ b/src/main/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactory.kt @@ -117,8 +117,8 @@ open class ResourceEditorFactory protected constructor( ) { return null } - val telemetry = getTelemetryMessageBuilder().action(TelemetryService.NAME_PREFIX_EDITOR + "open") - return try { + val telemetry = createTelemetry(editor.file) + return try { runAsync { TelemetryService.sendTelemetry(getKubernetesResourceInfo(editor.file, project), telemetry) } val resourceEditor = createResourceEditor.invoke(editor, project) resourceEditor.createToolbar() @@ -134,6 +134,19 @@ open class ResourceEditorFactory protected constructor( } } + private fun createTelemetry(file: VirtualFile): TelemetryMessageBuilder.ActionMessage { + val isLocalFile = ResourceFile.isResourceFile(file) + return getTelemetryMessageBuilder().action( + "${TelemetryService.NAME_PREFIX_EDITOR} open ${ + if (isLocalFile) { + "cluster file" + } else { + "local file" + } + } " + ) + } + private fun onProjectClosed(resourceEditor: ResourceEditor): ProjectManagerListener { return object : ProjectManagerListener { override fun projectClosing(project: Project) { diff --git a/src/test/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactoryTest.kt b/src/test/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactoryTest.kt index be951b63c..2ad71216a 100644 --- a/src/test/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactoryTest.kt +++ b/src/test/kotlin/com/redhat/devtools/intellij/kubernetes/editor/ResourceEditorFactoryTest.kt @@ -71,6 +71,7 @@ class ResourceEditorFactoryTest { private val resource = createResource(deployment) private val virtualFile: VirtualFile = mock { on { isInLocalFileSystem } doReturn true + on { path } doReturn "skywalker" } private val fileEditor: FileEditor = mock().apply {