@@ -105,8 +105,9 @@ export class Substrate {
105
105
const { signal } = abortController ;
106
106
const timeout = setTimeout ( ( ) => abortController . abort ( ) , this . timeout ) ;
107
107
108
+ const request = new Request ( url , this . requestOptions ( req , signal ) ) ;
109
+ const requestId = request . headers . get ( "x-substrate-request-id" ) ;
108
110
try {
109
- const request = new Request ( url , this . requestOptions ( req , signal ) ) ;
110
111
const apiResponse = await fetch ( request ) ;
111
112
112
113
if ( apiResponse . ok ) {
@@ -120,7 +121,6 @@ export class Substrate {
120
121
121
122
return res ;
122
123
} else {
123
- const requestId = request . headers . get ( "x-substrate-request-id" ) ;
124
124
throw new SubstrateError (
125
125
`[Request failed] status=${ apiResponse . status } statusText=${ apiResponse . statusText } requestId=${ requestId } ` ,
126
126
) ;
@@ -129,7 +129,7 @@ export class Substrate {
129
129
if ( err instanceof Error ) {
130
130
if ( err . name === "AbortError" ) {
131
131
throw new RequestTimeoutError (
132
- `Request timed out after ${ this . timeout } ms` ,
132
+ `Request timed out after ${ this . timeout } ms requestId= ${ requestId } ` ,
133
133
) ;
134
134
// TODO: We could propagate timeout errors to nodes too, but I'm
135
135
// not sure yet what might be easier for the user to manage.
@@ -156,8 +156,9 @@ export class Substrate {
156
156
requestOptions . headers . set ( "Accept" , "text/event-stream" ) ;
157
157
requestOptions . headers . set ( "X-Substrate-Streaming" , "1" ) ;
158
158
159
+ const request = new Request ( url , requestOptions ) ;
160
+ const requestId = request . headers . get ( "x-substrate-request-id" ) ;
159
161
try {
160
- const request = new Request ( url , requestOptions ) ;
161
162
const response = await fetch ( request ) ;
162
163
return await SubstrateStreamingResponse . fromRequestReponse (
163
164
request ,
@@ -167,7 +168,7 @@ export class Substrate {
167
168
if ( err instanceof Error ) {
168
169
if ( err . name === "AbortError" ) {
169
170
throw new RequestTimeoutError (
170
- `Request timed out after ${ this . timeout } ms` ,
171
+ `Request timed out after ${ this . timeout } ms requestId= ${ requestId } ` ,
171
172
) ;
172
173
// TODO: We could propagate timeout errors to nodes too, but I'm
173
174
// not sure yet what might be easier for the user to manage.
0 commit comments