diff --git a/YLErpWeb/Controllers/CommonController.cs b/YLErpWeb/Controllers/CommonController.cs index 67bbce1c..05983174 100644 --- a/YLErpWeb/Controllers/CommonController.cs +++ b/YLErpWeb/Controllers/CommonController.cs @@ -60,5 +60,20 @@ } } + [HttpPost] + public IActionResult LogSensors([FromBody] SensorsLogModel model) + { + var logger = LogFactory.GetLogger("SensorsDiag"); + logger.Info($"[SensorsLog] uid={model?.Uid ?? "NULL"} platform={model?.Platform ?? "NULL"} ua={model?.Ua ?? "NULL"} url={model?.Url ?? "NULL"}"); + return Ok(); + } + } + + public class SensorsLogModel + { + public string Uid { get; set; } + public string Platform { get; set; } + public string Ua { get; set; } + public string Url { get; set; } } } diff --git a/YLErpWeb/Views/Shared/_MainLayout.cshtml b/YLErpWeb/Views/Shared/_MainLayout.cshtml index 7c694e14..4a9d6388 100644 --- a/YLErpWeb/Views/Shared/_MainLayout.cshtml +++ b/YLErpWeb/Views/Shared/_MainLayout.cshtml @@ -121,6 +121,25 @@ sensors.setOnceProfile({ userId: '@CurUser.OaAccount', name: '@CurUser.UserName' }); } + // 神策诊断日志(精简版) + (function () { + try { + var diag = { + uid: '@CurUser?.UserId' || 'NULL', + platform: sensorsConfig._platformType || 'onederiv', + ua: (navigator.userAgent || '').substring(0, 50) || 'NULL', + url: location.href + }; + $.ajax({ + url: '/common/LogSensors', + type: 'POST', + contentType: 'application/json', + data: JSON.stringify(diag), + async: true + }); + } catch (e) { } + })(); + window.saTrack = function (eventName, props) { try { if (!window.sensors || !sensors.track) { return; }