5 个适用于 Linux 的开源日志监控和管理工具

当Linux等操作系统运行时,会发生许多事件和在后台运行的进程,以实现系统资源的高效可靠的使用。这些事件可能发生在系统软件中,例如 init 或 systemd 进程或用户应用程序,例如 Apache、MySQL、FTP 等。

为了了解系统和不同应用程序的状态以及它们如何工作,系统管理员必须每天在生产环境中检查日志文件。

您可以想象必须查看多个系统区域和应用程序的日志文件,这就是日志记录系统派上用场的地方。它们有助于监控、审查、分析,甚至根据系统管理员配置的不同日志文件生成报告。

本文[1]中,我们将了解当今 Linux 中最常用的四个开源日志管理系统,当今大多数(如果不是全部)发行版中的标准日志记录协议是 Syslog。

1. ManageEngine EventLog Analyzer

ManageEngine EventLog Analyzer 是一款本地日志管理解决方案,专为信息技术、健康、零售、金融、教育等各个行业的各种规模的企业而设计。该解决方案为用户提供基于代理和无代理的日志收集、日志解析功能、强大的日志搜索引擎和日志归档选项。

借助网络设备审核功能,它使用户能够实时监控其最终用户设备、防火墙、路由器、交换机等。该解决方案以图表和直观报告的形式显示分析数据。

EventLog Analyzer 的事件检测机制(例如事件日志关联、威胁情报、MITRE ATT&CK 框架实施、高级威胁分析等)有助于在安全威胁发生时立即发现它们。

实时警报系统会向用户发出有关可疑活动的警报,以便他们可以优先处理高风险的安全威胁。借助自动事件响应系统,SOC 可以减轻潜在威胁。

该解决方案还帮助用户遵守各种 IT 合规标准,例如 PCI DSS、ISO 27001、GLBA、SOX、HIPAA、CCPA、GDPR 等。根据监控日志源的数量提供订阅服务。通过电话、产品视频和在线知识库为用户提供支持。

alt

2. Graylog 2

GrayLog是领先的开源和健壮的集中记录管理工具,可广泛用于在包括测试和生产环境在内的各种环境中收集和审查日志。它易于设置,强烈建议小型企业使用。

alt

Graylog 可帮助您轻松从多个设备收集数据,包括网络交换机、路由器和无线接入点。它与 Elasticsearch 分析引擎集成,并利用 MongoDB 存储数据,收集的日志提供深入的见解,有助于排除系统故障和错误。

借助 Graylog,您将获得一个整洁而昏昏欲睡的 WebUI,其中带有很酷的仪表板,可帮助您无缝跟踪数据。此外,您还可以获得一组实用的工具和功能,有助于合规性审核、威胁搜索等。您可以启用通知,以便在满足特定条件或发生问题时触发警报。

总体而言,Graylog 在整理大量数据并简化数据搜索和分析方面做得相当好。最新版本是 Graylog 4.0,提供了新功能,例如深色模式、与 slack 和 ElasticSearch 7 的集成等等。

3. Logcheck

Logcheck 是另一个开源日志监控工具,作为 cron 作业运行。它会筛选数千个日志文件以检测违规或触发的系统事件。然后,Logcheck 将警报的详细摘要发送到配置的电子邮件地址,以向操作团队发出未经授权的破坏或系统故障等问题的警报。

alt

该日志系统中开发了三种不同级别的日志文件过滤,其中包括:

  • Paranoid:适用于运行尽可能少的服务的高安全性系统。
  • 服务器:这是 logcheck 的默认过滤级别,其规则是为许多不同的系统守护进程定义的。偏执级别下定义的规则也包含在该级别下。
  • 工作站:它用于受保护的系统,有助于过滤大部分消息。它还包括在偏执和服务器级别下定义的规则。

Logcheck 还能够将要报告的消息分类为三个可能的层,包括安全事件、系统事件和系统攻击警报。系统管理员可以根据过滤级别选择报告系统事件的详细级别,但这不会影响安全事件和系统攻击警报。

Logcheck提供以下功能:

  • 预定义的报告模板。
  • 一种使用正则表达式过滤日志的机制。
  • 即时电子邮件通知。
  • 即时安全警报。

4. Logwatch

Logwatch 是一个开源且高度可定制的日志收集和分析应用程序。它解析系统和应用程序日志并生成有关应用程序运行情况的报告。该报告通过命令行或专用电子邮件地址发送。

alt

您可以通过修改 /etc/logwatch/conf 路径中的参数,轻松根据自己的喜好自定义 Logwatch。它还以预先编写的 PERL 脚本的方式提供了一些额外的功能,使日志解析更加容易。

Logwatch 采用分层方法,有 3 个主要位置定义配置详细信息:

  • /usr/share/logwatch/default.conf/*
  • /etc/logwatch/conf/dist.conf/*
  • /etc/logwatch/conf/*

所有默认设置均在 /usr/share/logwatch/default.conf/logwatch.conf 文件中定义。建议的做法是保持此文件不变,而是通过复制原始配置文件,然后定义自定义设置,在 /etc/logwatch/conf/ 路径中创建您自己的配置文件。

Logwatch的最新版本是7.5.5版本,它支持直接使用journalctl查询systemd日志。如果您买不起专有的日志管理工具,Logwatch 会让您高枕无忧,因为您知道所有事件都会被记录下来,并会在出现问题时发出通知。

5. Logstash

Logstash 是一个开源服务器端数据处理管道,它接受来自多个源的数据,包括本地文件或 S3 等分布式系统。然后,它会处理日志并将其传输到 Elasticsearch 等平台,随后在其中进行分析和存档。它是一个非常强大的工具,因为它可以从多个应用程序获取大量日志,然后同时将它们输出到不同的数据库或引擎。

alt

Logstash 构建非结构化数据并执行地理位置查找、匿名化个人数据以及跨多个节点进行扩展。您可以让 Logstash 监听管道的大量数据源,包括 SNMP、心跳、Syslog、Kafka、puppet、Windows 事件日志等。

Logstash 依赖于“beats”,它们是轻量级数据传送器,将数据提供给 Logstash 进行解析和结构化等。然后数据被发送到其他目的地,例如 Google Cloud、MongoDB 和 Elasticsearch 进行索引。 Logstash 是 Elastic Stack 的关键组件,允许用户整理任何形式的数据、解析数据并在交互式仪表板上可视化。

更重要的是,Logstash 享有广泛的社区支持和定期更新。

Reference

[1]

Source: https://www.tecmint.com/best-linux-log-monitoring-and-management-tools/

本文由 mdnice 多平台发布

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python数据结构与算法】--- 递归算法应用-五行代码速解汉诺塔问题.

🌈个人主页: Aileen_0v0 🔥系列专栏:PYTHON数据结构与算法学习系列专栏💫"没有罗马,那就自己创造罗马~" 汉诺塔 两层汉诺塔的演示 三层汉诺塔的走法演示 我不知道有没有朋友跟我一样有一个疑问,如果我们顶端的先放到中间柱子呢?…

从零开始学习typescript——数据类型

数据类型 以前我们用js编写代码的时候,都是直接使用let、var、const 来定义数据类型;js会在运行时来确定数据类型,但是在ts中,可以在声明时就可以指定数据类型。如果你学过其他编程语言,比如c、java就能更好的理解了。…

上门维修安装派单系统小程序APP开发之会员级别设计深度解析

啄木鸟鲁班大师上门安装维修平台APP开发之VIP会员解析,在APP或者小程序里设置的会员叫VIP级别会员,系统一共分为4种会员,注册会员,正式会员,VIP金卡会员,VIP钻卡会员。注册用户是指注册了平台但是没有消费记…

安防视频监控管理平台EasyCVR定制首页开发与实现

视频监控平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,在视频监控播放上,TSINGSEE青犀视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流,也能支持视…

0时区格林威治时间转换手机当地时间-Android

假设传入的是2023-11-01T12:59:10.420987这样的格式 要将格式为2023-11-01T12:59:10.420987的UTC时间字符串转换为Android设备本地时间,您可以使用java.time包中的类(在API 26及以上版本中可用)。如果您的应用需要支持较低版本的Android&…

基于ubuntu20.04安装ros系统搭配使用工业相机

基于ubuntu20.04安装ros系统搭配使用工业相机 1. ROS系统安装部署1.1更新镜像源1.1.1 备份源文件1.1.2 更新阿里源1.1.3 更新软件源 1.2 ros系统安装1.2.1 添加ros软件源1.2.2 添加秘钥1.2.3 更新软件源1.2.4 配置及更换最佳软件源1.2.5 ROS安装1.2.6 初始化rosdep1.2.7 设置环…

如何使用无代码系统搭建软件平台?有哪些开源无代码开发平台?

无代码是什么 无代码开发,也称为零代码(Zero Code)开发,是一种技术概念。无代码开发无需代码基础,适合业务人员、IT开发及其他各类人员使用。他们通过无代码开发平台快速构建应用,并适应各种需求变化&#…

吴恩达《机器学习》9-4-9-6:实现注意:展开参数、梯度检验、随机初始化

一、实现注意:展开参数 在上一个视频中,讨论了使用反向传播算法计算代价函数的导数。在本视频中,将简要介绍一个实现细节,即如何将参数从矩阵展开为向量。这样做是为了在高级最优化步骤中更方便地使用这些参数。 二、梯度检验 在神经网络中…

MySQL MHA高可用配置及故障切换

一、MHA相关概念 1.什么是 MHA MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。 MHA 的出现就是解决MySQL 单点的问题。 MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。 …

pytorch中.to(device) 和.cuda()的区别

在PyTorch中,使用GPU加速可以显著提高模型的训练速度。在将数据传递给GPU之前,需要将其转换为GPU可用的格式。 函数原型如下: def cuda(self: T, device: Optional[Union[int, device]] None) -> T:return self._apply(lambda t: t.cuda…

【C++进阶之路】第八篇:智能指针

文章目录 一、为什么需要智能指针?二、内存泄漏1.什么是内存泄漏,内存泄漏的危害2.内存泄漏分类(了解)3.如何检测内存泄漏(了解)4.如何避免内存泄漏 三、智能指针的使用及原理1.RAII2.智能指针的原理3.std:…

Windows安装MongoDB

1、下载MongoDB的zip,解压 2、创建目录 mkdir D:\JavaSoftware\Database\MongoDB\mongodb-win32-x86_64-windows-5.0.8\data\db mkdir D:\JavaSoftware\Database\MongoDB\mongodb-win32-x86_64-windows-5.0.8\data\log 3、创建一个配置文件mongod.cfg&#xff0c…

7.Gin 路由详解 - 路由分组 - 路由文件抽离

7.Gin 路由详解 - 路由分组 - 路由文件抽离 前言 在前面的示例中,我们直接将路由的定义全部写在 main.go 文件中,如果后面 路由越来越多,那将会越来越不好管理。 所以,下一步我们应该考虑将路由进行分组管理,并且将其抽…

使用jmeter对接口进行简单测试

JMeter是一个开源的性能测试工具,它可以对于Web应用程序、FTP、数据库服务器等各种服务器进行性能测试和负载测试,以确定它们是否能够承受预期的负载。JMeter支持多种协议和技术,如HTTP、HTTPS、FTP、JDBC、LDAP、SOAP、JMS等。它使用Java编写…

maven pom引入依赖不报红,但是项目Dependencies中没有引入jar包

前言 小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注一下! 也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!让我们在成长的道路上互相学习&…

maven打包项目,然后给其他项目引用

A项目(这个项目需要被打包,作为被引入的项目),不需要启动类,因为作为公共模块被B项目引入: package com.yunya.mvndependontest.rest;import org.springframework.web.bind.annotation.RequestMapping; im…

kubeadm join 192.168.10.16:6443 --token xxx报错Failed to request cluster-info

1、node节点执行 kubeadm join 192.168.10.16:6443 --token hak4zi.hrib9uv4p62t1uok --discovery-token-ca-cert-hash sha256:4337638eef783ee6a66045ad699722079e071c2dfbaa21e37d3174f04d58ea97 --v2 报错 [discovery] Failed to request cluster-info, will try again: G…

Qt应用开发(进阶篇)——线程 QThread

一、前言 QThread类继承于QObject基类,是Qt经典基础工具类,QThread类提供了一种独立于平台的方式来管理线程,让开发者能够快速的完成多线程的创建和使用。 正常情况下,一个PC程序使用到多线程的概率是非常高的,在不同方…

智能座舱架构与芯片- (11) 软件篇 上

一、智能汽车基础软件平台分类 汽车软件主要分为应用软件和基础软件。应用软件和业务形态高度关联,不同控制器的应用软件之间差异较大。基础软件介于应用软件和硬件之间,用于屏蔽硬件特性、支撑应用软件。可有效地实现应用软件与硬件之间解耦&#xff0…

Kubernetes容器状态探测的艺术

在Kubernetes集群中维护容器状态更像是一种艺术,而不是科学。原文: The Art and Science of Probing a Kubernetes Container[1] 在Kubernetes集群中维护容器状态更像是一种艺术,而不是科学。 本文将带你深入理解容器探测[2],并特别关注相对较…