.NET基于Eleasticsearch搭建日志系统实战演练(公开版)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 一、需求背景介绍 1.1、需求描述 大家都知道C/S架构模式的客户端应用程序(比如:WinForm桌面应用、WPF、移动App应用程序、控制台应用程序、Windows服务等等)的日志记录都存储在本地客户端中,这样就导致有时候一旦客户端出现了的异常问题,为了快速地定位对应服务端出现的位置却极其的繁琐和不方便,就需要找到当时的客户端出现异常问题的日志快照记录。

一、需求背景介绍

1.1、需求描述

大家都知道C/S架构模式的客户端应用程序(比如:WinForm桌面应用、WPF、移动App应用程序、控制台应用程序、Windows服务等等)的日志记录都存储在本地客户端中,这样就导致有时候一旦客户端出现了的异常问题,为了快速地定位对应服务端出现的位置却极其的繁琐和不方便,就需要找到当时的客户端出现异常问题的日志快照记录。 所以说为了解决实时日志监控问题,ELK提供的一套的解决方案就应运而生了 。然而真实的现状往往比你现实的想象中的还有更糟糕,很有可能在我们的项目团队中会遇到一些下面的问题:

1)、 我们公司都是Windows服务器,没有专门 Linux 运维人员!

2)、. NET项目技术成员目前对Windows系统比较熟悉,对Linux系统不太熟悉。

3)、考虑时间成本短时间内不可能开发出来一套成熟的实时日志监控系统。

那么作为.NET技术的我们该如何快速的搭建中小型企业级日志实时监控系统,解决我们的日志实时监控痛点问题!

一位伟大的领袖说过这么一句话:自己动手,丰衣足食!那么新时代的赋予了我们年轻人的使命:撸起袖子加油干!

1.2、一句话总结今天我们要解决的问题是什么?

作为.NET技术的我们如何在Windows平台上快速的搭建中小型企业级日志实时监控系统!

ps:日志主要包括系统日志、应用程序日志和安全日志。本课程所说的“日志”,如果没有特别说明,即默认指的是应用程序日志!

废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。

二、概念名称含义和解释

2.1、ELK介绍

 

2.2、ELK原理

 

2.3、为什么使用 ELK ?

 

三、实战项目在线演练和解读

3.1、在Windows上安装Elasticsearch和kibana

 

3.2、在Windows上安装Elasticsearch—Head插件。

 

3.3、在Windows上搭建Elasticsearch集群

 

3.4、如何将应用程序日志通过log4net推送到Eleasticsearch

 

3.5、如何将应用程序日志通过Nlog推送到Eleasticsearch

 

3.5、如何将应用程序日志通过NEST SKD推送到Eleasticsearch

 

3.6、聊一聊基于Eleasticsearch日志系统分布式架构的那点事

1)、两层日志平台架构设计

2)、三层日志平台架构设计

3)、WebApi服务应用程序如何接入实时日志监控平台系统。

四、总结

传统&新型的日志架构特点对比

3、结束语

五、源码在线解读和演示

 

 

 

 

作者:阿笨

      官方QQ一群(已满):422315558跟着阿笨一起玩NET

      官方QQ二群(加入):574187616跟着阿笨一起玩NET(二)

      个人讲师课堂主页:http://study.163.com/instructor/2544628.htm?share=2&shareId=2544628

      个人微信公众号课程主页:http://dwz.cn/ABenNET

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
6天前
|
Java Maven Spring
超实用的SpringAOP实战之日志记录
【11月更文挑战第11天】本文介绍了如何使用 Spring AOP 实现日志记录功能。首先概述了日志记录的重要性及 Spring AOP 的优势,然后详细讲解了搭建 Spring AOP 环境、定义日志切面、优化日志内容和格式的方法,最后通过测试验证日志记录功能的准确性和完整性。通过这些步骤,可以有效提升系统的可维护性和可追踪性。
|
8天前
|
Windows Python
如何反向读取Windows系统日志EVTX文件?
以下是如何反向读取Windows系统日志EVTX文件
19 2
|
14天前
|
存储 Linux Docker
centos系统清理docker日志文件
通过以上方法,可以有效清理和管理CentOS系统中的Docker日志文件,防止日志文件占用过多磁盘空间。选择合适的方法取决于具体的应用场景和需求,可以结合手动清理、logrotate和调整日志驱动等多种方式,确保系统的高效运行。
14 2
|
1月前
|
Java 程序员 应用服务中间件
「测试线排查的一些经验-中篇」&& 调试日志实战
「测试线排查的一些经验-中篇」&& 调试日志实战
22 1
「测试线排查的一些经验-中篇」&& 调试日志实战
|
26天前
|
关系型数据库 C# 数据库
.NET 8.0 开源在线考试系统(支持移动端)
【10月更文挑战第27天】以下是适用于 .NET 8.0 的开源在线考试系统(支持移动端)的简介: 1. **基于 .NET Core**:跨平台,支持多种数据库,前后端分离,适用于多操作系统。 2. **结合 Blazor**:使用 C# 开发 Web 应用,支持响应式设计,优化移动端体验。 3. **基于 .NET MAUI**:跨平台移动应用开发,一套代码多平台运行,提高开发效率。 开发时需关注界面设计、安全性与稳定性。
|
26天前
|
XML JSON 监控
告别简陋:Java日志系统的最佳实践
【10月更文挑战第19天】 在Java开发中,`System.out.println()` 是最基本的输出方法,但它在实际项目中往往被认为是不专业和不足够的。本文将探讨为什么在现代Java应用中应该避免使用 `System.out.println()`,并介绍几种更先进的日志解决方案。
47 1
|
1月前
|
监控 网络协议 安全
Linux系统日志管理
Linux系统日志管理
42 3
|
10天前
|
消息中间件 开发框架 .NET
.NET 8 强大功能 IHostedService 与 BackgroundService 实战
【11月更文挑战第7天】本文介绍了 ASP.NET Core 中的 `IHostedService` 和 `BackgroundService` 接口及其用途。`IHostedService` 定义了 `StartAsync` 和 `StopAsync` 方法,用于在应用启动和停止时执行异步操作,适用于资源初始化和清理等任务。`BackgroundService` 是 `IHostedService` 的抽象实现,简化了后台任务的编写,通过 `ExecuteAsync` 方法实现长时间运行的任务逻辑。文章还提供了创建和注册这两个服务的实战步骤,帮助开发者在实际项目中应用这些功能。
|
1月前
|
监控 应用服务中间件 网络安全
#637481#基于django和neo4j的日志分析系统
#637481#基于django和neo4j的日志分析系统
35 4
|
1月前
|
开发框架 NoSQL MongoDB
C#/.NET/.NET Core开发实战教程集合
C#/.NET/.NET Core开发实战教程集合