Being a newbie, in our enricher implementation we are trying to have 2 api_request_enrichment_config enrichments (enabled) in place but for some reason only one is recognized/serviced by the enricher.
What are we missing here?
Consider having 2 enrichments files i.e. file1.json, file2.json with the below content and the only differences in their content are on
- the “inputs” contexts/schemaCriterion (not both enrichments applying to the same event) and
- the api method, uri etc.
{
"schema": "iglu:com.snowplowanalytics.snowplow.enrichments/api_request_enrichment_config/jsonschema/1-0-0",
"data": {
"vendor": "com.snowplowanalytics.snowplow.enrichments",
"name": "api_request_enrichment_config",
"enabled": true,
"parameters": {
"inputs": [
{
"key": "appId",
"pojo": {
"field": "app_id"
}
},
{
"key": "email",
"json": {
"field": "contexts",
"schemaCriterion": "iglu:<file#_private_iglu_schema>/jsonschema/1-*-*",
"jsonPath": "$.email"
}
}
],
"api": {
"http": {
"method": "POST",
"uri": "http://<some_host>/api/{{appId}}?email={{email}}",
"timeout": 3000,
"authentication": {
"httpBasic": {
"username": "xxx",
"password": "yyy"
}
}
}
},
"outputs": [
{
"schema": "iglu:<some_private_iglu_schema_path>" ,
"json": {
"jsonPath": "$"
}
}
],
"cache": {
"size": 500,
"ttl": 600
}
}
}
}
For some reason only one of the enrichments is getting served (api call taking place and derived message gets created),
while the other’s file messages are forcibly sent to the enriched good ones (no api call taking place and thus no derived msgs generated).
Are we facing some enricher’s limitation?
Is there a workaround?