mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-17 02:54:21 +08:00
refactor: use dimensions for some values instead of metrics
This is after a discussion with someone internal. Metrics are good for sums but not for comparisons and search/filtering.
This commit is contained in:
parent
00fb4cea4f
commit
55471770db
@ -42,15 +42,13 @@
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"aliases": [ "d" ],
|
||||
"description": "When true, runs through and reports activity without writing out results.",
|
||||
"x-user-analytics": 1
|
||||
"description": "When true, runs through and reports activity without writing out results."
|
||||
},
|
||||
"force": {
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"aliases": [ "f" ],
|
||||
"description": "When true, forces overwriting of existing files.",
|
||||
"x-user-analytics": 2
|
||||
"description": "When true, forces overwriting of existing files."
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -59,8 +57,7 @@
|
||||
"interactive": {
|
||||
"type": "boolean",
|
||||
"default": "true",
|
||||
"description": "When false, disables interactive input prompts.",
|
||||
"x-user-analytics": 3
|
||||
"description": "When false, disables interactive input prompts."
|
||||
},
|
||||
"defaults": {
|
||||
"type": "boolean",
|
||||
|
@ -242,6 +242,7 @@ export class UniversalAnalytics implements analytics.Analytics {
|
||||
private _ua: ua.Visitor;
|
||||
private _dirty = false;
|
||||
private _metrics: (string | number)[] = [];
|
||||
private _dimensions: (string | number)[] = [];
|
||||
|
||||
/**
|
||||
* @param trackingId The Google Analytics ID.
|
||||
@ -267,10 +268,10 @@ export class UniversalAnalytics implements analytics.Analytics {
|
||||
this._ua.set('aid', _getNodeVersion());
|
||||
|
||||
// We set custom metrics for values we care about.
|
||||
this._metrics[analytics.NgCliAnalyticsMetrics.CpuCount] = _getCpuCount();
|
||||
this._metrics[analytics.NgCliAnalyticsMetrics.CpuSpeed] = _getCpuSpeed();
|
||||
this._metrics[analytics.NgCliAnalyticsMetrics.RamInMegabytes] = _getRamSize();
|
||||
this._metrics[analytics.NgCliAnalyticsMetrics.NodeVersion] = _getNumericNodeVersion();
|
||||
this._dimensions[analytics.NgCliAnalyticsDimensions.CpuCount] = _getCpuCount();
|
||||
this._dimensions[analytics.NgCliAnalyticsDimensions.CpuSpeed] = _getCpuSpeed();
|
||||
this._dimensions[analytics.NgCliAnalyticsDimensions.RamInMegabytes] = _getRamSize();
|
||||
this._dimensions[analytics.NgCliAnalyticsDimensions.NodeVersion] = _getNumericNodeVersion();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -279,8 +280,9 @@ export class UniversalAnalytics implements analytics.Analytics {
|
||||
*/
|
||||
private _customVariables(options: analytics.CustomDimensionsAndMetricsOptions) {
|
||||
const additionals: { [key: string]: boolean | number | string } = {};
|
||||
this._metrics.forEach((v, i) => additionals['cm' + i] = v);
|
||||
this._dimensions.forEach((v, i) => additionals['cd' + i] = v);
|
||||
(options.dimensions || []).forEach((v, i) => additionals['cd' + i] = v);
|
||||
this._metrics.forEach((v, i) => additionals['cm' + i] = v);
|
||||
(options.metrics || []).forEach((v, i) => additionals['cm' + i] = v);
|
||||
|
||||
return additionals;
|
||||
|
@ -17,16 +17,20 @@ export * from './noop';
|
||||
* WE LIST THOSE DIMENSIONS (AND MORE).
|
||||
*/
|
||||
export enum NgCliAnalyticsDimensions {
|
||||
CpuCount = 1,
|
||||
CpuSpeed = 2,
|
||||
RamInMegabytes = 3,
|
||||
NodeVersion = 4,
|
||||
NgAddCollection = 6,
|
||||
NgBuildBuildEventLog = 7,
|
||||
BuildErrors = 20,
|
||||
}
|
||||
|
||||
export enum NgCliAnalyticsMetrics {
|
||||
CpuCount = 1,
|
||||
CpuSpeed = 2,
|
||||
RamInMegabytes = 3,
|
||||
NodeVersion = 4,
|
||||
UNUSED_1 = 1,
|
||||
UNUSED_2 = 2,
|
||||
UNUSED_3 = 3,
|
||||
UNUSED_4 = 4,
|
||||
BuildTime = 5,
|
||||
NgOnInitCount = 6,
|
||||
InitialChunkSize = 7,
|
||||
|
@ -92,8 +92,7 @@
|
||||
"skipInstall": {
|
||||
"description": "Skip installing dependency packages.",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-user-analytics": 4
|
||||
"default": false
|
||||
},
|
||||
"lintFix": {
|
||||
"type": "boolean",
|
||||
|
@ -37,8 +37,7 @@
|
||||
"skipInstall": {
|
||||
"description": "When true, does not install dependency packages.",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-user-analytics": 4
|
||||
"default": false
|
||||
},
|
||||
"skipTsConfig": {
|
||||
"type": "boolean",
|
||||
|
@ -26,8 +26,7 @@
|
||||
"skipInstall": {
|
||||
"description": "When true, does not install dependency packages.",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-user-analytics": 4
|
||||
"default": false
|
||||
},
|
||||
"linkCli": {
|
||||
"description": "When true, links the CLI to the global version (internal development only).",
|
||||
|
@ -57,8 +57,7 @@
|
||||
"skipInstall": {
|
||||
"description": "When true, does not install packages for dependencies.",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-user-analytics": 4
|
||||
"default": false
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
@ -21,8 +21,7 @@
|
||||
"skipInstall": {
|
||||
"description": "When true, does not install packages for dependencies.",
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
"x-user-analytics": 4
|
||||
"default": false
|
||||
},
|
||||
"linkCli": {
|
||||
"description": "When true, links the CLI to the global version (internal development only).",
|
||||
|
Loading…
x
Reference in New Issue
Block a user