第17章:MySQL簇 / 17.6. MySQL簇的管理 / 17.6.3. MySQL簇中生成的事件报告
17.6.3.1. 登记管理命令
17.6.3.2. 日志事件
在本节中,我们讨论了MySQL簇提供的事件日志的类型,以及记录的事件类型。

MySQL簇提供了两种事件日志。它们是cluster lognode logscluster log(簇日志)包括由所有簇节点生成的事件,node logs(节点日志)仅记录每个数据节点的本地事件。

由簇事件日志功能生成的输出可以有多个目的地,包括文件、管理服务器控制台窗口、或syslog。由节点事件日志功能生成的输出将被写入数据节点的控制台窗口。

可以对这两类事件日志进行设置,使之记录不同的事件子集。

注释:簇日志是为大多数使用场合推荐的日志,这是因为它在1个文件中提供了关于整个簇的日志信息。节点日志仅应在应用程序的开发过程中使用,或用于调试应用程序代码。

可根据三种不同的判据识别每个值得通报的事件:

·         Category(类别):可以是下述值之一:STARTUP, SHUTDOWN, STATISTICS, CHECKPOINT, NODERESTART, CONNECTION, ERROR,INFO

·         Priority(优先级):由从115的数字表示,“1”表示“最重要”,“15”表示“最不重要”。

·         Severity Level(严重级别):可以是下述值之一:ALERT, CRITICAL, ERROR, WARNING, INFO, DEBUG

无论是簇日志还是节点日志,都能根据这些属性进行过滤。

17.6.3.1. 登记管理命令

下述管理命令与簇日志有关:

·         CLUSTERLOG ON

打开簇日志。

·         CLUSTERLOG OFF

关闭簇日志。

·         CLUSTERLOG INFO

关于簇日志设置的信息。

·         node_id CLUSTERLOG category=threshold

用小于或等于threshold的优先级将category事件记录到簇日志。

·         CLUSTERLOG FILTER severity_level

将簇事件日志切换为指定的severity_level

在下表中,介绍了簇日志类别阈值的默认设置(对于所有数据节点)。如果事件的优先级值低于或等于优先级阈值,就会在簇日志中记录。

注意,事件是按数据节点通报的,可在不同的节点上设置不同的阈值。

类别

默认阈值(所有数据节点)

STARTUP

7

SHUTDOWN

7

STATISTICS

7

CHECKPOINT

7

NODERESTART

7

CONNECTION

7

ERROR

15

INFO

7

阈值用于过滤每种类别中的事件。例如,对于优先级为3STARTUP事件,不会将其记录到日志中,除非将STARTUP的阈值更改为3或更小。如果阈值为3,仅发送优先级等于或小于3的事件。

下面给出了事件的严重级别(注释:它们与Unixsyslog级别对应;但LOG_EMERGLOG_NOTICE除外,未使用或未映射它们):

1

ALERT

应立刻更正的状况,如损坏的系统数据库。

2

CRITICAL

临界状况,如设备错误或资源不足。

3

ERROR

应予以更正的状况,如配置错误等。

4

WARNING

不能称其为错误的状况,但仍需要特别处理。

5

INFO

通报性消息。

6

DEBUG

调试消息,用于NDB簇开发。

可以打开或关闭事件严重级别。如果打开了事件严重级别,那么优先级等于或低于类别阈值的事件均将被记录。如果关闭了事件严重级别,那么将不记录属于该严重级别的任何事件。

17.6.3.2. 日志事件

事件日志中记录的事件报告采用下述格式:datetime [string] severitymessage。例如:

09:19:30 2005-07-24 [NDB] INFO -- Node 4 Start phase 4 completed

本节讨论了所有值得通报的事件,按类别以及每一类别中的严重级别排序。

CONNECTION事件

这类事件与簇节点之间的连接有关。

事件

优先级

严重级别

描述

DB节点已连接

8

INFO

数据节点已连接

DB节点断开连接

8

INFO

数据节点断开连接

通信关闭

8

INFO

SQL节点或数据节点的连接已关闭

通信打开

8

INFO

SQL节点或数据节点的连接已打开

CHECKPOINT事件

下面给出的日志消息与检查点有关。

(注释:GCP =全局检查点,LCP =本地检查点)。

事件

优先级

严重级别

描述

calc keep GCI中,LCP已停止

0

ALERT

LCP已停止

本地检查点片段完成

11

INFO

片段上的LCP已完成

全局检查点完成

10

INFO

GCP完成

全局检查点启动

9

INFO

启动GCP:将REDO日志写入磁盘

本地检查点完成

8

INFO

LCP已正常完成

本地检查点启动

7

INFO

启动LCP:将数据写入磁盘

报告undo日志已封闭

7

INFO

UNDO日志已封闭:缓冲快要溢出

STARTUP事件

下述事件是在成功或失败的节点启动或簇启动时生成的。它们还提供了与启动进程进展状况有关的信息,包括与日志活动有关的信息。

事件

优先级

严重级别

描述

收到内部启动信号STTORRY

15

INFO

重启完成后收到的信息块

Undo记录已执行

15

INFO

 

新的REDO日志已启动

10

INFO

GCI保持X,最新的可恢复GCI Y

新日志已启动

10

INFO

日志部分X,启动MB Y,停止MB Z

拒绝将节点纳入簇中

8

INFO

由于配置错误、无法建立通信、或其他问题,不能将节点包含在簇中。

DB节点邻居

8

INFO

显示附近的数据节点。

DB节点启动阶段X完成

4

INFO

数据节点启动阶段已完成。

节点已被簇成功接纳

3

INFO

显示节点,管理节点,以及动态ID

DB节点启动阶段已开始

1

INFO

NDB簇节点正在启动。

DB节点的所有启动阶段已完成

1

INFO

NDB簇节点已启动。

DB节点关闭操作已启动

1

INFO

数据节点的关闭操作已开始

DB节点关闭操作失败

1

INFO

无法正常关闭数据节点。

NODERESTART事件

下述事件是在重启节点时产生的,并与节点重启进程的成功或失败相关。

事件

优先级

严重级别

描述

节点失败阶段完成

8

ALERT

通报节点失败阶段的完成

节点失败,节点状态为X

8

ALERT

通报节点已失败

通报仲裁程序结果

2

ALERT

对于仲裁尝试,有8种不同的可能结果:

·         仲裁检查失败,剩余节点少于1/2

·         仲裁检查成功,节点组多数

·         仲裁检查失败,丢失节点组

·         网络分区,要求仲裁

·         仲裁成功,来自节点X的正面回应

·         仲裁失败,来自节点X的负面回应

·         网络分区,无可用的仲裁程序

·         网络分区,未配置仲裁程序

完成了片段复制

10

INFO

 

完成了目录信息复制

8

INFO

 

完成了分配信息复制

8

INFO

 

开始复制片段

8

INFO

 

完成了所有片段的复制

8

INFO

 

GCP接收已启动

7

INFO

 

GCP接收已完成

7

INFO

 

LCP接收已启动

7

INFO

 

LCP接收已完成(状态= X

7

INFO

 

通报是否发现了仲裁程序

6

INFO

搜索仲裁程序时,有7种可能的结果:

·         管理服务器重启仲裁线程[state=X]

·         准备仲裁程序节点X [ticket=Y]

·         接收仲裁程序节点X [ticket=Y]

·         启动仲裁程序节点X [ticket=Y]

·         丢失了仲裁程序节点X – 进程失败 [state=Y]

·         丢失了仲裁程序节点X – 进程退出 [state=Y]

·         丢失了仲裁程序节点X <error msg> [state=Y]

STATISTICS事件

下述事件具有统计特性。它们提供了相应的信息,如事务和其他操作的数目,低浓度节点发送或接收的数据量,以及内存使用率等。

事件

优先级

严重级别

描述

通报作业日程统计

9

INFO

平均的内部作业日程统计

发送的字节数

9

INFO

发送至节点X的平均字节数

接收的自己#

9

INFO

从节点X接收的平均字节数

通报事务统计

8

INFO

事务数目,提交次数,读取次数,简单读取次数,写入次数,并发操作数目。属性信息,以及放弃次数

通报操作

8

INFO

操作数目

通报表创建

7

INFO

 

内存使用

5

INFO

数据内存和索引内存的使用率(80%90%100%

ERROR事件

这些事件与簇错误和告警有关,如果出现1个或多个这类事件,表明出现了重大故障或失败。

事件

优先级

严重级别

描述

因失去心跳而死亡

8

ALERT

因失去心跳而声明节点X死亡。

传输器错误

2

ERROR

 

传输器告警

8

WARNING

 

失去心跳

8

WARNING

节点X失去心跳#Y

一般性告警事件

2

WARNING

 

INFO事件

这些事件给出了关于簇状态和簇维护活动的一般信息,如日志和心跳传输等。

事件

优先级

严重级别

描述

发出心跳

12

INFO

将心跳发送至节点X

创建日志字节

11

INFO

日志部分,日志文件,MB

一般信息事件

2

INFO