场景我们经常远程连接服务器去查看日志,比较麻烦,如果直接访问项目的某个页面就能实时查看日志就比较奈斯了,花了1天研究了下.netcore日志的原理,结合blazor实现了基本效果。实现原理自定义日志提供器,将日志记录到内存中,滚动10W条删除。提供blazor组件,实时从内存中读取后显示,搞了个简单的条件搜索。为毛用内存存储?因为快,主要目的是实时监控,方便调试,只需要最近一段时间的数据,所以内存是最合适的。由于数据是存储在全局静态变量中的(线程安全的),所以多个人同时打开页面查看日志其实看的是同一份数据。这个库默认提供了与.netcore默认的日志框架的继承,但你也可以用自己的方式把数据存储
场景我们经常远程连接服务器去查看日志,比较麻烦,如果直接访问项目的某个页面就能实时查看日志就比较奈斯了,花了1天研究了下.netcore日志的原理,结合blazor实现了基本效果。实现原理自定义日志提供器,将日志记录到内存中,滚动10W条删除。提供blazor组件,实时从内存中读取后显示,搞了个简单的条件搜索。为毛用内存存储?因为快,主要目的是实时监控,方便调试,只需要最近一段时间的数据,所以内存是最合适的。由于数据是存储在全局静态变量中的(线程安全的),所以多个人同时打开页面查看日志其实看的是同一份数据。这个库默认提供了与.netcore默认的日志框架的继承,但你也可以用自己的方式把数据存储
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面学习ASP.NETCoreBlaz
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面 在学习ASP.NETC
学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(中)学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(下) 学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(完)学习ASP.NETCoreBlazor编程系列三——实体学习ASP.NETCoreBlazor编程系列四——迁移学习ASP.NETCoreBlazor编程系列五——列表页面 在学习ASP.NETC