A CLI for Google Analytics Event Tracking Report
Did you know Google Analytics has a report feature developers can use freely? It's a Event Tracking Report. GAER allows you to store your data object and monitor the data history using Measurement Protocol. In other words, you can send your data to Google Analytics server from CLI tool.
$ gaer -t UA-xxxxx-xx -r reportName path/to/data.json
Sending [||||||||||||||||||||||||] 100%
Success: The data is sent to UA-xxxxx-xxIf you don't have Google Analytics account, please create new account. And then, please create new property for using GAER Report in advance.
The JSON data you want to store must be simple object and all value must be numeric, because GARE use key of the object as Event Label and value of the object as Event Value.
// Good :)
{ "foo": 3, "bar": 9, "baz": 3.14 }
// Bad :(
{ "foo": "aaa", "bar": 1, "baz": "bbb" }
// Bad :(
{ "foo": 3, "bar": { "qux": 1 }, "baz": 3.14 }
// Bad :(
{ "foo": 3, "bar": 9, "baz": [0,1,3] }Please see the details below.
| Event | Type | in GARE |
|---|---|---|
| Category | String | GAER (Fixed) |
| Action | String | --report value |
| Label | String | object.key |
| Value | Number | object.value |
You can see the data report you sent from CLI on Behavior > Events menu.
As shown below, you can also use the Custom Report for GARE.
With npm do:
npm install -g gaer Usage: gaer [options] <JSON>
Options:
-h, --help output usage information
-V, --version output the version number
-t, --tid <ID> set your Google Analytics Tracking ID
-r, --report <Name> set your GA Action report nameStandard way:
gaer --tid UA-xxxxxxx-x --report ReportName path/to/json/file.jsonShortcut way:
gaer -t UA-xxxxxxx-x -r ReportName path/to/json/file.jsonDebug mode:
DEBUG=1 gaer -t UA-xxxxxxx-x -r ReportName path/to/json/file.jsonUsing environment variables:
GA_TID=UA-xxxxxxx-x GA_REPORT=ReportName gaer path/to/json/file.jsonUsing pipe:
stylestats -f json -n path/to/css/file.css | gaer -t UA-xxxxxxx-x -r ReportNameSee also: t32k/stylestats
You can use the API directly too:
var Gaer = require('gaer');
var gaer = new Gaer('UA-xxxxx-x');
gaer.record('Report Name', 'path/to/data.json');Please refer to as follows:


