Ensure telemetry data is sent as a flat map, rather than a structured one.

Этот коммит содержится в:
Conor Macpherson
2022-12-21 12:21:35 -05:00
родитель f65aa61440
Коммит 518ba17920
2 изменённых файлов: 15 добавлений и 0 удалений

Просмотреть файл

@@ -403,6 +403,12 @@ func requestTrueUpReview(c *Context, w http.ResponseWriter, r *http.Request) {
// Send telemetry data.
json.Unmarshal(reviewProfileJson, &telemetryProperties)
delete(telemetryProperties, "plugins")
plugins := reviewProfile.Plugins.ToMap()
for pluginName, pluginValue := range plugins {
telemetryProperties[pluginName] = pluginValue
}
telemetryService := c.App.Srv().GetTelemetryService()
telemetryService.SendTelemetry(model.TrueUpReviewTelemetryName, telemetryProperties)

Просмотреть файл

@@ -24,3 +24,12 @@ type TrueUpReviewPlugins struct {
ActivePluginNames []string `json:"active_plugin_names"`
InactivePluginNames []string `json:"inactive_plugin_names"`
}
func (t *TrueUpReviewPlugins) ToMap() map[string]any {
return map[string]any{
"total_active_plugins": t.TotalActivePlugins,
"total_inactive_plugins": t.TotalInactivePlugins,
"active_plugin_names": t.ActivePluginNames,
"inactive_plugin_names": t.InactivePluginNames,
}
}