Tlog:录制/播放终端IO和会话的工具

系统 Linux
Tlog 是 Linux 中终端 I/O 录制和回放软件包。它用于实现一个集中式用户会话录制。它将所有经过的消息录制为 JSON 消息。录制为 JSON 格式的主要目的是将数据传送到 ElasticSearch 之类的存储服务,可以从中搜索和查询,以及回放。同时,它们保留所有通过的数据和时序。

[[223690]]

Tlog 是 Linux 中终端 I/O 录制和回放软件包。它用于实现一个集中式用户会话录制。它将所有经过的消息录制为 JSON 消息。录制为 JSON 格式的主要目的是将数据传送到 ElasticSearch 之类的存储服务,可以从中搜索和查询,以及回放。同时,它们保留所有通过的数据和时序。

Tlog 包含三个工具,分别是 tlog-rec、tlog-rec-sessiontlog-play`。

  • tlog-rec 工具一般用于录制终端、程序或 shell 的输入或输出。
  • tlog-rec-session 工具用于录制整个终端会话的 I/O,包括录制的用户。
  • tlog-play 工具用于回放录制。

在本文中,我将解释如何在 CentOS 7.4 服务器上安装 Tlog。

 

安装

在安装之前,我们需要确保我们的系统满足编译和安装程序的所有软件要求。在***步中,使用以下命令更新系统仓库和软件包。

  1. # yum update

我们需要安装此软件安装所需的依赖项。在安装之前,我已经使用这些命令安装了所有依赖包。

  1. # yum install wget gcc
  2. # yum install systemd-devel json-c-devel libcurl-devel m4

完成这些安装后,我们可以下载该工具的源码包并根据需要将其解压到服务器上:

  1. # wget https://github.com/Scribery/tlog/releases/download/v3/tlog-3.tar.gz
  2. # tar -xvf tlog-3.tar.gz
  3. # cd tlog-3

现在,你可以使用我们通常的配置和编译方法开始构建此工具。

  1. # ./configure --prefix=/usr --sysconfdir=/etc && make
  2. # make install
  3. # ldconfig

***,你需要运行 ldconfig。它对命令行中指定目录、/etc/ld.so.conf 文件,以及信任的目录( /lib/usr/lib)中最近的共享库创建必要的链接和缓存。

 

Tlog 工作流程图

Tlog working process

Tlog working process

首先,用户通过 PAM 进行身份验证登录。名称服务交换器(NSS)提供的 tlog 信息是用户的 shell。这初始化了 tlog 部分,并从环境变量/配置文件收集关于实际 shell 的信息,并在 PTY 中启动实际的 shell。然后通过 syslog 或 sd-journal 开始录制在终端和 PTY 之间传递的所有内容。

 

用法

你可以使用 tlog-rec 录制一个会话并使用 tlog-play 回放它,以测试新安装的 tlog 是否能够正常录制和回放会话。

 

录制到文件中

要将会话录制到文件中,请在命令行中执行 tlog-rec,如下所示:

  1. tlog-rec --writer=file --file-path=tlog.log

该命令会将我们的终端会话录制到名为 tlog.log 的文件中,并将其保存在命令中指定的路径中。

 

从文件中回放

你可以在录制过程中或录制后使用 tlog-play 命令回放录制的会话。

  1. tlog-play --reader=file --file-path=tlog.log

该命令从指定的路径读取先前录制的文件 tlog.log

 

总结

Tlog 是一个开源软件包,可用于实现集中式用户会话录制。它主要是作为一个更大的用户会话录制解决方案的一部分使用,但它被设计为独立且可重用的。该工具可以帮助录制用户所做的一切,并将其存储在服务器的某个位置,以备将来参考。你可以从这个文档中获得关于这个软件包使用的更多细节。我希望这篇文章对你有用。请发表你的宝贵建议和意见。 

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2018-08-27 08:43:11

Linux终端会话SVG动画

2014-05-12 10:57:41

TermRecord终端会话

2013-11-07 15:38:59

Linux命令行工具

2010-07-19 17:44:26

Telnet命令

2017-05-19 13:19:16

LinuxAsciinema终端会话

2020-06-11 07:00:00

OAuth 2.0会话管理应用安全

2022-01-27 15:37:34

Asciinema终端会话记录器开源

2021-02-15 17:00:22

Tmux管理会话Linux

2011-08-19 11:10:54

SQL Server DBCC OPENTR会话查询事务

2016-07-18 14:49:22

操作系统Linux终端操作

2019-06-11 15:46:13

screen命令Linux

2019-10-08 14:02:18

Linux命令终端会话

2021-03-02 08:49:53

tmuxLinux命令

2020-02-20 20:51:09

FedoraLinux播放音乐

2024-01-05 12:03:37

终端工具​tmux

2021-04-01 10:22:42

工具Linux文件

2021-08-05 13:20:46

Python工具工具

2022-06-19 14:23:56

Linux

2021-08-01 22:59:16

Python工具开发

2021-05-18 12:02:03

GoTTY终端工具Web
点赞
收藏

51CTO技术栈公众号