I'm getting the Not authorized to access: Xxxxx.id (GraphQL::Guard::NotAuthorizedError) error in my logs, but are often not sure which record it's talking about, and it's making it a real pain to debug issues.
It usually happens when a GraphQL query with multiple levels of nested fields is executed, and the error is something deeper in the structure, so it can't easily be worked out, by just looking at the arguments.
What I would like to do, is override the default error message so that it prints something like:
raise NotAuthorizedError.new("Not authorized to access: #{type}.#{field} for #{type}.id = #{trace_data[:object].try(:id)}")
and then I'll better understand which record it's referring to when I see this error.
Looking at the source code, I think that it's not currently possible since the 'object' is not passed to the proc. But just putting this here as I think it would be really useful to be able to do.
I'm getting the
Not authorized to access: Xxxxx.id (GraphQL::Guard::NotAuthorizedError)
error in my logs, but are often not sure which record it's talking about, and it's making it a real pain to debug issues.It usually happens when a GraphQL query with multiple levels of nested fields is executed, and the error is something deeper in the structure, so it can't easily be worked out, by just looking at the arguments.
What I would like to do, is override the default error message so that it prints something like:
and then I'll better understand which record it's referring to when I see this error.
Looking at the source code, I think that it's not currently possible since the 'object' is not passed to the proc. But just putting this here as I think it would be really useful to be able to do.