我正试图找出我的机器人有什么问题。这是一个机器人,意味着作为Cortana技能的后端。机器人是使用机器人框架版本3.8.0构建的。我在Azure Bot服务实例(Azure功能)上运行它。
在本地,一切都按预期工作。我正在使用bot框架模拟器来测试一切;太棒了现在我将bot发布到Azure并使用Cortana调用它。 Cortana回答说机器人存在问题。
当我在Azure中检查诊断日志时,我看到以下内容:
2017-07-18T08:11:34.252 Exception while executing function: Functions.messages
2017-07-18T08:11:34.252 Invalid channel data.
2017-07-18T08:11:34.272 Executed 'Functions.messages' (Failed, Id=e5eae9f5-97e4-4a35-aa5f-5c7d58a63aed)
2017-07-18T08:11:34.272 Invalid channel data.
2017-07-18T08:11:34.272 Function had errors. See Azure WebJobs SDK dashboard for details. Instance ID is 'e5eae9f5-97e4-4a35-aa5f-5c7d58a63aed'
2017-07-18T08:11:34.272 Invalid channel data.
2017-07-18T08:11:34.315 {"id":"6f095c10-d9e8-4ad0-a6a8-caf052288f8b","requestId":"2f4c950c-2459-4467-8579-4f3b5bc45e6b","statusCode":500,"errorCode":0,"messsage":"An error has occurred. For more information, please check the logs for error ID 6f095c10-d9e8-4ad0-a6a8-caf052288f8b"}
2017-07-18T08:11:34.315 Invalid channel data.
2017-07-18T08:11:34.194 Function completed (Failure, Id=e5eae9f5-97e4-4a35-aa5f-5c7d58a63aed, Duration=4626ms)
2017-07-18T08:11:34.252 Exception while executing function: Functions.messages. Microsoft.Bot.Connector: Invalid channel data.
所以“无效的频道数据”似乎是这里的主要错误,但这并不能说明多少。我启用了服务器上的所有日志记录并下载了+检查了这些;那里没什么更有用的。
我还将调试器附加到远程进程。我看到我的对话方法被调用并完成没有任何问题。所以问题似乎不在我的代码中,而是在框架中的某个地方?但我不知道接下来要去哪里。
BTW我也尝试更新到最新版本的SDK(3.8.5),但似乎Microsoft.Bot.Builder.Azure依赖于版本3.8.0,因为升级后它将无法运行程序集加载错误(它试图加载3.8.0)。
答案 0 :(得分:4)
您可以在本地调试Azure发布的BOT。这将帮助您找到真正的问题。
我正在添加如何在本地调试Azure发布的BOT的步骤。
单击“附加到进程”。 enter image description here
在“连接”目标中:输入没有http://的漫游器网址。 例如:yourbotname.azurewebsites.net:4022 -单击查找按钮。 -这是要求您提供用户名和密码。您需要从发布文件中获取天蓝色的用户名和密码。