Set<MetricEvent> (@NotNull final Project project) { final Set<MetricEvent> result = new HashSet<>(); final var profileManager = InspectionProjectProfileManager.getInstance(project); result.add(PROFILES.metric(profileManager.getProfiles().size())); final var profile = profileManager.getCurrentProfile(); result.add(create(profile)); final List<ScopeToolState> tools = profile.getAllTools(); for (ScopeToolState state : tools) { InspectionToolWrapper<?, ?> tool = state.getTool(); PluginInfo pluginInfo = getInfo(tool); // not.default.state if (ENABLED.test(state)) { result.add(create(tool, pluginInfo, true)); } else if (DISABLED.test(state)) { result.add(create(tool, pluginInfo, false)); } // setting.non.default.state result.addAll(getChangedSettingsEvents(tool, pluginInfo, state.isEnabled())); // not.default.scope.and.severity final MetricEvent scopeAndSeverityEvent = getChangedScopeAndSeverityEvent(state, pluginInfo); if (scopeAndSeverityEvent != null) result.add(scopeAndSeverityEvent); } result.add(getInspectionsReportingProblemsEvent(project)); return result; }