diff --git a/src/lib/project-saver-hoc.jsx b/src/lib/project-saver-hoc.jsx index e73d631b8b1cbdcb6484928981e75b2904e09355..d00dff948519b413e17ab0d17fcd09164bf78a14 100644 --- a/src/lib/project-saver-hoc.jsx +++ b/src/lib/project-saver-hoc.jsx @@ -251,6 +251,7 @@ const ProjectSaverHOC = function (WrappedComponent) { if (id && this.props.onUpdateProjectThumbnail) { this.storeProjectThumbnail(id); } + this.reportTelemetryEvent('projectDidSave'); return response; }) .catch(err => { @@ -291,9 +292,15 @@ const ProjectSaverHOC = function (WrappedComponent) { */ // TODO make a telemetry HOC and move this stuff there reportTelemetryEvent (event) { - if (this.props.onProjectTelemetryEvent) { - const metadata = collectMetadata(this.props.vm, this.props.reduxProjectTitle, this.props.locale); - this.props.onProjectTelemetryEvent(event, metadata); + try { + if (this.props.onProjectTelemetryEvent) { + const metadata = collectMetadata(this.props.vm, this.props.reduxProjectTitle, this.props.locale); + this.props.onProjectTelemetryEvent(event, metadata); + } + } catch (e) { + log.error('Telemetry error', event, e); + // This is intentionally fire/forget because a failure + // to report telemetry should not block saving } }