@nxtedition/lib 15.0.17 → 15.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/http.js +8 -8
- package/lib/undici/utils.js +1 -1
- package/logger.js +3 -0
- package/package.json +1 -1
package/http.js
CHANGED
|
@@ -89,8 +89,6 @@ module.exports.request = async function request(ctx, next) {
|
|
|
89
89
|
} catch (err) {
|
|
90
90
|
const responseTime = Math.round(performance.now() - startTime)
|
|
91
91
|
|
|
92
|
-
reqLogger = reqLogger.child({ req, res, err, responseTime })
|
|
93
|
-
|
|
94
92
|
req.on('error', (err) => {
|
|
95
93
|
if (res.statusCode > 500 || err.code !== 'ECONNRESET') {
|
|
96
94
|
reqLogger.warn({ err }, 'request error')
|
|
@@ -129,14 +127,16 @@ module.exports.request = async function request(ctx, next) {
|
|
|
129
127
|
res.write(JSON.stringify(err.body))
|
|
130
128
|
}
|
|
131
129
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
} else if (res.statusCode >= 400) {
|
|
130
|
+
reqLogger = reqLogger.child({ req, res, err, responseTime })
|
|
131
|
+
if (res.statusCode < 500) {
|
|
135
132
|
reqLogger.warn('request failed')
|
|
133
|
+
} else {
|
|
134
|
+
reqLogger.error('request error')
|
|
136
135
|
}
|
|
137
136
|
|
|
138
137
|
res.end()
|
|
139
138
|
} else {
|
|
139
|
+
reqLogger = reqLogger.child({ req, res, err, responseTime })
|
|
140
140
|
if (req.aborted || err.name === 'AbortError') {
|
|
141
141
|
reqLogger.debug('request aborted')
|
|
142
142
|
} else if (err.statusCode < 500) {
|
|
@@ -206,7 +206,7 @@ module.exports.createServer = function (options, ctx, middleware) {
|
|
|
206
206
|
requestTimeout: 0,
|
|
207
207
|
...options,
|
|
208
208
|
},
|
|
209
|
-
(req, res) => middleware({ req, res, ...factory() })
|
|
209
|
+
(req, res) => middleware({ req, res, ...factory() }),
|
|
210
210
|
)
|
|
211
211
|
|
|
212
212
|
server.setTimeout(2 * 60e3)
|
|
@@ -256,7 +256,7 @@ module.exports.upgrade = async function upgrade(ctx, next) {
|
|
|
256
256
|
.on('error', reject)
|
|
257
257
|
.on('timeout', () => {
|
|
258
258
|
reject(new createError.RequestTimeout())
|
|
259
|
-
})
|
|
259
|
+
}),
|
|
260
260
|
),
|
|
261
261
|
new Promise((resolve, reject) =>
|
|
262
262
|
socket
|
|
@@ -264,7 +264,7 @@ module.exports.upgrade = async function upgrade(ctx, next) {
|
|
|
264
264
|
.on('error', reject)
|
|
265
265
|
.on('timeout', () => {
|
|
266
266
|
reject(new createError.RequestTimeout())
|
|
267
|
-
})
|
|
267
|
+
}),
|
|
268
268
|
),
|
|
269
269
|
next(),
|
|
270
270
|
])
|
package/lib/undici/utils.js
CHANGED
|
@@ -62,7 +62,7 @@ function retryAfter(err, retryCount, opts) {
|
|
|
62
62
|
|
|
63
63
|
if (err.statusCode && [420, 429, 502, 503, 504].includes(err.statusCode)) {
|
|
64
64
|
const retryAfter = err.headers['retry-after'] ? err.headers['retry-after'] * 1e3 : null
|
|
65
|
-
return retryAfter
|
|
65
|
+
return Number.isFinite(retryAfter) ? retryAfter : Math.min(10e3, retryCount * 1e3)
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
if (
|
package/logger.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
const { isMainThread } = require('node:worker_threads')
|
|
1
2
|
const serializers = require('./serializers')
|
|
2
3
|
const pino = require('pino')
|
|
3
4
|
|
|
@@ -20,6 +21,8 @@ module.exports.createLogger = function (
|
|
|
20
21
|
// Do nothing...
|
|
21
22
|
} else if (!isProduction) {
|
|
22
23
|
stream = pino.destination({ fd: process.stdout.fd ?? 1, sync: true })
|
|
24
|
+
} else if (!isMainThread) {
|
|
25
|
+
stream = pino.destination({ fd: 1, sync: false, minLength: 0 })
|
|
23
26
|
} else {
|
|
24
27
|
stream = pino.destination({ sync: false, minLength: 4096 })
|
|
25
28
|
setInterval(() => {
|