Good Morning
I’ve been trying to get the enrichment jar to work for probably the last 12 hours or so and I can’t seem to figure out the two different errors I’m getting when I run the jar file with or without the --enrich flag.
The problem I’m trying to solve is get rid of the HTTP headers in the snowplow stream because when the tags are sent to Kinesis, I get following in the kinesis.records.data
:
�p(Gra�UTF-8�ssc-1.0.0-kinesis,sMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.366http://px.system/@#/com.snowplowanalytics.snowplow/tp2T�
{
"schema": "iglu:com.snowplowanalytics.snowplow/payload_data/jsonschema/1-0-4",
...
So I’m trying to add the enrichment to remove the HTTP headers so I can get a clean JSON data point to then use in Lambda functions, but I can’t get my enrichment process to work.
So I’ve run into two different errors when I run the JAR file on my server:
The first error I can’t get around
When I run the command without the enrich flag, it seems to run but I get error notices around Caught exception while sync'ing Kinesis shards and leases
. I’ve looked around the web and understand that it could be a AWS policy issue, but the role that the kinesis streams run from and the AWS key I created for the collector and enrich all have full access to: Kinesis, Lambda, DynamoDB, CloudWatch. To help with the troubleshooting, the output of running this command is attached: java -jar snowplow-stream-enrich-kinesis-1.0.0.jar --config config.hocon --resolver file:iglu_resolver.json
The second error I can’t get around
The second problem I run into and having hard time understand the output, is that when I run it with the --enrich flag, it errors out entirely. Since I downloaded the JAR file, I don’t believe I have the ability to add the debug flag, but here is the output of running the following command: java -jar snowplow-stream-enrich-kinesis-1.0.0.jar --config config.hocon --resolver file:iglu_resolver.json --enrichments file:/enrich/
If anyone has any ideas/thoughts that could help me get around this, it would be grand.
To also note, I’m running this on a RaspberryPi 4B as I need to run a demo for a client on how they can use Snowplow for their real-time analytics with Kinesis/Lambda and push the data sets to our software for marketing automation.
The collector is working fine, no problem there, but I did compile the collector whereas with the enricher I did download and use the JAR supplied. I did try to compile the enricher but ran into errors and I have to run out the door for work, but I’ll give it a go again in a few hours to try and attempt other areas to resolve the issues noted above.
Thanks for the help and I hope it’s not TLDR.