2

最近我部署了我的nodeJs bot到Bot Service,我似乎無法弄清楚如何生成並查看它的日誌。無法弄清楚如何生成和查看nodeJs bot的Bot日誌記錄

  • 當我嘗試啓用日誌記錄,我經常收到未知錯誤
  • 查看服務器上的日誌文件,沒有文件誰登錄節點應用
  • 試圖登錄到應用程序的見解,沒有成功。

有幫助嗎?

+0

關於您的問題反饋可以在[記錄與機器人服務問題(https://feedback.azure.com/forums/562027-azure-bot-service/suggestions/17326249-logging-issues-with-bot可見 - 服務),你可以監視它的狀態以進行任何更新。 –

+0

謝謝Aaron,我會等待修復 –

+0

現在找到了這個解決方法 - https://github.com/Microsoft/BotBuilder/issues/1909 –

回答

1

假設你的機器人是通過Azure的通過應用服務託管,你應該能夠看到你的NodeJS記錄應用程序,請執行以下步驟:

啓用日誌記錄

  1. 點擊您的Azure儀表板上的「應用程序服務」框,或通過頂部搜索欄導航到資源。
  2. 在側面菜單中,在監控下,導航到診斷日誌。
  3. 確保應用程序日誌記錄(文件系統)已打開。
  4. 現在,在您的應用程序的NodeJS \網站\ wwwroot的的根目錄下,你要創建一個名爲IISNode.yml文件和它裏面寫了一行loggingEnabled: true。這將使您的應用程序能夠將stderrstdout寫入日誌流。
  5. 從這裏,你只需要訪問你的應用程序的日誌流,並且有3種方式。

訪問日誌流

就個人而言,我更喜歡使用的Azure的命令行界面,您可以使用節點包管理器或NPM輕鬆安裝。如果你需要root權限

npm install -g azure-cli

sudo npm install -g azure-cli

要安裝Azure的CLI,在終端上發出以下命令。

如果您需要關於如何安裝Azure的CLI look here.

現在你必須通過Azure的CLI登錄到您的帳戶,天青,以便它可以訪問您訂閱的更多信息。這是通過azure login完成的。

通過命令行完成登錄後,需要使用命令azure config mode asm切換到服務管理模式。

然後,您可以使用azure site list獲取當前Azure站點的列表。

在列表中,找到您想要日誌的站點,並在名稱列中找到其名稱。然後使用命令azure site log tail <sitename>,終端將開始直接從您的應用程序輸出實時日誌!

其他選項

以上方法只的3種方法,你可以用它來訪問這些日誌1。如果你想了解其他兩種方法的更多信息,那麼follow this link.

上面的鏈接還包含我在文章中列出的大量信息。

我希望這有助於!