Abp Vnext 搭建 ELK日志记录

news2024/11/23 8:31:31

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana
安装 Elasticsearch Kibana 的方法我前面文章有写

Abp中加入Logstash

 Serilog.AspNetCore  
 Serilog.Formatting.Elasticsearch  
 Serilog.Sinks.Async 
 Serilog.Sinks.Elasticsearch
 public class Program
{
    public async static Task<int> Main(string[] args)
    {
        Log.Logger = new LoggerConfiguration()
#if DEBUG
            .MinimumLevel.Debug()
#else
            .MinimumLevel.Information()
#endif
            .Enrich.FromLogContext()
            .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
            .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning)
            .WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("Elasticsearch端口"))
             {

                 AutoRegisterTemplate = true,
                 EmitEventFailure = EmitEventFailureHandling.WriteToSelfLog |
                                       EmitEventFailureHandling.WriteToFailureSink |
                                       EmitEventFailureHandling.RaiseCallback,         
                 ModifyConnectionSettings =
                            conn =>
                            {
                                conn.ServerCertificateValidationCallback((source, certificate, chain, sslPolicyErrors) => true);
                                conn.BasicAuthentication("账号", "密码");

                                return conn;
                            }
             })
            .WriteTo.Console()
            .WriteTo.Async(c => c.File($@"{AppContext.BaseDirectory}Log/log.log"))
            .WriteTo.Async(c => c.Console())
            .CreateLogger();
            // 也可以修改默认日志 和控制台打印 

        try
        {
            Log.Information("Starting CloudMgt.HttpApi.Host.");
            var builder = WebApplication.CreateBuilder(args);
            builder.Host.AddAppSettingsSecretsJson()
                .UseAutofac()
                .UseSerilog();
            await builder.AddApplicationAsync<CloudMgtHttpApiHostModule>();
            var app = builder.Build();
            await app.InitializeApplicationAsync();
            await app.RunAsync();
            return 0;
        }
        catch (Exception ex)
        {
            Log.Fatal(ex, "Host terminated unexpectedly!");
            return 1;
        }
        finally
        {
            Log.CloseAndFlush();
        }
    }
}

Kibana 查看日志

kibana新建索引 logstash-*
在这里插入图片描述
然后点击下一步即可 我这边是已经创建完毕了
查看日志
在这里插入图片描述
这样咱们就完成ELK 的初步搭建和 后续学习 ES ,因为一个好的架构是采用到合适的技术栈才有用,采用ELK理由
1 在Docker 中部署应用查看起日志起来比较麻烦 因为是多个API 端口会导致排查线上问题很慢
2 ELK也是比较成熟的方案
3 后续需要考虑到的问题 ELK 日志服务需要单独部署出来
4 对于 ES 准备采用独立服务器的模式
学习总结 :追求好的架构的情况下 要保证系统的稳定性和健壮性 这个的考虑是要优先级高于一些所谓高大上技术的,下一步进军WPF。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/622820.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法与数据结构(四)

一、哈希表 1、哈希表在使用层面上可以理解为一种集合结构 2、如果只有key&#xff0c;没有伴随数据value&#xff0c;可以使用HashSet结构(C中叫UnOrderedSet) 3、如果既有key&#xff0c;又有伴随数据value&#xff0c;可以使用HashMap结构(C中叫UnOrderedMap) 4、有无伴随数…

【C++】4.多媒体库:SFML库入门

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍SFML库使用。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习知识&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&#…

新能源车加速内卷,下一程拼什么

近日&#xff0c;一则长城汽车举报比亚迪的消息&#xff0c;瞬间刷爆了整个汽车圈&#xff0c;行业外对于这个事情多少有点懵&#xff0c;但业内对此却并不感到意外。如果说去年前年国内新能源汽车的“较量”&#xff0c;还是争夺入选资格的话&#xff0c;如今这种级别的“较量…

TensorFlow2进行CIFAR-10数据集动物识别,保存模型并且进行外部下载图片测试

首先&#xff0c;你已经安装好anaconda3、创建好环境、下载好TensorFlow2模块并且下载好jupyter了&#xff0c;那么我们就直接打开jupyter开始进行CIFAR10数据集的训练。 第一步&#xff1a;下载CIFAR10数据集 下载网址&#xff1a;http://www.cs.toronto.edu/~kriz/cifar-10…

【Vue.js】对Vue-element-admin做代理网关转发proxy配置

文章目录 环境配置配置vue.config.js演示为啥要这么做呢&#xff1f; 环境配置 .env.development # 开发环境 .env.production # 生产环境我们需要在两个环境变量文件中配置 VUE_APP_BASE_API /dev # 这里配置全局的API前置标识 开发环境我使用的/dev 生产环境用的是/prod V…

Word控件Spire.Doc 【其他】教程(8):在 Word 中嵌入多媒体文件

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下&#xff0c;轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具&#xff0c;专注于创建、编辑、转…

物联网开发中常用的几款传感器

传感器是物联网中的关键部件&#xff0c;在物联网开发中发挥着重要作用。目前&#xff0c;市场上的传感器种类繁多&#xff0c;它们有许多用途。有些传感器可能主要用于测量温度、压力、流量等物理量&#xff0c;有些则用于测量位置、距离、速度和加速度等物理量&#xff0c;还…

干货第一弹!多组学联合分析之代谢组FAQ

代谢组是对生物体内代谢产物全谱分析的一种研究手段&#xff0c;代谢产物包括核酸、蛋白质、脂类生物大分子以及其他小分子物质&#xff0c;目前主要是检测1000Da以下的物质。代谢组研究具有高通量的检测能力、高灵敏度和准确度、非侵入性、非破坏性、全面性、数据资源整合等特…

DIY制作隔离信号注入变压器

最近在学习模电知识&#xff0c;接触到了测量运放环路增益&#xff0c;需要使用合适的注入变压器&#xff0c;查找资料发现商用信号注入变压器价格昂贵&#xff0c;不适合个人学习使用。看到LOTO使用普通音频变压器做测试&#xff0c;也跟技术群友做了交流&#xff0c;尝试使用…

企业构建高性能Web应用的重要组件

目 录 01 出现背景 ‍‍‍‍‍‍‍ 02 PrimetonLB、PrimetonMemDB在高性能Web应用中的作用 03 与PAS的集成‍‍ 04 优势体现 05 总结 01 出现背景‍ 随着互联网的快速发展和普及&#xff0c;各类Web应用已成为人们日常生活的重要组成&#xff0c;人们对Web应用的要求从过去的…

使用QMenu和mousePressEvent制作右键弹出菜单

我需要实现一个在QTextBrowser上邮件弹出菜单的效果&#xff0c;如下所示&#xff1a; 创建QTextBrowser的子类MyTextBrowser 首先创建一个QTextBrowser的子类&#xff0c;MyTextBrowser&#xff0c;如下所示&#xff1a;并定义一个QMenu指针 #ifndef MYTEXTBROWSER_H #defin…

webpack打包处理字体图标、map4、map3、avi资源

一、字体图标资源的下载&#xff08;阿里巴巴图标库&#xff09; iconfont官网&#xff1a;https://www.iconfont.cn/ 这里你可以搜索你想要的字体图标&#xff0c;或者选择官方的图标库中查找&#xff0c;我这里就以官方的图标库为例&#xff1a; 选择几个加入购物车 点…

关于libc++_shared.so 与libstdc++、libc++的链接关系

问题点1: -lstdc 与libc_shared.so的关联; 当在makefile中引入-lstdc时&#xff0c;其意味着调用动态库libstdc.so, Note&#xff1a;动态库libstdc.so 所对应的静态库是libstdc.a; Note&#xff1a;当前测试libstdc.so来自于Android12的./prebuilts/gcc/linux-x86/host/x8…

图数据库实践 - 如何将图数据库应用于供应链管理

导读 当前&#xff0c;随着全球化的加速和供应链的复杂性增加&#xff0c;供应链风险管理已经成为企业日常运营中不可忽视的重要方面。由于自然灾害、贸易保护、供应商更迭等因素的影响&#xff0c;供应链中的任何一个环节出现问题都可能导致生产中断、物流延误、成本增加&…

结构型设计模式06-桥接模式

&#x1f9d1;‍&#x1f4bb;作者&#xff1a;猫十二懿 ❤️‍&#x1f525;账号&#xff1a;CSDN 、掘金 、个人博客 、Github &#x1f389;公众号&#xff1a;猫十二懿 桥接模式 1、桥接模式模式介绍 桥接模式&#xff08;Bridge Pattern&#xff09;是一种结构型模式之一…

ssm+java+mysql在线捐赠系统

本系统实现一个在线捐赠系统&#xff0c;分为用户和管理员两种用户。具体功能描述如下&#xff1a; 后台管理员模块包括&#xff1a; 1. 系统用户管理&#xff1a;此功能为超级管理员所有&#xff0c;普通管理员没有此权限&#xff0c;实现超级管理员可以对普通管理员信息的…

如和使用matlab进行求导 ,入门级教程

文章目录 问题如图所示运行结果如图代码分析完整代码完结撒花 问题如图所示 运行结果如图 代码分析 % 定义样本数量 n 500;这行代码定义了一个变量 n&#xff0c;它代表样本数量。这个变量在后面的代码中会被用到。 % 将 s 和 z 取值范围分成子区间的个数 num_intervals 40…

MySQL数据库迁移到ORACLE(持续更新)

1. 使用Oracle SQL Developer 官方 SQL Developer 23.1下载 选择Windows 64-bit with JDK 11 included安装 2.下载后解压&#xff0c;选择exe执行启动&#xff0c;启动后见图 3. 创建连接 默认支持创建Oracle连接&#xff08;见下图&#xff09;&#xff0c;第三方连接需导入…

企业微信自建应用 挂载网页步骤

打开企业微信网页端&#xff0c;并登录 企业微信 https://work.weixin.qq.com/wework_admin/frame#index 点击应用管理 再次点击 应用&#xff0c;划到自建版块&#xff0c;点击创建应用 依次添加应用信息 点击创建应用&#xff0c; 添加指定网页信息

【Android Studio】Flamingo版本 更新gradle插件(AGP) 7.+到8.+

步骤 build.gradle(module) android {namespace //adddefaultConfig {applicationId }}AndroidManifest.xml 取消package属性 <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/andr…