📜  什么是 Syslog 服务器及其工作原理?

📅  最后修改于: 2022-05-13 01:57:02.443000             🧑  作者: Mango

什么是 Syslog 服务器及其工作原理?

所有网络设备(如路由器、服务器、防火墙等)都会创建或提示有关状态和发生事件的日志。对于跟踪这些日志的小系统来说不是问题,当我们处理跟踪所有这些日志和信息变得具有挑战性的大型系统时,问题就出现了。为了克服这个问题,我们将 Syslog 与称为 Syslog 服务器(例如 Kiwi Syslog 服务器、Graylog、Solarwind Syslog 服务器等)的日志服务器结合使用。

Syslog 服务器允许我们将所有网络设备的日志信息发送到一个集中的地方。日志消息通过 UDP 端口 514 发送到 Syslog 服务器。从这里我们可以搜索、管理和归档所有日志信息。

多种设备支持 Syslog 协议,因此,它可用于记录各种类型的事件,例如来自 Web 服务器、路由器等的日志。

什么是系统日志?
Syslog 是一种用于消息记录的标准协议,计算机系统使用该协议将事件日志发送到 Syslog 服务器进行存储。在网络设备上,Syslog 可用于记录接口状态变化、系统重启等事件。可以记录许多不同类型的事件。在对问题进行故障排除、检查事故原因等时,日志是必不可少的。

在职的 :
Syslog标准定义了三个层次,即Syslog传输层、Syslog应用层和Syslog内容层。

  1. 系统日志内容层 –
    它是事件消息中包含的实际数据。它包含一些信息元素,例如设施代码和严重性级别。
  2. Syslog 应用层 –
    该层生成、解释、路由和存储消息。
  3. 系统日志传输层 –
    该层通过网络传输消息。
系统日志层

系统日志层

系统日志消息格式:

seq:timestamp: %facility-severity-MNEMONIC:description

seq 可能会或可能不会显示在实际的 Syslog 消息中。

  1. seq –表示消息顺序/顺序的序列号。
  2. 时间戳 –时间戳指示消息的生成时间。
  3. facility –一个值,指示设备上的哪个进程生成了此消息。
  4. 严重性 -一个数字,指示记录的事件的严重性。有 8 个严重级别。
  5. 助记符 –消息的简码,指示发生了什么。
  6. 描述 -有关所报告事件的详细信息。
系统日志消息格式

Syslog 消息格式示例

这是在配置路由器和交换机时可以看到的日志消息。

系统日志设施代码:

Code

Keyword

Description

0

kernkernel messages

1

useruser-level messages

2

mailmail system

3

daemonsystem daemons

4

authsecurity/authorization messages

5

syslogmessages generated internally by Syslog

6

lprline printer subsystem

7

newsnetwork news subsystem

8

uucpUUCP subsystem

9

cronclock daemon

10

authprivsecurity/authorization messages

11

ftpFTP daemon

12

ntpNTP subsystem

13

securitylog audit

14

consolelog alert

15

solaris-cronclock daemon

16-23

locallocal use 0-7 (local0-7)

在底部,我们有 16-23 的代码供本地使用,这些通常用于网络设备。

系统日志严重级别:
这很重要,因为如果我们没有严重性值,它会将所有日志消息一起发送到服务器,这是不推荐的,因为它会阻塞服务器。在严重性级别的帮助下,我们可以根据严重性选择发送哪些消息。

Level

Keyword

Description

0

EmergencySystem is unusable

1

AlertAction must be taken immediately

2

CriticalCritical conditions

3

ErrorError conditions

4

WarningWarning conditions

5

NoticeNormal but significant condition(Notifications)

6

InformationalInformational messages

7

DebuggingDebug-level messages

有 8 个严重级别,每个严重级别都有一个数字,0 表示最严重,7 表示最不严重。每个级别还有一个关键字,这是一个标识严重性级别的名称。然后是严重级别的简要说明。

  1. 0 级,紧急情况,导致系统无法使用的事件。
  2. 级别 1,警报,用于必须立即采取行动的事件。所以,这些也是非常紧急/严重的事件。
  3. 级别 2 被称为临界,其描述只是“临界条件”。相同的
  4. 3级,错误。
  5. 4 级,警告。
  6. 第 5 级,通知/通知,用于表示“正常但重要的情况”的消息。
  7. 第 6 级是“信息性”,最后是
  8. 第 7 级,是调试。这些是最不严重的信息。

系统日志服务器:
Syslog 服务器用于将 Syslog 消息从多个来源收集到一个位置。 Syslog 服务器可以是物理服务器或虚拟机。很少有组件可以让 Syslog 服务器接收、存储和解释消息。

  1. 系统日志监听器 –
    Syslog 监听器允许服务器通过收集通过 UDP 端口 514 发送的 Syslog 数据来接收通过网络发送的消息,因为 UDP 消息不被确认或不可靠,因此某些网络设备可能通过 TCP 发送 Syslog 数据以确保消息传递。
  2. 数据库——
    由于大型网络会生成大量 Syslog 数据,因此它们需要能够存储 Syslog 数据以便快速检索和方便参考。
  3. 自动化和过滤 –
    在大量数据中很难找到具体的日志条目。 Syslog 服务器允许您收集和过滤日志。

需要日志:

  1. 当我们解决问题时,日志信息非常重要和有用。例如——假设一些用户报告网络中断,因为它发生在最近的 Facebook、WhatsApp 和 Instagram 中断中,那么我们可以查看所有日志信息以查看是否有任何问题。
  2. 将日志信息存储在中心位置的另一个好处是数据保留。
  3. 它可以提供在发生故障后返回系统先前状态所需的瞬态信息。