Skip to content

Comments

adding apollo metrics reporting#2

Open
coryodaniel wants to merge 2 commits intomainfrom
apollo-usage-reporting
Open

adding apollo metrics reporting#2
coryodaniel wants to merge 2 commits intomainfrom
apollo-usage-reporting

Conversation

@coryodaniel
Copy link
Owner

WIP

When using ApolloServer in a custom handler, an internal server error is encountered in the handler when transforming the query

"TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",

The graph that is transformed (w/ transform-federation) accounts returns valid data, and you can see that while there are errors, results for users are present at the top level, but they are null under topProducts.

Response
{
  "errors": [
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 3,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        0,
        "reviews",
        0,
        "author",
        "username"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 4,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        0,
        "reviews",
        0,
        "author",
        "name"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 3,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        0,
        "reviews",
        1,
        "author",
        "username"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 4,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        0,
        "reviews",
        1,
        "author",
        "name"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 3,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        1,
        "reviews",
        0,
        "author",
        "username"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 4,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        1,
        "reviews",
        0,
        "author",
        "name"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 3,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        2,
        "reviews",
        0,
        "author",
        "username"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    },
    {
      "message": "Cannot read property 'Query' of undefined",
      "locations": [
        {
          "line": 4,
          "column": 3
        }
      ],
      "path": [
        "topProducts",
        2,
        "reviews",
        0,
        "author",
        "name"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "TypeError: Cannot read property 'Query' of undefined",
            "    at resolveReference (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-mesh/transform-federation/index.js:69:72)",
            "    at /Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:849:32",
            "    at Array.map (<anonymous>)",
            "    at executeDelegationStage (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:843:68)",
            "    at mergeFields (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:833:24)",
            "    at resolveExternalObject (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:954:12)",
            "    at resolveExternalValue (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:912:16)",
            "    at defaultMergedResolver (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/@graphql-tools/delegate/index.js:1271:12)",
            "    at field.resolve (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/apollo-server-core/dist/utils/schemaInstrumentation.js:52:26)",
            "    at resolveField (/Users/cory.odaniel/Workspace/coryodaniel/federated-absinthe/node_modules/graphql/execution/execute.js:466:18)"
          ]
        }
      }
    }
  ],
  "data": {
    "users": [
      {
        "id": "1",
        "username": "@ada",
        "name": "Ada Lovelace",
        "reviews": [
          {
            "id": "1",
            "body": "Love it!",
            "product": {
              "inStock": true,
              "name": "Table",
              "price": 899,
              "shippingEstimate": 50,
              "upc": "1",
              "weight": 100
            }
          },
          {
            "id": "2",
            "body": "Too expensive.",
            "product": {
              "inStock": false,
              "name": "Couch",
              "price": 1299,
              "shippingEstimate": 0,
              "upc": "2",
              "weight": 1000
            }
          }
        ]
      },
      {
        "id": "2",
        "username": "@complete",
        "name": "Alan Turing",
        "reviews": [
          {
            "id": "3",
            "body": "Could be better.",
            "product": {
              "inStock": true,
              "name": "Chair",
              "price": 54,
              "shippingEstimate": 25,
              "upc": "3",
              "weight": 50
            }
          },
          {
            "id": "4",
            "body": "Prefer something else.",
            "product": {
              "inStock": true,
              "name": "Table",
              "price": 899,
              "shippingEstimate": 50,
              "upc": "1",
              "weight": 100
            }
          }
        ]
      }
    ],
    "topProducts": [
      {
        "inStock": true,
        "name": "Table",
        "price": 899,
        "shippingEstimate": 50,
        "upc": "1",
        "weight": 100,
        "reviews": [
          {
            "id": "1",
            "body": "Love it!",
            "author": {
              "id": "1",
              "username": null,
              "name": null
            }
          },
          {
            "id": "4",
            "body": "Prefer something else.",
            "author": {
              "id": "2",
              "username": null,
              "name": null
            }
          }
        ]
      },
      {
        "inStock": false,
        "name": "Couch",
        "price": 1299,
        "shippingEstimate": 0,
        "upc": "2",
        "weight": 1000,
        "reviews": [
          {
            "id": "2",
            "body": "Too expensive.",
            "author": {
              "id": "1",
              "username": null,
              "name": null
            }
          }
        ]
      },
      {
        "inStock": true,
        "name": "Chair",
        "price": 54,
        "shippingEstimate": 25,
        "upc": "3",
        "weight": 50,
        "reviews": [
          {
            "id": "3",
            "body": "Could be better.",
            "author": {
              "id": "2",
              "username": null,
              "name": null
            }
          }
        ]
      }
    ]
  }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant