我正在尝试将Streamsets连接到Google Analytics。但是我无法设置它。有了常规的CURL请求,我会执行以下操作:
步骤1)转到以下链接以获取授权码:
https://accounts.google.com/o/oauth2/auth?client_id={CLIENTID}.apps.googleusercontent.com&redirect_uri=urn:ietf:wg:oauth:2.0:oob&scope=https://www.googleapis.com/auth/analytics&response_type=code
步骤2)执行发布请求以获取访问权限&茶点代币
curl -i -v --request POST -H "Content-Type: application/x-www-form-urlencoded" -d "code={AUTHORIZATION CODE FROM STEP 1}&client_id={CLIENT ID}.apps.googleusercontent.com&client_secret={CLIENT SECREP}&scope=https://www.googleapis.com/auth/analytics&grant_type=authorization_code&redirect_uri=urn:ietf:wg:oauth:2.0:oob" https://accounts.google.com/o/oauth2/token
步骤3)
执行实际的卷曲请求:
curl -X POST -H "Authorization: Bearer ya29.{AUTH RESPONSE}" -H "Content-Type: application/json" --data "{\"reportRequests\": [{\"viewId\": \"ga:{NUMBER}\",\"dateRanges\": [{\"start_date\": \"2016-01-01\", \"endDate\": \"yesterday\"}],\"metrics\": [{\"expression\":\"ga:sessions\"}], \"dimensions\": [{\"name\":\"ga:dimensions2\"}, {\"name\":\"ga:dimensions3\"}],\"samplingLevel\": \"LARGE\",\"pageToken\": \"\", \"pageSize\": 10000}]}" https://analyticsreporting.googleapis.com/v4/reports:batchGet
在Streamsets中,我尝试将其设置为:(我正在使用图片,因为它更容易理解。)
1) I put the resource URL the same as step 3, where I fetch the data
2) The Request body is also the same as in step 3
3) And this is the OAuth2 screen. I blurred the credentials.
但我仍然不知道如何获取数据。我没有收到任何输出,并且使用CURL请求获取数据在我看来似乎是一个3步骤,而不是2步骤(因为它似乎在Streamsets中)。 Streamset能够获取此功能还是应该编写自己的原点?因为对我来说乍一看似乎无法做到这一点。我已经阅读过Streamsets和Google Analytics手册,但它们对我的帮助并不大。
提前谢谢。