@@ -9,11 +9,13 @@ import com.intellij.openapi.project.ProjectManager
99import com.intellij.openapi.util.Disposer
1010import kotlinx.datetime.Clock
1111import kotlinx.datetime.Instant
12+ import org.apache.commons.codec.digest.DigestUtils
1213import org.digma.intellij.plugin.common.DisposableAdaptor
1314import org.digma.intellij.plugin.common.EDT
1415import org.digma.intellij.plugin.common.isProjectValid
1516import org.digma.intellij.plugin.errorreporting.ErrorReporter
1617import org.digma.intellij.plugin.log.Log
18+ import org.digma.intellij.plugin.posthog.ActivityMonitor
1719import org.digma.intellij.plugin.recentactivity.RecentActivityToolWindowShower
1820import org.digma.intellij.plugin.ui.MainToolWindowCardsController
1921import org.digma.intellij.plugin.ui.ToolWindowShower
@@ -45,11 +47,11 @@ class ReloadService : DisposableAdaptor {
4547 }
4648
4749
48- fun reloadAllProjects () {
50+ fun reloadAllProjects (source : ReloadSource ) {
4951 ProjectManager .getInstance().openProjects.forEach {
5052 try {
5153 if (isProjectValid(it)) {
52- reload(it)
54+ reload(it, source )
5355 }
5456 } catch (e: Throwable ) {
5557 Log .warnWithException(logger, it, e, " error in reload for project {}" , it)
@@ -58,7 +60,7 @@ class ReloadService : DisposableAdaptor {
5860 }
5961 }
6062
61- fun reload (project : Project ) {
63+ fun reload (project : Project , source : ReloadSource ) {
6264
6365 Log .log(logger::trace, " Reload for project {} called" , project.name)
6466
@@ -83,17 +85,24 @@ class ReloadService : DisposableAdaptor {
8385 // run the whole project reload on EDT, it may cause a short freeze, but we are aware of that.
8486 // it is necessary for finding the selected editor
8587 EDT .ensureEDT {
86- reloadImpl(project)
88+ reloadImpl(project, source )
8789 }
8890 }
8991 }
9092
91- private fun reloadImpl (project : Project ) {
93+ private fun reloadImpl (project : Project , source : ReloadSource ) {
9294
9395 if (! isProjectValid(project)) {
9496 return
9597 }
9698
99+ ActivityMonitor .getInstance(project).registerCustomEvent(
100+ " ReloadJcef" , mapOf (
101+ " source" to source.toString(),
102+ " project.hash" to DigestUtils .md2Hex(project.name)
103+ )
104+ )
105+
97106 Log .log(logger::trace, " Reloading jcef for project {}" , project.name)
98107
99108 EDT .ensureEDT {
0 commit comments