Regarding the Google Analytics tap, I see that we can specify dimensions and metrics just like we would in the API specified in the GA API docs but can we also use dimension filters?
michael_harris
04/17/2021, 9:12 PM
I've written a wrapper in Python for the GA API for my team and we definitely like having the dimension filter to look at specific URL prefixes. Here is an example of a call we would make to look at PVs for just posts on our web app
michael_harris
04/17/2021, 9:17 PM
I guess we could just use pagePath as a dimension and then do the filtering in the warehouse with dbt but then the next question would be can we specify the limit?
In the GA API spec, it look like 100k entries is the max in any call and if I have both pagePath and ga:hour specified as a dimension then it quickly adds up even with a few hundred posts per day and the 100k limit is reached
I didn't see anything on being able to dynamically set a start and end date for the tap config. Having that ability might allow me to avoid needing a dimension filter or a limit but idk if that's possible 🤔
michael_harris
04/17/2021, 9:18 PM
Any help would be appreciated. Also happy to contribute any of the above suggestions as a feature if not available and if any of that sounds interesting/useful to others
t
taylor
04/19/2021, 2:59 PM
@michael_harris all of your suggestions / requests sound reasonable. I’m assuming you’re using the Meltano variant for tap-google-analytics? We’d definitely take a look at an MR to add some of this capability, or if you’re feeling really ambitious, rewriting it using the SDK is an option 😅
m
michael_harris
04/19/2021, 3:02 PM
I think a previous convo mentioned adding state support to the GA tap for tables that use ga:date. I think that would actually solve my problem in a more general purpose way.
Is there any update on that or any work currently being planned/done?
t
taylor
04/19/2021, 3:04 PM
That tap is community supported and we (the Meltano core team) don’t fully maintain it - but we can definitely help review MRs and provide guidance where needed