X4 日志查看器

X4 日志查看器

X4日志监控器是一个简单的工具,用于监控X4:基石的游戏日志文件。它提供了一个图形界面来查看和筛选日志条目,使得分析游戏输出更加简便。

Utilities

X4日志监视器

X4日志监视器是一个简单的工具,用于监控X4:基石的日志文件。它提供了一个图形界面来查看和过滤日志条目,从而更容易分析游戏的输出内容。

功能特性

  • 实时日志监控
  • 使用正则表达式过滤日志条目
  • 用于过滤相同日志文件的多标签界面
  • 实时为每个标签页启用/禁用筛选器
  • 不仅监视确切的日志文件,还要监视父目录,以便在创建新日志文件时重新加载日志文件
  • 支持配置文件保存和加载 - 即带有筛选器的当前标签页
  • 离线模式 - 即从磁盘加载日志文件并解析它
  • 启动时加载默认配置
  • 支持"强制刷新"模式,如果因某种原因标准Windows文件监视器无法正常工作
  • 支持在当前筛选内容中通过Ctrl+F和F3(Enter)/Shift+F3进行简单文本搜索,以查找下一个/上一个搜索结果
  • 包含一个状态栏,显示当前日志文件名及其统计信息。此外,在离线模式下还会显示日志文件的加载进度。
  • 通过"加粗"以及在标签名称中添加通知符号"🔔",显示非聚焦标签中的更新内容。
  • 日志文件的扩展名可通过编辑配置文件进行配置。默认设置为 .log
  • 可以选择跳过日志文件中与签名相关的错误。默认情况下,该选项设置为 true
  • 新增选项,可为过滤后的内容添加"真实"时间戳。默认设置为
  • 支持自动标签功能 - 根据日志文件内容中的合适正则表达式模式自动创建标签
  • 支持多行日志条目,允许该工具处理跨越多行的日志条目

要求

Windows 10 或更高版本

安装

只需从以下地址下载一个名为X4LogWatcher.zip的文件:

然后将其解压到您想要的位置。接着,运行可执行文件来启动应用程序。

重要提示

请确保你使用适当的命令行开关启动了X4,以生成日志文件。 关于如何操作的详细信息,请参阅《如何——破解X4:基石》

注意: 请将调试日志的扩展名设置为 .log

用法

使用X4日志监视器的步骤如下:

  • 启动应用程序。

first_start

  • 使用筛选选项自定义显示的日志条目。

several_tabs

  • 保存您的个人资料,以便将来使用。

profile_management

  • 选择要监视的日志文件或选择一个目录进行查看。

common_errors_parsing

exact_ship_monitoring

多行日志条目

该工具现在可以处理跨越多行的日志条目,使读取和分析复杂日志消息更加容易。正则表达式模式可以仅应用于多行条目的第一行。自动标签和时间戳功能也遵循同样的规则。

multi-lined

自动标签功能

从版本0.6.0开始,该应用程序支持自动标签(AutoTabs)功能。此功能允许您根据日志文件内容自动创建标签页。应用程序将分析日志文件,并为每个独立条目创建标签页,从而更轻松地同时监控多个条目。

关键在于它——带有必需命名组唯一的正则表达式模式。该工具将根据此模式检查日志行,并为每个唯一匹配创建标签页。

假设我们需要为move.idle脚本添加一个自动选项卡。 日志行看起来像这样:

[脚本] 1689391.54 *** aicontext<move.idle,0x75840>: 即将完成待机。正在移动到锚点位置。

在这种情况下,正则表达式模式将看起来像 <move.idle,(?[^>]+)>:

autotabs_menu_empty

autotabs_edit_pattern

autotabs_menu_item

工具将为 unique 组的每个唯一值创建标签页。标签页将根据完整的正则表达式模式命名,并带有前缀"🔄",因此在本例中标签页名称为 🔄 <move.idle,0x75840>

autotabs_result

但你不限于一个脚本。例如,如果需要监控所有以 move. 为前缀的命令,正则表达式将类似 <move.[^,]+,(?[^>]+)>:。并且所有以 move. 为前缀的日志行将根据船对象ID分割到不同的标签页中。

已知问题

在某些情况下,应用程序可能无法检测到日志文件的变化。如果发生这种情况,你可以在菜单中启用"强制刷新"模式。这将强制应用程序定期检查日志文件的变化。 当任意注视模式启用时即可生效。

在某些情况下,过多的标签页会撑满整个工具窗口。这是因为所使用框架存在限制。因此,在这种情况下,我们需要对自动标签功能加以限制。

链接

更新日志

[0.8.0] - 2025年7月20日

  • 新增:
    • 支持多行日志条目。现在该工具可以处理跨多行的日志条目,使阅读和分析复杂的日志消息更加容易。正则表达式模式仅可应用于多行条目的第一行。

[0.7.1] - 2025年6月12日

  • 已更改:
    • 在日志文件中统一处理"标准"模式和强制刷新模式的变更。

[0.7.0] - 2025年6月12日

  • 已修复:
    • 可能的内存泄漏(感谢 toshibdib 的反馈)
    • 切换聚焦到新创建的自动分页
    • 更新标签时,其位置始终被设置为内容的末尾

[0.6.0] - 2025年04月13日

  • 已添加:
    • 自动标签功能 - 根据日志文件内容中的适当正则表达式模式自动创建标签。
  • 已更改:
    • 选项卡字体大小略微减小,以涵盖自动选项卡功能。

[0.5.0] - 2025年4月12日

  • 新增:
    • 选项,用于跳过日志文件中的签名相关错误。默认情况下,该选项设置为 true
    • 在过滤后的内容中添加"真实"时间戳的选项。默认设置为 false
    • Tab名称是否加粗,当该选项卡未处于焦点状态且其中有新更新时。
  • 已更改:
    • 标签页的字体大小略微减小了。

[0.4.1] - 2025年4月11日

  • 新增:
    • 在标签页名称上添加通知符号"🔔",如果标签页未获得焦点且其中有新更新内容。
    • 在日志文件中,匹配行后显示最多10行内容。这对在脚本中显示错误详情很有用。
    • 支持在应用程序设置中配置日志文件扩展名。
  • 修复:
    • 筛选表单中输入元素的"Tab"键顺序。
    • 编辑过滤器并启用标签后使用了错误的正则表达式
    • 暂停标签页后的额外内容清理

[0.3.0] - 2025年4月9日

  • 已添加:
    • 在当前过滤后的内容中搜索,使用Ctrl+F和F3(Enter)/Shift+F3跳转到下一个/上一个搜索结果。
    • 状态栏,显示当前日志文件名及其统计信息。
    • 加载离线模式下日志文件的进度。
  • 改进:
    • 性能 - 文件更改现在一次性加载,然后按每个标签页进行过滤。

[0.2.0] - 2025-04-08

  • 初始公开版本。

贡献指南

欢迎贡献!如果您有任何关于改进或新功能的建议,请提出议题或提交拉取请求。

许可证

本项目基于Apache License 2.0授权。详细信息请查看LICENSE文件。