是否有直接的方法将容器日志从物联网边缘设备发送到 Azure 日志分析工作区?

Is there a direct way to send container logs to azure log analytics workspace from iot edge device?

我正在寻找将物联网边缘设备上生成的应用程序日志发送到 Azure 日志分析工作区的解决方案。

我尝试使用 Microsoft Monitoring 代理,我可以使用它发送由 运行ning docker 容器生成的日志。但是,在边缘设备上,我们使用的是 moby 引擎而不是 docker 守护进程,因为监控代理没有收集日志记录(此后设置为 运行 和 docker - https://docs.microsoft.com/en-us/azure/azure-monitor/insights/containers#install-and-configure-windows-container-hosts). Moreover, since I am running my edge environment on windows, I didn't find any container image of monitoring agent targeted for windows.(present for Linux https://hub.docker.com/r/microsoft/oms/)

我正在寻找一种完全自动化的方式来将边缘设备上生成的应用程序日志流式传输到 Azure 日志分析工作区。

目前还没有内置方法(可能值得在 Github 上与团队核实,因为他们可能在路线图上有这个)。

但是,您可以使用新 log-pull feature:

构建自己的解决方案
  • 编写一个小的时间触发的 Azure 函数,每隔几分钟为您感兴趣的容器(或所有容器)提取日志。日志将写入存储帐户
  • 第二个 blob 触发函数获取上传的日志并将它们发送到 Log Analytics。

//编辑:非常新的功能(仍在 Edge 1.0.9 的候选版本中):https://github.com/veyalla/ehm这可能正是您正在寻找的