Azure 上有通用的日志服务吗?

use*_*704 8 .net c# asp.net azure

也许 SO 不是这个问题的正确地方。如果有更好的平台,请告诉我,我会在那里发布。

在单个产品/域中,我们有多个 Azure 托管的应用程序。有些是 Azure Functions,有些是 API。有些是网站。有些使用公共数据库。有些使用他们自己的自定义数据库。但所有人都以某种方式共同努力,形成了自己的生态系统。

我们遇到的问题是日志记录。随着时间的推移,这些应用程序中的每一个都使用自己的日志记录系统创建。我们希望将它们全部整合到一个系统中。

我正在查看 Azure 必须为某种解决方案提供的所有服务。我们不想要一个标准的 SQL 数据库。我们想要一个专门用于日志记录的服务,它最好有自己的内置查询系统。这个想法是我们将创建我们自己的内部日志 API,可以从每个应用程序调用它。然后这个 api 将存储日志。

起初,Azure Log Analytics Workspace 似乎是显而易见的解决方案。但随着我对它的了解越来越多,我不太确定。它似乎更适合出去收集有关机器性能的记录,而不是让某些服务(如我们的 API)向其发送日志记录。我是否正确?或不?

Application Insights 在这方面做得很好,但当然,每个应用程序都有自己的 Application Insights 实例。我们希望为所有应用程序的所有日志建立一个统一的存储库

所以我的问题是:是否有专为通用日志记录设计的开箱即用的 Azure 服务?

我希望这是有道理的。

Thi*_*dio 5

Azure Monitor 是您正在寻找的服务。

在此处输入图片说明

如果您的应用已使用 Application Insights 进行检测,则可以发送自定义事件和指标:

https://docs.microsoft.com/en-us/azure/azure-monitor/app/api-custom-events-metrics

最后,您可以使用 Kusto 查询进行查询:

https://docs.microsoft.com/en-us/azure/azure-monitor/log-query/log-query-overview