这里会把一些敏感的参数记录下来,咱们须要屏蔽掉,如图
less
咱们但愿日志里面有当前登陆用户的信息,如图:
.net
tip:这里用的是.net非.net core插件
ExceptionlessClient.Default.Configuration.AddDataExclusions("Password", "password", "Token", "token");
日志
直接看代码/注释吧code
public class ExceptionlessConfig { public static void Configure() { //添加自定义插件 ExceptionlessClient.Default.Configuration.AddPlugin<ExceptionlessUserPlugin>(); //ExceptionlessClient.Default.Configuration.AddDataExclusions("Password", "password", "Token", "token"); } /// <summary> /// 日志添加用户信息 /// </summary> public class ExceptionlessUserPlugin : IEventPlugin { public void Run(EventPluginContext context) { IJsonSerializer serializer = context.Client.Configuration.Resolver.GetJsonSerializer(); UserInfo userInfo = 获取当前登陆用户信息; //设置用户信息 AddUser(context, userInfo, serializer); } private static void AddUser(EventPluginContext context, UserInfo userInfo, IJsonSerializer serializer) { Exceptionless.Models.Data.UserInfo user = context.Event.GetUserIdentity(serializer); if (user != null || userInfo == null) return; //设置当前登陆用户信息 context.Event.SetUserIdentity(new Exceptionless.Models.Data.UserInfo { //用户ID Identity = userInfo.UserId, //用户所在公司名--用户名 Name = $"{userInfo.CompanyName}-{userInfo.UserName}", //扩展信息 Data = new Exceptionless.Models.DataDictionary(new List<KeyValuePair<string, object>> { new KeyValuePair<string, object>("公司ID", userInfo.CompanyId), new KeyValuePair<string, object>("公司名称", userInfo.ComanyName) }) }); } } }
固然须要在Global.cs
的Application_Start
方法中调用ExceptionlessConfig.Configure();
blog
context.Event
还有不少扩展,好比添加标签、添加属性...看需求了token
overip