Releases: zyxware/ua-archive
Google Universal Analytics Data Archiving - Version 3.0.0 Release Notes
New Feature: Avoid Sampling
The latest release of UA-archive includes a new feature to avoid sampling in the Google Analytics Reporting API. The API may return a sample of sessions if the date range is very large or the number of records in a query is very large. To address this, we have included a wrapper script ua_backup.py
, which can take the same list of arguments as analytics_reporter.py
. This script will split the date range into smaller chunks based on the value in the --report_level
argument. The available options are 'day', 'week', 'month', and 'year'.
Example:
python3 ua_backup.py --report_id 1 --start 2020-01-01 --end 2023-01-31 --report_level day
This will run the query for each day and store the results as separate CSV files in the output folder. The script merge_report.py
can be used to merge all the individual CSV files into a single CSV file.
python3 merge_report.py output/123423_ua-property full_report
You will get the merged CSV report in the full_report
folder.
Note: The system uses ua-backup-execution.log
to keep track of the last script executed to resume execution if any error occurs. It also uses quota_exceeded.log
to track whether the quota was exceeded. The <view-id>_progress.log
is used to track individual reports. If you want to execute the script as a fresh one, starting from the beginning, you should remove these log files.
Google Universal Analytics Data Archiving - Version 2.0.0 Release Notes
New Features
-
Progress Tracking and Resuming Downloads
- The script now tracks progress for each report in a
progress.log
file. - If the script is interrupted or encounters an error, it can resume from where it left off.
- The script now tracks progress for each report in a
-
Generate All Reports
- Added functionality to generate all reports specified in the
reports_config.yml
. - If the
--report_id
argument is omitted, the script will generate CSV files for all reports.
- Added functionality to generate all reports specified in the
-
Custom Settings File
- Users can now specify a custom settings file using the
--settings
argument. - This is useful for managing downloads from multiple properties with separate settings files for each property.
- Users can now specify a custom settings file using the
Improvements
-
Improved Logging
- Replaced print statements with the
logging
module for better control over log output.
- Replaced print statements with the
-
Refactored Code Structure
- Refactored the code to reduce redundancy and improve readability.
-
Enhanced Exception Handling
- Added specific exception handling to provide more informative error messages.
Check README for the details.
AnalyticsReporter v1.1: Support sampling and page size
Often we need to fetch large data sets. The system now allow you to specify the sampling and page_size at a report level. By default, page_size is 1000, and sampling_level = 'DEFAULT'. It is possible to add
- id: 1
name: "User Engagement Over Time"
dimensions: ["ga:clientId", "ga:date"]
metrics: ["ga:sessions", "ga:sessionDuration", "ga:pageviews"]
page_size: 10000
sampling_level: "LARGE"
Release v1.0 of AnalyticsReporter – A Powerful and User-Friendly Tool To Download and Archive Universal Analytics Reports
Release v1.0 of AnalyticsReporter – A Powerful and User-Friendly Tool To Download and Archive Universal Analytics Reports
Highlights of This Release
- Seamless Integration with Google Universal Analytics API: AnalyticsReporter offers a streamlined way to fetch and store data from your UA properties.
- Customizable Report Configurations: Comes with a flexible YAML-based configuration system, enabling users to define and modify reports as needed.
What's New in v1.0
Initial release with full functionality for generating a variety of Google Universal Analytics reports.
Getting Started
Check out our README.md for setup instructions and usage guide.
Visit Zyxware Technologies for more insights and support.
Your Feedback Matters
We welcome feedback, feature requests, and contributions! Feel free to open issues or pull requests on GitHub.