npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

analytics2influx

v0.0.1

Published

Exports metrics from Google Analytics and writes them to InfluxDB

Downloads

6

Readme

analytics2influx

Exports metrics from Google Analytics + Realtime Reporting API and writes the data to InfluxDB >= 0.9.x

CREDITS

This project was inspired by https://github.com/soulgalore/gatographite from Peter Hedenskog. If you want to send your analytics data to Graphite, have a look at Gatographite!

Install

npm install analytics2influx

Google-API Authentication

To export data from Google Analytics you first have to create an Analytics developer API account and add the account to the related Analytics profiles. These instructions should hopefullx get you through http://www.bentedder.com/server-to-server-authorization-for-google-analytics-api-with-node-js

Metrics

You can fetch metrics from the Google Analytics API: https://developers.google.com/analytics/devguides/reporting/core/dimsmets

and metrics from the Google Realtime Reporting API: https://developers.google.com/analytics/devguides/reporting/realtime/dimsmets/

Please note, that you cannot combine metrics from both APIs.

Usage

You can either call analytics2inlux with commandline parameters or use the export.sh file to configure everything.

Analytics API

analytics2influx --metrics ga:pageviews,ga:sessions --dimensions ga:hostname --influxHost localhost --influxUser tester --influxPassword test  

Realtime Reporting API

analytics2influx --mode rt --rt_metrics ga:activeUsers --rt_dimensions rt:userType --influxHost localhost --influxUser tester --influxPassword test  

Time-Ranges

// Fetch data from yesterday and send to Graphite
analytics2influx
// Fetch data from three days back -> today and send to Graphite
analytics2influx 3
// Send data for a specific date
analytics2influx 2015-06-01

Things you should probably know

For Google Analytics metrics the date & time dimensions are added automatically. Metric from the Google Realtime API use the current system timestamp. Doublecheck your systems date and time settings before using the Realtime Reporting API.

All dimensions and their values are used as tags in InfluxDB. The Analytics ViewId is added as "ga_id" automatically for both APIs.

It doesn't matter how many metrics you select while querying the APIs, all values are stored in separate measurements named ga_[metricname] or rt_[metricname] with the tags mentioned above.