npm脚本的时间/性能指标

问题描述 投票:2回答:2

有没有办法测量类似于time-grunt工作方式的npm脚本的性能?

我正在将一些关键构建任务移动到使用npm而不是Grunt,因为编写我自己的构建脚本比使用grunt-browserify之类的一些Grunt插件更灵活。

我已经尝试过使用console.time(),但它在脚本完成之前完成,我假设因为这些方法是异步的。我也尝试将npm脚本作为Grunt任务运行,如下所示:

grunt.registerTask('collectify', function () {
    grunt.util.spawn({
        cmd: 'npm',
        args: ['run', 'collectify:app']
    });
});

但输出不同于我从命令行运行npm run collectify:app,可能是因为pwd问题。

彩色条很棒,但至少我想看看数字的时间。

node.js performance build gruntjs npm
2个回答
1
投票

你最好的选择可能是pre [foo]和post [foo]脚本。

因此,如果我有一个名为“foobar”的NPM脚本,那么我可以创建一个名为“preboofar”和“postfoobar”的脚本,它们将在“foobar”执行之前和之后自动执行。

因此,在“pre”中,您可以触摸带有时间戳的文件,在“post”中,您可以读取该文件并计算差异。


0
投票

您是否尝试在time命令之前添加npm run命令?

所以如果你的命令是:

npm run collectify:app

它成为了:

time npm run collectify:app

并且它将输出3行,例如

real    0m11.580s
user    0m7.400s
sys     0m1.304s

如果有帮助,请告诉我!

© www.soinside.com 2019 - 2024. All rights reserved.