1 个不稳定版本

0.8.0 2020年12月25日

#221 in 可视化

GPL-3.0-only

125KB
3K SLoC

Sherlog

简介

Sherlog可以可视化日志文件。该程序的目标是为开发者提供一个丰富的GUI来分析他们的系统。日志文件通常以文本形式和多种格式出现。在合适的解析器集合下,Sherlog提供了一种查看和混合这些日志文件的方法,同时提供过滤和排序功能。这有助于更好地了解生成日志的系统。

Sherlog GUI screenshot

Sherlog使用日志源的概念。日志源可以代表一组子日志源,或者包含日志条目。日志源类似于文件系统中的文件夹,GUI以从文件资源管理器中熟悉的树结构来可视化它们。日志条目主要包含时间戳、严重性和文本消息。

实现状态

解析器已经完成,GUI虽然功能有限,但已经过一年多的日常使用。GUI改进和新功能的实现正在持续进行。Sherlog仍被视为beta软件,但离1.0版本不远。该程序用Rust编写,由GTK+ 3支持以显示GUI。它与Windows、Linux以及支持Rust和GTK+ 3的所有其他操作系统兼容。

如何编译

Windows

如果您还没有安装Rust,建议通过 rustup-init.exe 来安装,该软件可以在官方Rust网站上下载。选择GNU工具链 x86_64-pc-windows-gnu(其中 x86_64 是您的计算机架构,如有必要请调整)作为 默认主机三元组。您可以在初始安装期间指定此设置,也可以稍后通过 rustup 通过安装工具链 rustup toolchain install stable-x86_64-pc-windows-gnu 并通过 rustup default stable-x86_64-pc-windows-gnu 来选择它。

安装MSYS2。为了简化,本教程将假设您将其安装在目录C:\msys64中。启动MSYS2控制台C:\msys64\msys2.exe,并在该控制台中运行以下命令,确认安装提示

pacman -S mingw-w64-x86_64-gtk3
pacman -S mingw-w64-x86_64-pkg-config
pacman -S mingw-w64-x86_64-gcc

之后,您可以关闭MSYS2控制台。根据您的需求,您可以选择在Windows控制台工作,或者如果您更喜欢GNU/Linux环境,则可以使用MSYS2 Mingw控制台。

Windows控制台

打开Windows控制台(cmd.exe)。

将新安装的二进制文件添加到路径变量中。

SET PATH=%PATH%;C:\msys64\mingw64\bin

使用SETX将此更改持久化到控制台和计算机重启。

SETX PATH %PATH%

通过cd到项目文件夹并运行cargo build来构建项目。

MSYS2 Mingw控制台

启动C:\msys64\mingw64.exe控制台,并使用以下命令将cargo添加到路径变量中

PATH="${PATH}:/c/Users/${USER}/.cargo/bin"

您可能希望将此命令追加到您的.bashrc,以便在控制台和计算机重启后持久化此更改。

echo 'PATH="${PATH}:/c/Users/${USER}/.cargo/bin"' >> "/home/${USER}/.bashrc"

通过cd到项目文件夹并运行cargo build来构建项目。

Linux

在Linux上,安装Rust编译器后,构建应该可以大致无障碍地工作。

交叉编译

交叉编译,如为Windows目标在Linux主机上构建,是可能的,并且可以工作。设置这部分留给读者作为练习。

故障排除

如果构建失败,最可能的原因是gtk-rs,因为其他依赖项是普通的Rust代码,由cargo处理,不依赖于C库。在这种情况下,官方gtk-rs网站可能有所帮助。不要犹豫,加入IRC聊天,那里有很多有才能和知识丰富的开发者活跃。

依赖项

~21MB
~473K SLoC