-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Scala Common Enrich: add JavaScript scripting enrichment #378
Comments
Another use case for this: we wrote a system tray app a few years back and wanted to log end-user behavior without the app communicating directly to WebTrends (our client's preferred platform.) The desire was to replay the log events from the app's calls to our servers and send the end user IP with the events. Therefore, relaying/proxying events via the pixel request even down to the UA IP might be a nice piece of functionality to have here. |
Sorry, I did not see that documented in https://github.com/snowplow/snowplow/wiki/snowplow-tracker-protocol so I assumed it was not permitted. So to be clear: I can push the keyword 'ip' into the querystring for the pixel request, and the ETL job will overwrite the reported IP from the GET request in the Cloudfront log with what I pass in? |
@jrobgood - correct: I think it's an undocumented feature currently - we'll get it added to the documentation. |
Updated design for this: we don't want to mutate the enriched event from JS, but rather to allow the addition of custom contexts generated from JavaScript. |
Title was: allow support for custom JS logic to write any field based on any other field
This came out of:
The basic idea is: we add a point where JavaScript can be evaluated in our Scalding ETL to update any field in our CanonicalOutput based on the contents of any other field.
This should be the last thing done, when all other values are set.
This would allow some pretty custom stuff to be done without overloading the trackers - e.g. extracting specific values from the referer URI.
For other JS scripting ideas see also:
The text was updated successfully, but these errors were encountered: