diff --git a/packages/api/src/apollo.ts b/packages/api/src/apollo.ts index 0a8f49fb8..1527fa9ce 100644 --- a/packages/api/src/apollo.ts +++ b/packages/api/src/apollo.ts @@ -104,7 +104,7 @@ export function makeApolloServer(): ApolloServer { schema: schema, context: contextFunc, formatError: (err) => { - console.log('server error', err) + logger.info('server error', err) Sentry.captureException(err) // hide error messages from frontend on prod return new Error('Unexpected server error') diff --git a/packages/api/src/routers/svc/webhooks.ts b/packages/api/src/routers/svc/webhooks.ts index eaa351be9..cc6c689f0 100644 --- a/packages/api/src/routers/svc/webhooks.ts +++ b/packages/api/src/routers/svc/webhooks.ts @@ -64,7 +64,7 @@ export function webhooksServiceRouter() { [type]: data, }) - console.log('triggering webhook', url, method, body) + console.log('triggering webhook', url) await axios.request({ url, method, diff --git a/packages/api/src/services/create_page_save_request.ts b/packages/api/src/services/create_page_save_request.ts index 8e0678d74..5aa92f719 100644 --- a/packages/api/src/services/create_page_save_request.ts +++ b/packages/api/src/services/create_page_save_request.ts @@ -145,7 +145,7 @@ export const createPageSaveRequest = async ({ // create processing page const pageId = await createPage(page, ctx) if (!pageId) { - console.log('Failed to create page', page) + console.log('Failed to create page', url) return Promise.reject({ errorCode: CreateArticleSavingRequestErrorCode.BadData, }) diff --git a/packages/api/src/utils/logger.ts b/packages/api/src/utils/logger.ts index fe6eb3e53..0feb934c4 100644 --- a/packages/api/src/utils/logger.ts +++ b/packages/api/src/utils/logger.ts @@ -55,6 +55,17 @@ function localConfig(id: string): ConsoleTransportOptions { } } +class GcpLoggingTransport extends LoggingWinston { + log(info: any, callback: (err: Error | null, apiResponse?: any) => void) { + const infoString = JSON.stringify(info) + if (infoString.length > 250000) { + // max size for a log entry is 256KB + info = infoString.substring(0, 256000) + } + super.log(info, callback) + } +} + /** * Builds a logger with common options, including a transport for GCP when running in the cloud. * @param id Name of the log stream. @@ -72,7 +83,7 @@ export function buildLogger(id: string, options?: LoggerOptions): Logger { export function buildLoggerTransport(id: string): TransportStream { return env.dev.isLocal ? new transports.Console(localConfig(id)) - : new LoggingWinston({ ...googleConfigs, ...{ logName: id } }) + : new GcpLoggingTransport({ ...googleConfigs, ...{ logName: id } }) } /** diff --git a/packages/api/src/utils/parser.ts b/packages/api/src/utils/parser.ts index 4347e9448..d3e4abe8d 100644 --- a/packages/api/src/utils/parser.ts +++ b/packages/api/src/utils/parser.ts @@ -443,7 +443,7 @@ export const parsePageMetadata = (html: string): Metadata | undefined => { return { title, author, description, previewImage } } catch (e) { - console.log('failed to parse page:', html, e) + console.log('failed to parse page:', e) return undefined } }