script—实时监控服务登陆者的操作

Posted jcjone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了script—实时监控服务登陆者的操作相关的知识,希望对你有一定的参考价值。

script:命令实时监控什么人操作了什么事情。

解析:
script -t 2>time.file -a scriptfile
执行完这个命令,接下来的任何操作都会被记录。
其中的time.file是时序记录文件,记录了几秒执行的命令;scriptfile是命令执行记录文件,记录下执行是哪些命令,这两个文件名称都可以自定义。

加上-q, - -quiet 参数可以使script命令以静默模式运行,不显示script启动和exit的命令,用户可以完全察觉不到在录屏。
script -q -t 2>time.file -a scriptfile

要停下来,只用按下按下组合键 Ctrl+D 结束录制,执行exit命令也行。
$ exit

有录制就有播放,就像录视频一样,执行下面这个命令即可,时序文件在前,命令文件在后
scriptreplay time.file scriptfile

添加这个参数-d, –divisor number 可以调整播放速度的倍数(可以是小数:放慢)。
scriptreplay -d 10 time.file scriptfile

终极大招:
mkdir -p /var/log/user_record
vi /etc/profile
在文件末尾追加
# 添加登陆时自动记录
script -t -f -q 2>/var/log/user_record/$USER-$UID-`date +%Y%m%d%H%M%S`.time -a /var/log/user_record/$USER-$UID-`date +%Y%m%d%H%M%S`.his
if [ "$SHLVL" = 1 ]; then
exit
fi

这样的话在自己服务内部进行实时监控,如果有人登陆服务器,你不在公司也可以进行查看登陆者操作的所有步骤,查看的方法是:
cd /var/log/user_record
root-0-20200106212542.his root-0-20200106212921.his
# 上面这两个文件就是出发了这个监控的机制而产生的文件
tail -f root-0-20200106212542.his
# 上面的这个执行后,会显示出来后面这个his文件所有的操作记录,是动态的哦。

以上是关于script—实时监控服务登陆者的操作的主要内容,如果未能解决你的问题,请参考以下文章

业务实时监控服务概述

阿里云ECS自定义监控配置

实时同步服务

如何做实时监控?—— 参考 Spring Boot 实现(转)

Python监控远程主机的实时数据

广告业务系统 之 数据中转站 —— “日志中心-实时服务监控”