.NET开源日志框架
NLog 是一个面向 .NET 生态的免费开源日志平台,定位是应用内日志记录框架,而不是独立的日志分析 SaaS。它支持传统文本日志和结构化日志,强调高性能、易用、可扩展与灵活配置,源码采用 BSD license。
从功能看,NLog 可以把同一个 LogEvent 写入多个目标,并允许每个目标使用不同输出格式。内置目标超过 20 种,抓取文本列出的包括文件、事件日志、数据库、控制台、邮件和调试器输出;同时还有 wrapper targets,用于缓冲、负载均衡、故障转移和异步写入。输出格式支持 Simple Text、JSON、XML、CSV 等,也可通过 layout render 增加上下文信息。配置方面,它支持配置文件和程序化配置,并可在不重启应用的情况下变更配置,也支持从 appsettings.json 加载。
NLog 覆盖面较广,支持 .NET 6 到 .NET 10、.NET Framework 3.5-4.8、.NET Core 2.0-3.1,以及 MAUI、UWP、Xamarin、Mono。Web 侧支持 ASP.NET Core 和 ASP.NET Classic。它还能完整集成 Microsoft Extensible Logging 与 ASP.NET Core,且不需要替换标准 Microsoft LoggerFactory,这对已有 .NET 项目迁移较友好。
页面明确说明 NLog 是 free open-source,采用 BSD 许可证。未看到商业版、云托管、付费支持、SLA 或企业报价信息,因此更适合团队自行集成和维护。
优点是免费、许可证宽松、目标类型丰富、配置灵活、结构化日志支持完善,并且与微软日志生态兼容。缺点是它主要解决“日志产生与投递”,抓取文本未显示日志检索、可视化、告警或集中式运维平台能力;官方商业支持与文档深度也无法仅凭文本充分判断。它适合 .NET 后端、桌面、移动和 ASP.NET 项目,用作底层日志框架。
抓取文本未提供中国大陆访问、镜像、支付或网络可用性信息,故判断为未知。若访问官网或包源不稳定,可结合 NuGet 镜像策略,并评估 Serilog、log4net、Microsoft.Extensions.Logging 或 OpenTelemetry .NET logging 等替代方案。
本测评基于公开资料整理,不构成购买建议,请以 nlog-project.org 官网实际信息为准。
成熟免费开源日志工具,.NET开发常用。
评分明细(分布与用户短评)接入中。当前展示 TG4G 综合评分,数据源自公开测评与用户反馈。