benschmaus / nodeload

HTTP load/traffic generator and benchmark tool built on Node.js
MIT License
399 stars 73 forks source link

Colon in file name fails on Windows #18

Open hansmalherbe opened 12 years ago

hansmalherbe commented 12 years ago

Failure

npm install nodeload fails with npm ERR! Error: ENOENT, open 'C:\Users\Hans\AppData\Local\Temp\npm-1340271001668\1340271001668-0.7088631778024137\package\results-2012-02-01T05:32:46.827Z-stats .log'

Error

verbose unpack C:\Users\Hans\AppData\Local\Temp\npm-1340271990814\1340271990814-0.479529005009681\tmp.tgz failed to unpack the file results-2012-02-01T05:32:46.827Z-stats.log

Fault

Colons (:) in the name of the file results-2012-02-01T05:32:46.827Z-stats.log makes it invalid in NTFS.

jsalonen commented 12 years ago

+1 - I got the same problem here.

Any ideas how to work around this?

I'd love using nodeload on my Windows system!

hansmalherbe commented 12 years ago

Sorry, no. I'm just using request from mikeal now.

jsalonen commented 12 years ago

Yeah. Sigh :(

Guess I'm gonna fall back something like that as well :/

Also I have to say I have been much less worried about performance since I installed nodetime (https://nodetime.com/) and started monitoring our app with that.

benschmaus commented 12 years ago

Hey guys. Thanks for writing and for the interest in nodeload. Nodeload isn't being actively developed at this point. Feel free to fork and run with it. I should update the READ doc saying as much.

jsalonen commented 12 years ago

Thanks for the update! I definitely suggest updating the read file. If anyone is gonna fork, please let us know!

waylonflinn commented 12 years ago

This thing has been forked enough already. I patched nodeload.js and made a gist. Hopefully someone will take this work and integrate it into an active fork.

If you really want this to work on Windows, you can download the repository as a zip: nodeload-master.js

and then replace nodeload.js with this patched file: nodeload.js

I basically just stripped the bad characters out of the return of Date.toISOString(). The real modifications should be made to lib\monitoring\statslogger.js and lib/reporting/report.js. The bug was introduced in this commit: Change log file names to use toISOString() rather than millis