X Tutup
Skip to content

Commit da1272f

Browse files
committed
build(analytics): add basic build-analytics to the project
This is pretty experimental, but the goal is to track the performance of our build over time so that we can more easily track perf regressions. Currently it's integrated only with gulp tasks, but I'd like to expand it to tracking travis jobs, protractor/benchpress test runs, npm installs, etc. No PII is being collected. And the data is collected via a Google Analytics property owned by the Angular team account. Closes angular#4672
1 parent 0def28e commit da1272f

File tree

6 files changed

+738
-132
lines changed

6 files changed

+738
-132
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,3 +41,6 @@ modules/.vscode
4141
npm-debug.log
4242

4343
/docs/bower_components/
44+
45+
# build-analytics
46+
.build-analytics

gulpfile.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ var merge = require('merge');
1717
var merge2 = require('merge2');
1818
var path = require('path');
1919
var licenseWrap = require('./tools/build/licensewrap');
20+
var analytics = require('./tools/analytics/analytics');
2021

2122
var watch = require('./tools/build/watch');
2223

@@ -1297,3 +1298,7 @@ process.on('beforeExit', function() {
12971298
gulp.start('cleanup.builder');
12981299
}
12991300
});
1301+
1302+
1303+
gulp.on('task_stop', (e) => { analytics.build('gulp ' + e.task, e.duration*1000)});
1304+
gulp.on('task_err', (e) => { analytics.build('gulp ' + e.task + ' (errored)', e.duration*1000)});

npm-shrinkwrap.clean.json

Lines changed: 203 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11344,17 +11344,6 @@
1134411344
"type-detect": {
1134511345
"version": "0.1.2"
1134611346
},
11347-
"universal-analytics": {
11348-
"version": "0.3.9",
11349-
"dependencies": {
11350-
"underscore": {
11351-
"version": "1.8.3"
11352-
},
11353-
"async": {
11354-
"version": "0.2.10"
11355-
}
11356-
}
11357-
},
1135811347
"update-notifier": {
1135911348
"version": "0.2.2",
1136011349
"dependencies": {
@@ -11647,6 +11636,208 @@
1164711636
"typescript": {
1164811637
"version": "1.6.2"
1164911638
},
11639+
"universal-analytics": {
11640+
"version": "0.3.9",
11641+
"dependencies": {
11642+
"request": {
11643+
"version": "2.65.0",
11644+
"dependencies": {
11645+
"bl": {
11646+
"version": "1.0.0",
11647+
"dependencies": {
11648+
"readable-stream": {
11649+
"version": "2.0.2",
11650+
"dependencies": {
11651+
"core-util-is": {
11652+
"version": "1.0.1"
11653+
},
11654+
"inherits": {
11655+
"version": "2.0.1"
11656+
},
11657+
"isarray": {
11658+
"version": "0.0.1"
11659+
},
11660+
"process-nextick-args": {
11661+
"version": "1.0.3"
11662+
},
11663+
"string_decoder": {
11664+
"version": "0.10.31"
11665+
},
11666+
"util-deprecate": {
11667+
"version": "1.0.2"
11668+
}
11669+
}
11670+
}
11671+
}
11672+
},
11673+
"caseless": {
11674+
"version": "0.11.0"
11675+
},
11676+
"extend": {
11677+
"version": "3.0.0"
11678+
},
11679+
"forever-agent": {
11680+
"version": "0.6.1"
11681+
},
11682+
"form-data": {
11683+
"version": "1.0.0-rc3",
11684+
"dependencies": {
11685+
"async": {
11686+
"version": "1.4.2"
11687+
}
11688+
}
11689+
},
11690+
"json-stringify-safe": {
11691+
"version": "5.0.1"
11692+
},
11693+
"mime-types": {
11694+
"version": "2.1.7",
11695+
"dependencies": {
11696+
"mime-db": {
11697+
"version": "1.19.0"
11698+
}
11699+
}
11700+
},
11701+
"qs": {
11702+
"version": "5.2.0"
11703+
},
11704+
"tunnel-agent": {
11705+
"version": "0.4.1"
11706+
},
11707+
"tough-cookie": {
11708+
"version": "2.2.0"
11709+
},
11710+
"http-signature": {
11711+
"version": "0.11.0",
11712+
"dependencies": {
11713+
"assert-plus": {
11714+
"version": "0.1.5"
11715+
},
11716+
"asn1": {
11717+
"version": "0.1.11"
11718+
},
11719+
"ctype": {
11720+
"version": "0.5.3"
11721+
}
11722+
}
11723+
},
11724+
"oauth-sign": {
11725+
"version": "0.8.0"
11726+
},
11727+
"hawk": {
11728+
"version": "3.1.0",
11729+
"dependencies": {
11730+
"hoek": {
11731+
"version": "2.16.3"
11732+
},
11733+
"boom": {
11734+
"version": "2.9.0"
11735+
},
11736+
"cryptiles": {
11737+
"version": "2.0.5"
11738+
},
11739+
"sntp": {
11740+
"version": "1.0.9"
11741+
}
11742+
}
11743+
},
11744+
"aws-sign2": {
11745+
"version": "0.6.0"
11746+
},
11747+
"stringstream": {
11748+
"version": "0.0.4"
11749+
},
11750+
"combined-stream": {
11751+
"version": "1.0.5",
11752+
"dependencies": {
11753+
"delayed-stream": {
11754+
"version": "1.0.0"
11755+
}
11756+
}
11757+
},
11758+
"isstream": {
11759+
"version": "0.1.2"
11760+
},
11761+
"har-validator": {
11762+
"version": "2.0.2",
11763+
"dependencies": {
11764+
"chalk": {
11765+
"version": "1.1.1",
11766+
"dependencies": {
11767+
"ansi-styles": {
11768+
"version": "2.1.0"
11769+
},
11770+
"escape-string-regexp": {
11771+
"version": "1.0.3"
11772+
},
11773+
"has-ansi": {
11774+
"version": "2.0.0",
11775+
"dependencies": {
11776+
"ansi-regex": {
11777+
"version": "2.0.0"
11778+
}
11779+
}
11780+
},
11781+
"strip-ansi": {
11782+
"version": "3.0.0",
11783+
"dependencies": {
11784+
"ansi-regex": {
11785+
"version": "2.0.0"
11786+
}
11787+
}
11788+
},
11789+
"supports-color": {
11790+
"version": "2.0.0"
11791+
}
11792+
}
11793+
},
11794+
"commander": {
11795+
"version": "2.8.1",
11796+
"dependencies": {
11797+
"graceful-readlink": {
11798+
"version": "1.0.1"
11799+
}
11800+
}
11801+
},
11802+
"is-my-json-valid": {
11803+
"version": "2.12.2",
11804+
"dependencies": {
11805+
"generate-function": {
11806+
"version": "2.0.0"
11807+
},
11808+
"generate-object-property": {
11809+
"version": "1.2.0",
11810+
"dependencies": {
11811+
"is-property": {
11812+
"version": "1.0.2"
11813+
}
11814+
}
11815+
},
11816+
"jsonpointer": {
11817+
"version": "2.0.0"
11818+
}
11819+
}
11820+
},
11821+
"pinkie-promise": {
11822+
"version": "1.0.0",
11823+
"dependencies": {
11824+
"pinkie": {
11825+
"version": "1.0.0"
11826+
}
11827+
}
11828+
}
11829+
}
11830+
}
11831+
}
11832+
},
11833+
"underscore": {
11834+
"version": "1.8.3"
11835+
},
11836+
"async": {
11837+
"version": "0.2.10"
11838+
}
11839+
}
11840+
},
1165011841
"vinyl": {
1165111842
"version": "0.4.6",
1165211843
"dependencies": {
@@ -11685,5 +11876,5 @@
1168511876
}
1168611877
},
1168711878
"name": "angular",
11688-
"version": "2.0.0-alpha.39"
11879+
"version": "2.0.0-alpha.40"
1168911880
}

0 commit comments

Comments
 (0)
X Tutup