2 个版本

0.1.1 2024 年 7 月 2 日
0.1.0 2022 年 12 月 19 日

#836命令行工具

Apache-2.0

590KB
12K SLoC

RTLola logo

RTLola 解释器 CLI

Crate API License

RTLola 是一个运行时监控框架。它包括用于 RTLola 规范语言的解析器、分析器和解释器。这个包包含了一个能够读取 csv 和 pcap 文件的解释器命令行接口。

尝试

rtlola-cli help

有关 RTLola 框架的更多信息,请确保访问我们的网站: rtlola.org

安装说明

如果您想使用网络接口,请确保编译时启用 pcap_interface 功能。在这种情况下需要 PCAP 库。如果它还没有安装到您的系统上,您可以按照以下步骤进行

Windows

您可以从这里下载并安装库: NPcap

Linux

使用您选择的包管理器安装 libpcap-dev 包。例如使用 apt

apt install libpcap-dev

Mac OS

PCAP 库已经包含在 Mac OS X 中。

命令行使用

规范分析

rtlola-cli analyze [SPEC]

检查给定的规范是否有效

监控

rtlola-cli monitor [SPEC] --offline relative --csv-in [TRACE] --verbosity trigger

例如,给定以下规范

input a: Int64
input b: Int64

output x := a + b
trigger x > 2

在文件 example.spec 中,以及 CSV

a,b,time
0,1,0.1
2,3,0.2
4,5,0.3

在文件 example.csv 中,我们得到

rtlola-interpreter monitor example.spec --offline relative --csv-in example.csv 
Trigger: x > 2
Trigger: x > 2

使用 rtlola-cli help monitor 查看所有可用选项

时间表示

RTLola解释器支持其输入和输出中的多种时间表示。如果在离线模式下运行,即从输入源解析事件的时间,必须在输入中设置时间的格式。以下选项被支持

相对时间戳

时间被视为相对于一个固定时间点的时间戳。将这个时间点称为x,则在上述示例中,第一个事件获得时间戳x + 0.1,第二个事件x + 0.2,依此类推。

绝对时间戳

时间被解析为绝对的系统时间戳。

注意:周期性流的评估取决于事件之间经过的时间。根据表示方式,确定第一个事件之前经过的时间可能并不明显。虽然相对和偏移表示法不需要一个参考点来确定经过的时间,但绝对表示法需要这样的参考点。这个时间点可以由命令行参数直接提供:--start-time-unix--start-time-rfc3339,或者推断为第一个事件的时刻。后者因此假设在输入的第一个事件之前没有经过任何时间。

偏移量

时间被视为前一个事件的偏移量。这导致上述示例中的以下时间戳

a,b, time
0,1, x + 0.1
2,3, x + 0.3
4,5, x + 0.6

版权

版权(C)CISPA - 信息安全赫尔姆霍茨研究中心 2024。作者:Jan Baumeister、Florian Kohn、Stefan Oswald、Frederik Scheerer、Maximilian Schwenger。基于萨尔大学(C)2020年的原始工作。作者:Jan Baumeister、Florian Kohn、Malte Schledjewski、Maximilian Schwenger、Marvin Stenger和Leander Tentrup。

依赖项

~16–29MB
~439K SLoC