فهرست منبع

Merge pull request #14296 from overleaf/jpa-error-serializer

[logger] serialize "error" field with customer error serializer

GitOrigin-RevId: 1cb588e84798c96286aec8f7f054570270a36b72
Jakob Ackermann 3 سال پیش
والد
کامیت
6b051b260e
2فایلهای تغییر یافته به همراه15 افزوده شده و 11 حذف شده
  1. 14 11
      libraries/logger/gcp-manager.js
  2. 1 0
      libraries/logger/logging-manager.js

+ 14 - 11
libraries/logger/gcp-manager.js

@@ -13,6 +13,7 @@ const ENTRY_FIELDS_TO_OMIT = [
   'pid',
   'msg',
   'err',
+  'error',
   'req',
   'res',
 ]
@@ -25,20 +26,22 @@ function convertLogEntry(entry) {
 
   // Error information. In GCP, the stack trace goes in the message property.
   // This enables the error reporting feature.
-  if (entry.err) {
-    if (entry.err.info) {
-      Object.assign(gcpEntry, entry.err.info)
+  const err = entry.err || entry.error
+  if (err) {
+    if (err.info) {
+      Object.assign(gcpEntry, err.info)
     }
-    if (entry.err.code) {
-      gcpEntry.code = entry.err.code
+    if (err.code) {
+      gcpEntry.code = err.code
     }
-    if (entry.err.signal) {
-      gcpEntry.signal = entry.err.signal
+    if (err.signal) {
+      gcpEntry.signal = err.signal
     }
-    if (entry.err.stack !== '(no stack)') {
-      gcpEntry.message = entry.err.stack
-    } else if (entry.err.message) {
-      gcpEntry.message = entry.err.message
+    const stack = err.stack
+    if (stack && stack !== '(no stack)') {
+      gcpEntry.message = stack
+    } else if (err.message) {
+      gcpEntry.message = err.message
     }
     if (entry.name) {
       gcpEntry.serviceContext = { service: entry.name }

+ 1 - 0
libraries/logger/logging-manager.js

@@ -19,6 +19,7 @@ const LoggingManager = {
       name,
       serializers: {
         err: Serializers.err,
+        error: Serializers.err,
         req: Serializers.req,
         res: Serializers.res,
       },