|
|
@@ -1,5 +1,20 @@
|
|
|
const bunyan = require('bunyan')
|
|
|
const request = require('request')
|
|
|
+const OError = require('@overleaf/o-error')
|
|
|
+
|
|
|
+// bunyan error serializer
|
|
|
+const errSerializer = function (err) {
|
|
|
+ if (!err || !err.stack)
|
|
|
+ return err;
|
|
|
+ return {
|
|
|
+ message: err.message,
|
|
|
+ name: err.name,
|
|
|
+ stack: OError.getFullStack(err),
|
|
|
+ info: OError.getFullInfo(err),
|
|
|
+ code: err.code,
|
|
|
+ signal: err.signal
|
|
|
+ };
|
|
|
+};
|
|
|
|
|
|
const Logger = module.exports = {
|
|
|
initialize(name) {
|
|
|
@@ -28,7 +43,11 @@ const Logger = module.exports = {
|
|
|
}
|
|
|
this.logger = bunyan.createLogger({
|
|
|
name,
|
|
|
- serializers: bunyan.stdSerializers,
|
|
|
+ serializers: {
|
|
|
+ err: errSerializer,
|
|
|
+ req: bunyan.stdSerializers.req,
|
|
|
+ res: bunyan.stdSerializers.res
|
|
|
+ },
|
|
|
streams: loggerStreams
|
|
|
})
|
|
|
if (this.isProduction) {
|