日志系统——集中日志服务(5)
一、集中日志服务
1.使用NLog、Serilog可以将日志记录到MongoDb等地方,不需要自己编写日志分析系统
2.有共有云厂商提供了日志云服务,都带分析服务
3.如果不想用云平台,想自己搭建,可以使用开源的Exceptionless或LEK等。
4.Exceptionless或LEK等有云平台,但网速较慢可以下载到服务器自己搭建。
二、Exceptionless
1.到Exceptionless官网注册,然后可以拿到apikey。
2.Nuget安装serilog的Exceptionless的包
3.在程序开始加上ExceptionlessClient.Default.Startup(“gF0rVHtu0IZrXM0LmVhZpWIreFJOWV3OZoUssW69”);
再将Serilog写入Exceptionless
WriteTo.Exceptionless()
三、创建项目
1.登陆官网
https://be.exceptionless.
io/
2.创建用户
3.添加项目选择控制台项目类型,安装包,复制apikey
4.安装上面的包,成功页面,再安装
Serilog.Sinks.Exceptionless包
5.Console代码如下
using Exceptionless;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using NLog.Extensions.Logging;
using Serilog;
using Serilog.Formatting.Json;
using System;
namespace _01_Logging
{
class Program
{
static void Main(string[] args)
{
///模拟startup实例一个ServiceCollection
ServiceCollection services = new ServiceCollection();
//注入使用apikey
ExceptionlessClient.Default.Startup("gF0rVHtu0IZrXM0LmVhZpWIreFJOWV3OZoUssW69");
services.AddLogging(
logBuilder=>
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.Enrich.FromLogContext()
.WriteTo.Console(new JsonFormatter())
//结构化的日志写入Exceptionless
.WriteTo.Exceptionless()
.CreateLogger();
logBuilder.AddSerilog();
}
);
//注册服务
services.AddScoped<SystemService>();
//通过服务构建容器,ServiceProvider类型
using (var sp = services.BuildServiceProvider())
{ ///获取容器中的服务ITestService
var test2 = sp.GetRequiredService<SystemService>();
test2.Logging();
}
}
}
}
四、运行后Exceptionless接收日志
五、源码地址
https://github.com/1768894221/Serilog_Exceptionless
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南