簡體   English   中英

未在App Engine Flex(節點)中設置Google Stackdriver日志級別

[英]Google Stackdriver Log Level not set in App Engine Flex (Node)

我一直在嘗試在App Engine靈活節點部署中使用不同的日志級別,但無濟於事。

我的第一次嘗試只是使用console.info,console.warn等。

然后,我嘗試按照這些文檔中所述使用Winston。

app.get('/testlog', (req, res) => {
  // Writes some log entries
  logger.silly('silly');
  logger.debug('debug');
  logger.info('info');
  logger.warn('warn');
  logger.error('error');
  res.send("Logs written")
})

在本地它將日志寫入Stackdriver的“全局”范圍,並包含日志級別。 但是,部署后它將寫入“ GAE應用程序”,但沒有任何級別。

部署到App Engine時是否可以在Stackdriver中設置級別?

當它在非App Engine Flex或Google Cloud Functions以外的任何環境中運行時,Winston記錄器將直接記錄到Stackdriver Logging API。 顯然,在App Engine Flex和Google Cloud Functions上,它記錄到stdout。

App Engine Flex的默認Stackdriver日志記錄代理配置將檢測單行JSON並將其轉換為jsonPayload 如果您希望對嚴重性進行更細粒度的控制,可以將Winston配置為以單行1 JSON記錄,並讓日志記錄代理從JSON對象中獲取嚴重性 (請參閱https://cloud.google.com/logging/docs / agent / configuration#process-payload )。

1請參閱如何將節點winston JSON輸出更改為單行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM