Capturing API (Request & Response) Audit Log

Hello Everyone,
We are trying to capture the audit log for all the graphql API calls.
For example -
Capture the request payload, response payload, start time, end time, duration, HTTP method, response status etc for all the APIs and store it in a database table.

Can any one please let us know if there is a way to achieve this?
Or do we have a common interceptor/handler where we can intercept the request & corresponding response?

Thanks in advance

I suggest looking at the various metric and other reporting plugins from envelop — which you can add in as extra plugins to the GraphQL handler:

Sentry and OpenTelemetery are good options among others as and some let you store to your own data store but most use their own for their reports.