ExceptionLess

之前也有介绍过这个框架,其实网上也有很多的资料,无论是部署还是一些详细的高级玩法都讲的很清楚也很棒,博主也学习了一些他们的博文,因为很多的东西比如本地部署别人已经写了,我再去写也不免俗套。所以这里介绍一些我在项目中玩法

有需要本地部署教程的同学可以看 这一篇博文 ,内容通俗易通,值得推荐

日志记录

相信大家的项目中日志功能已经做为基础设施里必不可少的一部分了,日志记录可以更好的用户习惯,还可以看到项目的健壮性。大多使用log4net,NLog。现在exceptionless成为了我们的新选择!

其实exceptionless给我们准备好了相应的入口,方法也是已经准备好了。

使用下面这个方法可以轻松创建一个日志提交,而tags允许我们自定义多个标签。除了Info还有多种级别比如 Debug、Warn、Error等等

/// <summary>/// 信息 /// </summary>public static void Info(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Info).AddTags(tags).Submit();}

现在在Login方法里尝试着记一下日志

        /// <summary>/// 转到登陆页面            /// </summary>/// <returns></returns>         [HttpGet]              public ActionResult Login(){ExceptionLessLog.Info("用户登录了", "我是标签一", "我是标签二");                     return View();}

可以看到现在已经同步了上来,初步的功能已经实现了

既然是基础设施,在其它的每一个层我们可能都会用到,所以应该封装一下,为什么要用接口呢?当然是以防半路换车了,飙车也要做好充足的准备才可以嘛,其实这里的参数不是很合理,因为其它的组件可能没有tags这样的参数,我们可以进行改造一下,替换成字典。不过博主公司的项目就没有这个困扰了,留给大家去做吧

   public class ExceptionLessLog :ILog{             /// <summary>/// 跟踪          /// </summary>public void Trace(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Trace).AddTags(tags).Submit();}   

        /// <summary>/// 调试            /// </summary>public void Debug(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Debug).AddTags(tags).Submit();}     

        /// <summary>/// 信息             /// </summary>public void Info(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Info).AddTags(tags).Submit();}        

        /// <summary>/// 警告          /// </summary>public void Warn(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Warn).AddTags(tags).Submit();}              /// <summary>/// 错误           /// </summary>public void Error(string message, params string[] tags){ExceptionlessClient.Default.CreateLog(message, LogLevel.Error).AddTags(tags).Submit();}}

相关文章:

  • 免费开源分布式系统日志收集框架 Exceptionless

  • 使用 Exceptionless 作为 Log Server 搭配 NLog 记录系统日志

  • 使用Elasticsearch 与 NEST 库 构建 .NET 企业级搜索

  • 为elasticsearch集成一些实用 插件以及配置的开箱即用的版本

  • Exceptionless 本地部署

原文地址:http://www.cnblogs.com/LiangSW/p/6026817.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

ExceptionLess新玩法 — 记日志相关推荐

  1. vb.net word 自定义工具栏_word重点标记新玩法:应用绘图工具手写笔进行划线涂抹...

    编按:介绍一个新玩法.用word的绘图工具直接像用笔在纸上划线勾重点那样标记文档的重点内容,效果更自然随性,不死板.注意,说的不是那个ab加一个毛笔的"文本突出显示颜色"按钮.如果 ...

  2. 苹果se2_搜狗输入法适配苹果se2,给用户带来新玩法。

    搜狗输入法,带来新玩法. 打字体验.用户A:今天,我刚收到我的新iPhone.我赶紧给好友聊天,我发信息给他们.苹果输入法打字好慢呀,好友给我推荐适合我手机的输入法--搜狗输入法.确实很不错,打字的速 ...

  3. [学习] 08 提高背书速度新玩法

    提高背书速度新玩法  背书速度提升不止7倍:组块化记忆和多线索记忆.今天要跟大家分享的是,两种特别实用的记忆诀窍:组块化记忆和多线索记忆,适用于不同的情况,记忆不同类型的知识点. 组块化记忆  我们所 ...

  4. 精准测试新玩法の基于犯罪心理学挖掘代码风险

    精准测试新玩法の基于犯罪心理学挖掘代码风险 前言 犯罪心理学还能用于挖掘代码风险? 挖掘出来的东西是什么? 挖掘出来的东东长什么样子? 挖掘出来能用来做什么? 具体怎么样挖掘呢? 这是本文的主要探讨的 ...

  5. 指数级数据增长的破局之道?“AI治数”的新玩法你不能不知道

    作者 :Awez Syed Informatica产品管理高级副总裁 ▼▼▼ "我一直很喜欢一个与国际象棋发明者有关的故事.国际象棋的发明者发明了国际象棋这个非常吸引人的游戏,于是他向国王请 ...

  6. 环境配置【jdk-sdk】-开始adb新玩法

    每天陪伴我们的手机,你真的了解"她"吗...? 你知道"她"还有许多隐藏玩法嘛...接下来让我们一起开始看看新的玩法吧 亮相吧,小宝贝儿-[adb] 1,什么是 ...

  7. ipad android tv,先河私有云持续大动作:继iPad/Android TV端/系统分享功能后,还有新玩法?...

    原标题:先河私有云持续大动作:继iPad/Android TV端/系统分享功能后,还有新玩法? 由5.1劳动节伊始,勤劳的先河小蜜蜂们(先河研发人员)可是忙疯了! 首先是经过连日来的挑灯夜战,5月18 ...

  8. 实时风格迁移,移动端运行,人脸特效又有了新玩法

    视学算法报道 转载自:机器之心 编辑:维度 人脸风格迁移出现新玩法!捷克理工大学联合 Snap 公司创建了一个用于视频中人脸风格实时迁移的框架,既不需要大型数据集和冗长训练周期,更能够在移动端运行. ...

  9. 弃 Windows 而拥抱 Linux 之后,这本书教了新玩法

    微软弃 Windows 而拥抱 Linux 之后,国内首本SQL Server On Linux的图书出版,这本书教了很多新玩法. SQL Server作为微软公司著名的数据库管理系统,多年以来一直稳 ...

最新文章

  1. 20家股东联名施压,要求贝佐斯停止向警方出售面部识别软件
  2. 数据库更新的时候不能正确的执行找错记录
  3. Visual Studio 2010 多定向的支持
  4. ionice使用说明与参数详析
  5. 月活675万 三翼鸟以三大能力“重建”行业赛道
  6. 深信服上网管理设备恢复控制台密码
  7. 《云计算:概念、技术与架构》一1.1 本书目标
  8. github 检查代码质量_Android(8): 代码质量检查
  9. wordpress数据库表详解
  10. Could not resolve host: 'localhost 报错解决办法
  11. 一步一步写算法(之排序二叉树删除-1)
  12. X86汇编语言从实模式到保护模式07:硬盘和显卡的访问控制
  13. c语言gc,使用C++制作GC Server过程详解
  14. export ‘Switch‘ (imported as ‘Switch‘) was not found in ‘react-router-dom‘
  15. vscode 清空缓存_如何清除Visual Studio Code的TypeScript的intellisense缓存?
  16. php 编码 url,php escape URL编码
  17. 用js判断空对象的几种方法
  18. MaxCompute助力小影短视频走向全球化
  19. 主流的Web应用程序平台
  20. springboot企业级进销存管理系统

热门文章

  1. 第十周项目1-程序填充与阅读(三)
  2. 通过Dapr实现一个简单的基于.net的微服务电商系统(十八)——服务保护之多级缓存...
  3. .NET 6新特性试用 | ArgumentNullException卫语句
  4. c# 按位与,按位或
  5. 本地搭建K8s环境,并配置Ingress代理(1)
  6. .Net之Swagger基础使用
  7. ASP.NET Core 开源项目 nopCommerce,一款沉淀13年的电商开源佳作!
  8. 大数据下的质量体系建设
  9. 【BCVP更新】StackExchange.Redis 的异步开发方式
  10. Asp.Net Core Blazor之容器部署