zoukankan      html  css  js  c++  java
  • 『简易日志』NuGet 日志包 SimpleLogger

    简易日志NuGet 日志包 SimpleLogger

    独立观察员 2020 年 7 月 7 日

    一、概述

    目前,.NET 框架下,主流的日志组件大致就是 Nlog 和 Log4Net 了,功能比较强大,但总感觉太重了,学习他们的配置规则也是个门槛。当然还有这两者的各种封装变种,以及似乎在 .NET Core 中比较流行的微软官方的 Microsoft.Extensions.Logging,具体没怎么使用过,不好评价。(说到变种,本人曾经也改造过一个 log4net 的版本:https://gitee.com/dlgcy/YTLog ,感兴趣的可以试试)。

    其实,对于个人项目或者较小的项目,我们实际只需要将日志内容写入文本文件即可。本人制作的这个 “简易日志 (SimpleLogger)” 包里面包含的代码逻辑,最开始也就是简单地写入文本,后来经过实际使用的演化,做了各种优化,添加了一些实用的特性,感觉用着还不错。正所谓独乐乐不如众乐乐,于是将其打包上传到微软的包管理库 NuGet 中,大家可以使用试试,相互交流。核心代码已托管在码云了:https://gitee.com/dlgcy/dotnetcodes/blob/dlgcy/DotNet.Utilities/ 日志 / LogHelper.cs 。

    二、使用方法

    1、配置(可选)

    配置不是必须的,只有当对于目录、前缀、单条最大长度、保留天数这几项有定制需求时才需要调用 LogHelper.Config () 方法进行配置:

    该方法应该在应用程序的启动初期调用,且之后不再调用,建议在程序入口的静态方法中调用。

    2、使用

    使用 “简易日志 (SimpleLogger)” 记录日志是很容易的,只需调用 LogHelper.Write () 方法即可:

    可以看到最少只需传递一个日志内容参数即可。另外还支持是否空行,以及记录调用方信息。

    如果之前程序中都是 Console.Write() 这样的,您也无需批量替换,LogHelper 中附带了将控制台信息重定向到日志的辅助类(ConsoleWriter)供您使用:

    三、特色

    总体来说,” 简易日志 (SimpleLogger)” 拥有如下特色:

    (1) 免配置使用;

    (2) 便捷配置:指定路径、前缀、单条最大长度、保留天数;

    (3) 按日期分文件、自动记录时间和调用信息、连续重复内容仅计数。

    着重说一下 “连续重复内容仅计数” 特性,意思就是如果有连续的重复内容,则 “简易日志 (SimpleLogger)” 不会直接输出多条重复内容,仅输出第一条,后续的内容只记录时间和重复到第几次,并且不换行,直到碰到下一条不同的内容为止,效果见下一节。

    四、效果展示

    不同程序配置到不同目录:

    日志文件按照日期分开:

    自动记录时间和调用信息:

    清理指定天数之前的日志(需配置,默认不清理):

    单条最大长度限制:

    连续重复内容仅计数(156、157 行):

    五、NuGet 包

    https://www.nuget.org/packages/SimpleLogger_dlgcy/

    支持 .NET Framework 和 .NET Standard(包括 .NET Core),NuGet 包管理器中直接搜索 “简易日志” 即可安装使用:

    .NET Framework 项目安装时如果提示源中找不到,可以编辑项目文件,添加上

    <PackageReference Include=”SimpleLogger_dlgcy” Version=”1.0.7″ />

    祝大家使用愉快!

    同步首发:

    http://dlgcy.com/simple-logger/

    微信订阅号

  • 相关阅读:
    JAVA 注解的几大作用及使用方法详解
    内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
    关于Hash集合以及Java中的内存泄漏
    ifconfig命令详情
    route命令详情
    ping命令详解
    scp命令详解
    ssh命令详解
    telnet命令详解
    sudo命令详解
  • 原文地址:https://www.cnblogs.com/weiliuhong/p/simple-logger.html
Copyright © 2011-2022 走看看