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

时间:2019-10-01 07:18:20

标签: c# azure docker azure-iot-hub

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

我尝试使用Microsoft Monitoring代理,通过它我可以发送通过运行Docker容器生成的日志。但是,在边缘设备上,我们使用的是moby引擎而不是docker守护进程,因为哪个监视代理程序未收集日志记录(此设置可与docker-https://docs.microsoft.com/en-us/azure/azure-monitor/insights/containers#install-and-configure-windows-container-hosts一起运行)。此外,由于我在Windows上运行边缘环境,因此找不到用于Windows的监视代理程序的任何容器映像。(适用于Linux https://hub.docker.com/r/microsoft/oms/

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

1 个答案:

答案 0 :(得分:1)

到目前为止,还没有内置的方法(可能值得在Github上与团队检查,因为他们可能会在路线图上找到它。)

但是,您可以使用新的log-pull feature构建自己的解决方案:

  • 编写一个时间触发的小型Azure函数,该函数每隔几分钟就会提取一次您感兴趣的容器(或所有容器)的日志。日志将被写入存储帐户
  • 第二个Blob触发函数会拾取上载的日志并将其发送到Log Analytics。

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