@@ -7,6 +7,7 @@ import org.digma.intellij.plugin.analytics.ReplacingClientException
77import org.digma.intellij.plugin.analytics.RestAnalyticsProvider
88import org.digma.intellij.plugin.auth.NoOpLoginHandler
99import org.digma.intellij.plugin.auth.credentials.DigmaCredentials
10+ import org.digma.intellij.plugin.common.ExceptionUtils
1011import org.digma.intellij.plugin.common.findActiveProject
1112import org.digma.intellij.plugin.errorreporting.ErrorReporter
1213import org.digma.intellij.plugin.log.Log
@@ -84,6 +85,8 @@ interface LoginHandler {
8485 return try {
8586 trace(" logout called" )
8687
88+ reportPosthogEvent(" logout" )
89+
8790 val digmaAccount = DigmaDefaultAccountHolder .getInstance().account
8891
8992 trace(" logout: found account {}" , digmaAccount)
@@ -96,20 +99,26 @@ interface LoginHandler {
9699 trace(" logout: account deleted {} " , digmaAccount)
97100 }
98101
102+ reportPosthogEvent(" logout success" )
99103 // return true only if an account was really deleted
100104 digmaAccount != null
101105
102106 } catch (e: Throwable ) {
103107 warnWithException(e, " Exception in logout {}" , e)
104108 ErrorReporter .getInstance().reportError(" ${javaClass.simpleName} .logout" , e)
109+ val errorMessage = ExceptionUtils .getNonEmptyMessage(e)
110+ reportPosthogEvent(" logout failed" , mapOf (" error" to errorMessage))
105111 false
106112 }
107113 }
108114
109115
110116 fun reportPosthogEvent (evenName : String , details : Map <String , String > = mapOf()) {
111117 findActiveProject()?.let { project ->
112- ActivityMonitor .getInstance(project).registerCustomEvent(evenName, details)
118+ val detailsToSend = details.toMutableMap()
119+ detailsToSend[" handler" ] = this .javaClass.simpleName
120+ detailsToSend[" auth" ] = " true" // a property for filtering auth events ,filter auth isSet
121+ ActivityMonitor .getInstance(project).registerAuthEvent(evenName, detailsToSend)
113122 }
114123 }
115124
0 commit comments