Skip to content

sjsp (Simple JavaScript Profiler) implemented in Node.js

Notifications You must be signed in to change notification settings

45deg/node-sjsp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-sjsp - Simple JavaScript Profiler

Build Status

What is it

This is a JavaScript profiler implemented in Node.js, inspired by sjsp, which is implemented in Haskell.

How to install

npm -g install node-sjsp

Usage

If you want to inject profiling code into something.js, run

sjsp something.js

and then sjsp generates something.sjsp.js in the same directory. (you can use wildcard characters such that sjsp *.js)

Next, rewrite your HTML code using something.js like below.

<!-- <script src="something.js"></script> -->
<script src="something.sjsp.js"></script>

Open the page with your browser and you can see profiles in the JavaScript console every 10 seconds. (you can change this interval by -i option)

========== SORT BY TIME ==========
time:    0.60sec   count:    1777    something.js          test1   (line:   7, col: 17)   function test1(){
time:    0.60sec   count:    1701    something.js          test0   (line:   1, col: 17)   function test0(){
time:    0.58sec   count:    1601    something.js          test4   (line:  25, col: 17)   function test4(){
time:    0.57sec   count:    1703    something.js          test2   (line:  13, col: 17)   function test2(){
time:    0.54sec   count:    1632    something.js          test3   (line:  19, col: 17)   function test3(){
time:    0.53sec   count:    1586    something.js          test5   (line:  31, col: 17)   function test5(){
========== SORT BY COUNT ==========
time:    0.60sec   count:    1777    something.js          test1   (line:   7, col: 17)   function test1(){
time:    0.57sec   count:    1703    something.js          test2   (line:  13, col: 17)   function test2(){
time:    0.60sec   count:    1701    something.js          test0   (line:   1, col: 17)   function test0(){
time:    0.54sec   count:    1632    something.js          test3   (line:  19, col: 17)   function test3(){
time:    0.58sec   count:    1601    something.js          test4   (line:  25, col: 17)   function test4(){

For details, see original document

How it works

See original document

Limitation

This profiling is available for browser only now.

Author

45deg (Twitter)

LICENSE

MIT

About

sjsp (Simple JavaScript Profiler) implemented in Node.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published