Google Analytics
StackState curated integration
This page describes StackState version 4.3.

What is the Google Analytics StackPack?

The Google Analytics StackPack contains everything you need to import metrics from Google Analytics into StackState. The StackPack supports both the Google Analytics Core Reporting and Real Time Reporting APIs.

Prerequisites

NOTE: The Google Analytics StackPack is compatible with version 3 of the Google Analytics reporting API.

Configuring Google Analytics integration

Configuration of the Google Analytics integration is different for the Core Reporting and Real Time Reporting APIs.
The integration determines the API to use based on the metric name. If the metric has the prefix rt: it is considered a real-time metric for which the Real Time Reporting API will be used. If the metric does not have this prefix, the Core Reporting API is used.
Multiple instances can be configured in the YAML file to facilitate multiple metric streams.

Common configuration

The global configuration is defined in the init_config section.
min_collection_interval
integer
The interval at which the integrations run, overriding the StackState Agent's default of 15 seconds.
key_file_location
string
Path to exported Service Account key JSON file

Configuring the Core Reporting API

Name
Type
Required
Summary
profile
string
yes
Profile/Table identifier to use, can be obtained from https://analytics.google.com. Example profile id: ga:12345678
metrics
list of strings
yes
Google Analytics metrics to retrieve. Example: ga:pageviews. Reference: Google Analytics API documentationโ€‹
dimensions
list of strings
no
Google Analytics dimensions to include. Example: ga:pagePath. Reference: Google Analytics API documentationโ€‹
filters
list of strings
no
Google Analytics filters to apply. Example: ga:pagePath==/foo/bar. Multiple filters use AND logic by default. It is possible to apply OR logic by separating two filters by a comma, for example; ga:pagePath==/foo/bar,ga:pagePath==/foo/baz. Reference: Google Analytics API documentation.
start_time
string
yes
Start date for fetching Analytics data. Example: 2daysAgo. Reference: Google Analytics API documentation. Keep in mind that the integration is run periodically.
end_time
string
yes
End date for fetching Analytics data. Example: 1daysAgo. Reference: Google Analytics API documentation. Keep in mind that the integration is run periodically.
tags
list of strings
no
Tags to include in the collected data in StackState. Format key:value

Configuring the Real-time Reporting API

Name
Type
Required
Summary
profile
string
yes
Profile/Table identifier to use, can be obtained from https://analytics.google.com. Example profile id: ga:12345678
metrics
list of strings
yes
Google Analytics metrics to retrieve. Example: rt:activeUsers. Reference: Google Analytics API documentationโ€‹
dimensions
list of strings
no
Google Analytics dimensions to include. Example: rt:minutesAgo. Reference: Google Analytics API documentation. When including the rt:minutesAgo dimension, the integration will ignore values other that the value of last minute, this gives a more consistent metric.
filters
list of strings
no
Google Analytics filters to apply. Example: rt:pagePath==/foo/bar. Multiple filters use AND logic by default. It is possible to apply OR logic by separating two filters by a comma, for example; rt:pagePath==/foo/bar,rt:pagePath==/foo/baz. Reference: Google Analytics API documentationโ€‹
tags
list of strings
no
Tags to include in the collected data in StackState. Format key:value.

Configuration example

Enabling Google Analytics integration

To enable the Google Analytics integration:
Edit the conf.d/google_analytics.yaml file in your agent configuration directory.
To publish the configuration changes, restart the StackState Agent(s) using below command.
1
sudo /etc/init.d/stackstate-agent restart
Copied!
Once the Agent is restarted, wait for the Agent to collect the data and send it to StackState.
Last modified 2mo ago