WatchDog.NET开源且功能强大的实时应用监控系统

WatchDog是一个开源(MIT License)、免费、针对ASP.Net Core Web应用程序和API的实时应用监控系统。开发者可以实时记录和查看他们的应用程序中的消息、事件、HTTP请求和响应,以及运行时捕获的异常。
工作原理
它利用SignalR进行实时监控,并使用LiteDB作为无需配置的类似MongoDB的无服务器数据库,同时也支持使用外部数据库(如MSSQL、MySQL、Postgres、MongoDB)。
主要功能
实时记录并展示 HTTP 请求与响应。 实时捕获并记录应用程序在运行时产生的异常。 提供友好的日志查看界面,支持搜索和过滤功能。 支持多种数据库作为后端存储,包括 LiteDB(无服务器 MongoDB-like 数据库)以及 MSSQL、MySQL、Postgres、MongoDB 等外部数据库。
技术特点
利用 SignalR 实现实时监控。 提供丰富的配置项,如黑名单、序列化器、CORS 策略等。 支持 .NET Core 3.1 及更高版本,以及官方支持 .NET8。
项目的作用
实时监控:通过 SignalR 技术,WatchDog 能够实时地记录并展示应用程序中的各类信息,包括 HTTP 请求与响应、异常等。 异常捕获:能够捕获并记录应用程序在运行时产生的异常,帮助开发者快速定位并解决问题。 日志管理:提供了友好的日志查看界面,支持搜索、过滤等功能,方便开发者管理和分析日志数据。 扩展性强:支持多种数据库作为后端存储,同时提供了丰富的配置项,如黑名单、序列化器、CORS 策略等,满足不同开发场景的需求。
项目使用
WatchDog安装
Install-Package WatchDog.NET --version 1.4.11
WatchDog服务注册
在ASP.NET Core Web API的Program.cs中注册WatchDog服务:
services.AddWatchDogServices();
设置到外部数据库
添加数据库连接字符串并选择 DbDriver 选项:
services.AddWatchDogServices(opt => { opt.IsAutoClear = true; opt.SetExternalDbConnString = "Server=localhost;Database=testDb;User Id=postgres;Password=root;"; opt.DbDriverOption = WatchDogDbDriverEnum.PostgreSql; });
可选配置
app.UseWatchDog(opt => { opt.WatchPageUsername = "admin"; opt.WatchPagePassword = "Qwerty@123"; //Optional opt.Blacklist = "Test/testPost, api/auth/login"; //Prevent logging for specified endpoints opt.Serializer = WatchDogSerializerEnum.Newtonsoft; //If your project use a global json converter opt.CorsPolicy = "MyCorsPolicy"; opt.UseOutputCache = true; opt.UseRegexForBlacklisting = true; });
运行效果展示
项目开源地址
https://github.com/IzyPro/WatchDog
[广告]赞助链接:
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

随时掌握互联网精彩
- 全球首位QQ 256级用户诞生 腾讯公关总监:我自愧不如
- Vctgo-platform多租户 SaaS 开发框架
- 开源不足1个月 20余年老牌播放器Winamp删除全部代码!
- 马斯克强制员工每周到岗40个小时:“要不是我当初睡工厂,特斯拉早破产了!”
- 一张图看懂华为2021年年报
- 美英澳联合总结2021年勒索软件态势并提供缓解建议
- 禁止大数据杀熟,个人信息保护法今日正式施行
- 在Z|虎牙高薪诚招蓝军对抗、运营管理、安全开发等方向安全工程师
- 小米MIX4最新渲染图曝光;苹果首款OLED iPad将于2023年问世;格力将引进鸿蒙操作系统|极客头条
- 满满干货的免费课程,你不来看看吗?
- 高通宣布进一步丰富可扩展的Snapdragon Ride平台组合
- 科技垄断正在朝着纵向发展