I push into the Iglu Server and I can see into the Postgres Database Iglu Server table. What to do more?
You’re ready to send in some events, have a look at the trackers, point them towards your collector URL and you should be good to go.
@mike that’s the point I am receiving the erro below
{
“schemaKey”: “iglu:com.mycompany/login/jsonschema/1-0-0”,
“error”: {
“error”: “ResolutionError”,
“lookupHistory”: [
{
“repository”: “Iglu Central”,
“errors”: [
{
“error”: “NotFound”
}
],
“attempts”: 8,
“lastAttempt”: “2021-09-23T22:34:34.999Z”
},
{
“repository”: “Iglu Central - Mirror 01”,
“errors”: [
{
“error”: “NotFound”
}
],
“attempts”: 6,
“lastAttempt”: “2021-09-23T22:34:35.210Z”
},
{
“repository”: “Iglu Client Embedded”,
“errors”: [
{
“error”: “NotFound”
}
],
“attempts”: 1,
“lastAttempt”: “2021-09-23T21:42:55.361Z”
},
{
“repository”: “Iglu Server”,
“errors”: [
{
“error”: “RepoFailure”,
“message”: “no protocol: sp-iglu-lb-prod-0000000.sa-east-1.elb.amazonaws.com/api/schemas/com.mycompany/login/jsonschema/1-0-0”
}
],
“attempts”: 8,
“lastAttempt”: “2021-09-23T22:34:34.738Z”
}
]
}
}
This will need a protocol (e.g., HTTPS).
Where should I edit it?
@mike Can you help me?
You’ll want to find your Iglu resolver file (it will be called resolver.conf
or something similar) and update the JSON for that Iglu registry.
Using the quick start, this file must be in the DynamoBD in another Server App like Iglu Server or Enrichment Server?
@mike I founded in DynamoDB
I put https protocol and now I am receiving this error:
{
“schemaKey”: “iglu:com.snowplowanalytics.snowplow/unstruct_event/jsonschema/1-0-0”,
“error”: {
“error”: “ValidationError”,
“dataReports”: [
{
“message”: “$.schema: does not match the regex pattern ^iglu:[a-zA-Z0-9-.]+/[a-zA-Z0-9-]+/[a-zA-Z0-9-]+/[0-9]±[0-9]±[0-9]+$",
“path”: “$.schema”,
“keyword”: “pattern”,
“targets”: [
"^iglu:[a-zA-Z0-9-.]+/[a-zA-Z0-9-]+/[a-zA-Z0-9-]+/[0-9]±[0-9]±[0-9]+$”
]
}
]
}
}
Check my event example:
snowplow(‘trackSelfDescribingEvent’, {
event: {
schema: ‘iglu:com.mycompany/jsonschema/1-0-0’,
data: {
product_id: ‘jd7ujksd8-djdps89d98v-8klnl899n’,
product_name: ‘AZ’,
card_position: 1
}
}
});
the resolver:
{
“schema”: “iglu:com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-2”,
“data”: {
“cacheSize”: 500,
“cacheTtl”: 600,
“repositories”: [{“connection”:{“http”:{“uri”:“http://iglucentral.com”}},“name”:“Iglu Central”,“priority”:10,“vendorPrefixes”:[“com.snowplowanalytics.snowplow”]},{“connection”:{“http”:{“uri”:“http://mirror01.iglucentral.com”}},“name”:“Iglu Central - Mirror 01”,“priority”:20,“vendorPrefixes”:},{“connection”:{“http”:{“apikey”:“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx”,“uri”:“https://sp-iglu-lb-prod-xxxxxxxxxx.sa-east-1.elb.amazonaws.com/api"}},“name”:"Iglu Server”,“priority”:0,“vendorPrefixes”:[“com.mycompany”]}]
}
}
My Json Schema
{
“$schema”: “http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#”,
“description”: “Describe example”,
“self”: {
“vendor”: “com.mycompany”,
“name”: “login”,
“format”: “jsonschema”,
“version”: “1-0-0”
},
“type”: “object”,
“properties”: {
“product_id”: {
“type”: “string”,
“description”: “Product Id from Lex”,
“maxLength”: 255
},
“product_name”: {
“type”: “string”,
“description”: “Product Name from Lex”,
“maxLength”: 255
},
“card_position”: {
“type”: “integer”,
“description”: “Card position for click on product card”,
“minimum”: 1,
“maximum”: 100
}
},
“additionalProperties”: false
}
Is this the actual bad failure e.g., for com.mycompany? That error suggests that the Iglu URI doesn’t match the regex.
@mike
My mistake, forget the message below.
Trying to fin the resolver.conf could be in the DynamoDB or in another place?
@nando_roz, your schema iglu:com.mycompany/jsonschema/1-0-0
does not conform indeed. It has to follow the pattern: iglu:<vendor>/<name>/jsonschema/<version>
but you have iglu:com.mycompany/jsonschema/1-0-0
, that is iglu:<vendor>/jsonschema/<version>
(no event name)
Hi @ihor I already correct this but keep with the protocol error.
My doubt is, wher should I found the resolver.conf file said by mike in a message below? I edit in DynamoDB but I think is not there.
@nando_roz , when you launch Stream Enrich, you provide the reference to the Iglu resolvers. For example, Stream Enrich - Snowplow Docs or Configure Stream Enrich - Snowplow Docs
@ihor I will try to find because I setup using the quickstart guide and I didn’t remember configure that
@ihor this is what I found in my DynamoDB
{
“schema”: “iglu:com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-2”,
“data”: {
“cacheSize”: 500,
“cacheTtl”: 600,
“repositories”: [{“connection”:{“http”:{“uri”:“http://iglucentral.com”}},“name”:“Iglu Central”,“priority”:10,“vendorPrefixes”:[“com.snowplowanalytics.snowplow”]},{“connection”:{“http”:{“uri”:“http://mirror01.iglucentral.com”}},“name”:“Iglu Central - Mirror 01”,“priority”:20,“vendorPrefixes”:},{“connection”:{“http”:{“apikey”:“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx”,“uri”:“https://sp-iglu-lb-prod-xxxxxxxxxx.sa-east-1.elb.amazonaws.com/api"}},“name”:"Iglu Server”,“priority”:0,“vendorPrefixes”:[“com.mycompany”]}]
}
}
@ihor and @mike I founded. I edidt manually the resolver config in DynamoDB but not worked.
I changed in the main.tf and apply again and solved.
Thanks for your help and I am sorry for may mistakes and for amount of messages
All good, glad to hear it’s working!