Iglu Resolver is a component embedded into many Snowplow applications, including enrichers and loaders. It’s responsible for fetching schemas from Iglu Central and user registries and validating data against these schemas.
Most of the time, configuring Iglu Resolver (or Client) means adding following JSON file:
{
"schema": "iglu:com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-1",
"data": {
"cacheSize": 500,
"repositories": [
{
"name": "Iglu Central",
"priority": 0,
"vendorPrefixes": [ "com.snowplowanalytics" ],
"connection": {
"http": {
"uri": "http://iglucentral.com"
}
}
}
]
}
}
Code language: JSON / JSON with Comments (json)
Above configuration assumes only Snowplow-authored schemas (hosted on Iglu Central) will be used in a pipeline. If you have your own registries (Iglu Server or Static Registry) you need to add it as well along with Iglu Central.
Configuration parameters
cacheSize
determines how many individual schemas we will keep cached in our Iglu client (to save additional lookups)repositories
is a JSON array of repositories to look up schemas inname
andconnection
should be self-evidentpriority
andvendorPrefixes
help the resolver to know which repository to check first for a given schema. For details see Iglu’s repository resolution algorithm