Tlog:录制/播放终端 IO 和会话的工具
创始人
2024-03-01 22:16:16
0

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。

安装

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

# yum update

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

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

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

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

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

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

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

Tlog 工作流程图

Tlog working process

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

用法

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

录制到文件中

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

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

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

从文件中回放

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

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

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

总结

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

关于 Saheetha Shameer (作者)

我正在担任高级系统管理员。我是一名快速学习者,有轻微的倾向跟随行业中目前和正在出现的趋势。我的爱好包括听音乐、玩策略游戏、阅读和园艺。我对尝试各种美食也有很高的热情 :-)


via: https://linoxide.com/linux-how-to/tlog-tool-record-play-terminal-io-sessions/

作者:Saheetha Shameer 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

“龙虾”应养在独立智能终端...
OpenClaw火热出圈,数据与隐私安全引发争论。 IC供图 ...
2026-03-12 13:05:02
直面Meta,千问AI眼镜...
智东西 作者 | 江宇 编辑 | 漠影 AI终端入口之争,已经在巴...
2026-03-04 19:48:28
三星S26 Ultra不支...
2026-03-03 23:21:29
AI原生手机海外首秀,AI...
3月2日,在2026年世界移动通信大会(MWC26)上,中兴通讯终...
2026-03-03 12:22:01
MWC 2026中国智造秀...
封面新闻记者 张越熙 2026年3月2日至5日,2026年世界移动...
2026-03-01 20:18:42
黄仁勋天天用的AI,刚给金...
AI又搞出大事了。 这一次,不是写文案、做图表,而是直接接管电脑、...
2026-02-28 11:19:53

热门资讯

2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用时间序列数据,用开源工具助... InfluxData 是一个开源的时间序列数据库平台。下面介绍了它是如何被用于边缘应用案例的。收集到...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Textual:为 Pytho... 快速入门使用 TextualPython 在 Linux 上有像 TkInter 这样的优秀 GUI...
硬核观察 #1245 Open... #1 OpenAI 悄然删除禁止将 ChatGPT 用于 “军事和战争” 的禁令在 1 月 10 日...