人大金仓数据库KingbaseES集群日志管理

打印 上一主题 下一主题

主题 540|帖子 540|积分 1620

关键字:

KingbaseES、日志管理、人大金仓
1.日志信息一览表

日志
日志描述
${install_dir}/kingbase/log/hamgr.log
集群repmgrd日志存放路径, ${install_dir}表示集群部署目录。 日志文件将通过系统 logrotate进行定期清算。
${install_dir}/kingbase/log/kbha.log
集群kbha日志存放路径, ${install_dir}表示集群部署目录。 日志文件将通过系统 logrotate进行定期清算。
${KINGBASE_DATA}/sys_log
数据库日志存放路径, ${KINGBASE_DATA}表示数据库目录
/var/log/message
操作系统日志
2.集群日志自动清算机制

集群中的hamgr.log和kbha.log日志文件将通过系统 logrotate日志管理工具按照巨细或周期进行日志清算,具体清算策略查看${install_dir}/kingbase/etc//logrotate_ha.conf参数文件配置。
0 0 * * * . /etc/profile;/usr/sbin/logrotate -s /opt/cluster//kingbase/bin/../etc/logrotate_status /opt/cluster//kingbase/bin/../etc/logrotate_ha.conf
[kingbase@node1 share]$ cat /opt/cluster//kingbase/bin/../etc/logrotate_ha.conf
# Generate by sys_monitor.sh at 2024年 05月 06日 星期一 10:17:30 CST
/opt/cluster//kingbase/log/kbha.log {
weekly
maxsize 100M
su kingbase kingbase
create 0600 kingbase kingbase
rotate 3
copytruncate
dateext
}
/opt/cluster//kingbase/log/hamgr.log {
weekly
maxsize 100M
su kingbase kingbase
create 0600 kingbase kingbase
rotate 3
copytruncate
dateext
}
参数说明:
weekly,日志轮换时间周期,可以按照每天(daily),每周(weekly),每月(monthly)进行日志轮换;
maxsize,限制了日志文件轮换前答应达到的最大容量,一旦日志文件超过这个阈值,将开始日志轮换;
su kingbase kingbase,表示使用什么用户进行日志轮换,默认是集群部署用户;
create 0600 kingbase kingbase,表示日志的用户属组和操作权限;
rotate,表示保存最近第频频轮换产生的日志文件,如rotate 3,表示第四次轮换时,第一个日志文件将被删除;
copytruncate,表示日志轮换之后,会将现有的日志文件情况,并将内容复制到新的日志文件中;
dateext,表示轮换的日志文件添加日志扩展名,以便区分差别轮换周期的日志文件。
3.日志分析工具

为了办理集群环境中跨节点日志关联分析困难的题目,产物推出了halog_analyse.sh日志收集分析工具。该工具可以通过配置halog_analyse.conf参数文件来自定义日志收集的节点信息,关键字,日志日期范围等,然后对收集到的各个节点日志文件进行过滤并将结果输出到文件。
工具组成
实行文件halog_analyse.sh、halog_analyse、halog_collect在 bin 目录下,halog_analyse.conf配置文件在share 目录下。
脚本名
功能说明
halog_collect
日志收集二进制实行文件,位置在bin目录下;
halog_analyse
日志分析二进制实行文件,位置在bin目录下;
halog_analyse.sh
日志收集分析实行脚本,位置在bin目录下,使用时与halog_analyse.conf参数文件配合使用,读取其中参数配置,进行自动日志收集分析
halog_analyse.conf
日志收集分析参数文件,位置在share目录下,与halog_analyse.sh配合使用
halog_analyse.conf参数文件说明

配置项
参考值
描述
loga_port
loga_port
日志收集通讯端口,默认端口65432。
begin_time
2024/01/30 14:00
必要分析的日志开始时间点,会根据本
机和各节点的时间差盘算出各节点各自
的真及时间范围。
end_time
2024/01/30 15:00
必要分析的日志竣事时间点,会根据本机和各节点的时间差盘算出各节点各自 的真及时间范围。
ip_path
/usr/sbin/
配置系统工具 ip 地点的目录。
ssh_path
/usr/bin
配置系统工具 ssh 地点的目录。
ssh_or_scmd_port
配 置 远 程 执 行 工 具 端 口 号, 默 认 为空,此时自动使用工具的默认端口。当 use_ssh=true 时,使用 ssh,其默认端口为 22;当 use_ssh=false 时,使用 sys_securecmdd,其默认端口为8890。
use_ssh
TRUE
为 true 时使用 ssh,否则使用
sys_securecmdd。
kb_bin_path
/home/kingbase/cluster/test/ test/kingbase/bin
目的节点 Kingbase bin 目录绝对路径。
network_speed_limit (暂不支持)
1024(单位 KB)
设置单个进程的最大网络传输速度,单
位 KB,0 不做限制。
memory_limit
(暂不支持)
10(单位 MB)
设置单个进程最大内存使用量,单位
MB,0 不做限制。
local_ip
10.10.10.10
本机 IP 地址(不能使用 127.0.0.1)。
anal_file_save_path
/home/kingbase/anal_files
日志收集后,保存到本地目录。
result_file
/home/kingbase/halog_analyse.result
日志分析结果文件。
log_file
/home/kingbase/halog_analyse.log
日志收集分析过程中的日志输出文件。
log_level
DEBUG,INFO,NOTICE,WARNING,ERROR, ALERT,CRITor EMERG
日志输出品级。
log_facility
STDERR,LOCAL0, LOCAL1,..., LOCAL7, USER
STDERR,LOCAL0, LOCAL1, ..., LOCAL7, USER 日志输出位置。
node_ips
192.168.28.128,
192.168.28.129
配置必要做日志分析的节点 IP 列表。
remote_user
root
登录远端节点的用户名。
file_name_*
/home/kingbase/cluster/test/test/kingbase/hamgr.log
必要做分析的日志文件列表,’*’ 为文件 编号,从 1 开始,必要修改为该文件正 确的路径。
fname_format_*
hamgr-%Y-%m-%d-%H%M%Skbha.log-%Y%m%d
文件名格式,编号必要跟 file_name 保 持一致, 默认格式已填好,不必要修改。
time_reg_*
[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}
[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}
日志文件中剖析时间字符串的正则表达 式,’*’ 必须跟 file_name 保持一致默认 正则已填好,不必要修改。
time_format_*
%Y-%m-%d %H:%M:%S
日志文件中的时间格式,’*’ 必须跟 file_name 保持一致默认的时间格式已 填好,不必要修改。
file_keyword_*
ERROR,error,FAILED,failed
必要收集的日志关键字,’*’ 必须跟 file_name 保持一致默认已支持集群切 换、节点自动规复场景的日志过滤连续 补全中。
其中,kb_bin_path、local_ip、node_ips、remote_user 必须配置后,才能使用此工具。
使用束缚

1. 必须配置本机到各节点的免密登录;
2. remote_user 对必要收集的文件有读取权限;
3. 本地用户对 anal_file_save_path 和 result_file 有读写权限;
4. 所配置的端标语没有被占用。
收集和分析日志

收集并分析日志

参考下令: ${install_dir}/bin/halog_analyse.sh halog_analyse.conf

此下令会对日志进行收集和分析,收集后的日志会存放在anal_file_save_path参数配置的路径下,分析后的结果放在result_file参数配置的文件中。在日志文件收集过程中,会收集每个节点的系统时间,然后和本机系统时间盘算一个时间差, 保存到anal_file_save_path目录下。
分析日志

如果日志文件已收集,可以实行以下下令来分析日志
参考下令: ${install_dir}/bin halog_analyse.sh halog_analyse.conf –a

分析后,所有符合条件的日志会根据时间线排序,全部输出到结果文件中。在分析过程中,会以本机的时区和系统时间自动对每个节点进行时间校准。结果文件中会自动加上已校准的时间。


  • 自治事务有如下紧张的特性:

  • 事务的独立性
主事务和自治事务相互独立,各自的 TCL 操作互不影响,即主、自治事务的 commit/
rollback 互不干涉。
如下示例:匿名块中的 rollback 不会回滚 proc1 中的 t2 语句,proc1 中的 commit 也不会提交主事务的 t1 语句:
begin
insert into test1 values (1); --t0
commit;
insert into test1 values (2); --t1
proc1('this is my error message');
rollback;
end;
/
2. 数据的可见性
a) 主事务或其他事务仅已提交的更改对自治事务可见
b) 自治事务中已提交的更改对主事务和其他事务可见
用 1 中的例子加以说明,主事务的 t1 语句未提交,对于 proc1 不可见,t0 语句已提交, 对 proc1 可见;同理,自治事务的 t2 语句被提交后对主事务可见。
3. 数据的关联性
a) 自治步调可继承主事务传递的参数
b) 自治步调可返回结果集
c) 自治事务非常可以被主事务捕获
d) 自治步调的打印等信息可直接被主事务接收,使用透明
e) 自治步调的 OUT 参数对主事务同样生效


  • 自治事务示例
包中存储过程、并传递参数
create table accounts(account_id int, balance float);
insert into accounts values (7715, 5000.5);
CREATE OR REPLACE PACKAGE pac1 AS
procedure f1(id int, n float);
END;
/
CREATE OR REPLACE PACKAGE body pac1 AS
procedure f1(id int, n float) as
pragma autonomous_transaction;
begin
insert into accounts values (id, n);
update accounts set balance = balance - 100 where account_id =id;
commit;
end;
END;
/
BEGIN
call pac1.f1(7720, 5680);
rollback;
END;
/

参考资料

《金仓数据守护集群和读写分离使用手册》

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

铁佛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表