Resolver json; repository not found

Hello,

We are setting up the enrichment module and using the resolver.json template from the snowplow documentation on github:


{
  "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"
          }
        }
      },
      {
        "name": "Iglu Central - GCP Mirror",
        "priority": 1,
        "vendorPrefixes": [ "com.snowplowanalytics" ],
        "connection": {
          "http": {
            "uri": "http://mirror01.iglucentral.com"
          }
        }
      }
    ]
  }
}

We are receiving the following error in CloudWatch:

NonEmptyList(
{
    "error": "ResolutionError",
    "lookupHistory": [
        {
            "repository": "Iglu Central",
            "errors": [
                {
                    "error": "RepoFailure",
                    "message": "connect timed out"
                }
            ],
            "attempts": 1,
            "lastAttempt": "2020-07-14T14:52:28.630Z"
        },
        {
            "repository": "Iglu Client Embedded",
            "errors": [
                {
                    "error": "NotFound"
                }
            ],
            "attempts": 1,
            "lastAttempt": "2020-07-14T14:52:28.640Z"
        }
    ]
}
)
1 Like

Hi @mgloel,

I don’t think that error is produced by a client with the configuration you posted because it is missing “Iglu Central - GCP Mirror”. Also what’s the component that is submitting this to CloudFront? Usually errors like this are exposed either by failed events (and have much more information) or by initial configuration validation, but I don’t know what component could it be (usually it also prints some debugging info).

Anyways, there’s very-very small chance of Iglu Central short outage and having Iglu Central outage AND its mirror outage at the same time is almost impossible, so I’d recommend you to make sure that the component submitting this to Cloudfront has an access to internet.

2 Likes

Hi @anton,

Thanks for your help. We try to access the schema repository from within an enrich fargate in a private subnet. As a work around we tried to pull the schema repository from an S3 bucket and we encountered the same error.

Our ECS tasks security group are pretty permissive and lets connection from any port/IP. It has also been granted a full permission to access S3 buckets.

You always can check it yourself from the node throwing this error. If schema is iglu:com.snowplowanalytics.snowplow/duplicate/jsonschema/1-0-0, then you can try:

$ curl http://iglucentral.com/schemas/com.snowplowanalytics.snowplow/duplicate/jsonschema/1-0-0
1 Like

You were right @anton about the internet connection. Our NACLs setup was refusing http traffic and that was blocking the connection to the schems repository.