Hi team,
I manage to run the latest snowplow event recovery
on aws when there is only one bad event.
However when there are multiple bad events, e.g. multiple schema violation
bad events, when I supply multiple recovery objects, it fails to recover.
To be specific, this is the config that I use:
{
"schema": "iglu:com.snowplowanalytics.snowplow/recoveries/jsonschema/4-0-0",
"data": {
"iglu:com.snowplowanalytics.snowplow.badrows/schema_violations/jsonschema/2-0-0":[
{
"name":"changeEventKey",
"conditions":[
{
"op": "Test",
"path": "$.failure.messages[0].error.dataReports[0].targets[0]",
"value": {
"regex": "\"agent\""
}
}
],
"steps":[
{
"op":"Replace",
"path":"$.raw.parameters.cx.data.[?(@.schema=~iglu:au.com.abc/customer/jsonschema/2-0-*)].data",
"match":"\"agent\"",
"value":"\"agents\""
}
]
}
],
"iglu:com.snowplowanalytics.snowplow.badrows/schema_violations/jsonschema/2-0-0":[
{
"name":"changeEventKey2",
"conditions":[
{
"op": "Test",
"path": "$.failure.messages[0].error.dataReports[0].targets[0]",
"value": {
"regex": "\"reaui\""
}
}
],
"steps":[
{
"op":"Replace",
"path":"$.raw.parameters.cx.data.[?(@.schema=~iglu:au.com.abc/customer/jsonschema/2-0-*)].data",
"match":"\"reaui\"",
"value":"\"reauid\""
}
]
}
]
}
}
If I only keep one recovery object with the bad events, then it work. However, when I put it together, then it failed with the error message:
error : Failed to load recovery configuration for iglu:com.snowplowanalytics.snowplow.badrows/schema_violations/jsonschema/2-0-0. No schema-configuration mapping found.
I didn’t find any clue from the official documentation. Thank you if you could spot any potential errors.