docker部署Exceptionless(.net core3.1版本)-随笔
前言
在实际的.Net Core相关项目开发中,很多人都会把NLog作为日志框架的首选,主要是源于它的强大和它的扩展性。同时很多时候我们需要集中式的采集日志,这时候仅仅使用NLog是不够的,NLog主要是负责代码中日志的落地,也就是收集程序中的日志。类似的使用ELK(Elasticsearch+Logstash+Kibana)或EFK(Elasticsearch+Filebeat+Kibana)的集中式日志管理平台负责统一采集各个应用端通过日志框架手机的日志并统一的管理和展示。但是无论是ELK还是EFK,操作都有一定的复杂度,而且这是重型武器,有时候可能还不需要这么大的排场,这时候就需要一种轻量级的解决方案,而Exceptionless正式这种轻量级的分布式日志管理平台。
概念
Exceptionless
简单的来说Exceptionless就是一款分布式日志管理框架,它可以统一收集管理并展示出来程序的日志,这样的话减少了传统开发过程中还需要去服务器查找日志的痛苦,大大提升对程序的运维效率。接下来我们先亮出来自学三件套
-
官网地址:https://exceptionless.com/
-
官方文档地址:https://exceptionless.com/docs/
-
官方Github地址:https://github.com/exceptionless/Exceptionless
目前支持JavaScript, Node, .NET Core, .NET相关应用程序的异常信息采集。为何仅支持.Net .Net Core和JS相关的?原因很简单,Exceptionless是基于.NET Core开发的。如果你有别的语言的开发需求也想使用Exceptionless,这个时候不要气馁,因为Exceptionless本质是基于http接口的形式上报数据的,这个可在官方文档上找到如何使用http上报日志信息相关
-
官方文档api地址:https://exceptionless.com/docs/api/api-getting-started/
-
api官方文档地址:https://api.exceptionless.io/
-
api官方swagger地址:https://api.exceptionless.io/docs/index.html
以上文档有针对Exceptionless通过http接口对接的所有信息,通过它可以封装自己的sdk。
NLog
相信很多同学对NLog已经相当熟悉了,它是一款日志框架,完美的支持.Net和.Net Core,它在.Net Core的流行度和使用广泛度完全不亚于之前的Log4Net,最重要的它功能很强大,而且扩展起来非常方便,它支持将日志输入到多种target形式,比如txt文件、Sql Server、MySQL、Redis、Mq、MongoDb、ElasticSearch等,几乎能想到的所有存储相关的组件,而且还支持过时日志打包压缩自动删除等高级功能,也是我个人非常推荐的一款日志框架,而且它可以直接对接到.Net Core Logger组件上,废话不多说自学N件套地址
-
官方GitHub地址:https://github.com/NLog/NLog
-
官方文档地址:https://nlog-project.org/
-
文档地址:https://github.com/NLog/NLog/wiki
-
配置相关地址:https://nlog-project.org/config/
NLog最大的优势就是强大,强大到你能用到的它几乎都支持,而且你想不到的它可能也支持了,而且使用起来也是非常的简单。作为日志框架,我觉得它是最值得一试的一款。
步骤:
1、到github下载Exceptionless .net core版本,5.0.0及以后版本都是.net core版本,我下载的是6.0.0(windows系统)
2.下载下来解压,生成 (运行 dotnet restore,dotnet build)
3.在解压后的源码文件夹打开终端,运行 docker-compose up -d
4.有外网的环境下直接运行docker命令:docker run -d --rm -it -p 5000:80 exceptionless/exceptionless:latest 即可(前提是有安装elasticsearch和redis)
参考文章:https://blog.csdn.net/weixin_39305029/article/details/105757909
https://mp.weixin.qq.com/s/eDhhR0WEJSQEadHWAKdqyA
本文来自博客园,作者:可乐加冰-Mr-Wang,转载请注明原文链接:https://www.cnblogs.com/helloworld-wang/p/14436749.html