我所有的工作都是在由 Virtualbox 运行的 VM 中完成的,我想知道是否有可能计算 VM 的活跃使用时间。
理想情况下,我希望按天进行细分,这样我就可以看到任何一天我在特定虚拟机上工作了多少时间。
附言:当我没有积极地在虚拟机上工作时,我会将其关闭或让其进入睡眠状态。
答案1
每个虚拟机使用会话都会生成一个单独的日志文件(位于虚拟机文件夹的日志子文件夹中)。
日志文件上的日期时间戳表示上次关闭的时间。
日志文件中的每一行都有一个时间戳,表示虚拟机的“自启动以来的时间”。因此,取日志末尾的最后一个时间戳,并将其从文件自己的时间戳中减去,您就知道会话的启动时间。(重新启动或重置虚拟机都记录在该文件中。完全关闭虚拟机会结束日志。)
较旧的日志也会保留(不确定有多少,您必须尝试一下或查阅 VirtualBox 手册)。
我也不知道 1 天对同一台虚拟机的 2 个不同使用会话是否会保存在同一个日志文件中或获得单独的文件。后者是最合乎逻辑的,但目前我没有任何相关示例。不过这很容易进行实验。
只需备份日志(如果您每天运行的会话数超过旧日志的最大保留时间,则每天备份多次),然后您就可以从中计算出使用情况统计数据。
使用 python、perl、powershell 或您喜欢的任何其他脚本语言编写脚本应该很容易,可以自动完成所有这些操作。