Azure Functions C# 如何使用反射将类中的自定义消息记录到 Azure 监控日志或分析监控日志

时间:2021-01-14 09:17:34

标签: c# .net-core reflection azure-functions azure-log-analytics

我将 WebJobsStartup 与我的 azure 函数一起使用。在 Startup.cs 文件中,我正在使用反射从我的另一个项目中加载 abc.dll 并调用它的主要方法。我想从这个被调用的方法(abc.dll)和 HttpTrigger 函数中获取日志。

在 abc.dll 的 main 方法中,我使用 ILogger 记录消息,与我的 azure 函数相同。

当我将此函数部署到 azure(Azure 函数)时,我只能看到与 azure 函数相关的日志,而不能看到与 abc.dll(调用方法)相关的日志。我已经检查了 abc.dll 是否正在加载(通过调用登录网页)

我尝试了应用程序洞察和实时指标,更新了 host.json 作为以下 Azure 链接文档中提供的各种选项:

              "fileLoggingMode": "debugOnly",
               "logLevel": {
               "Function.HttpTriggerAzureCSharp1":"Information",
               "Host.Results": "Error",
               "Host.Aggregator": "Trace",
               "default": "Information"
              },

这似乎不起作用。

请建议使用azure函数显示abc.dll(调用方法)日志的选项。

我正在使用具有以下详细信息的 azure 函数:

  • 操作系统:Linux
  • 计划:消费
  • 平台:.net-core
  • 开发环境:Visual Studio 代码
  • 语言:C#

我已经试过了 this this2

1 个答案:

答案 0 :(得分:0)

正如 Peter 在评论中提到的,您可以在函数的 DI 配置中 register 它们。 enter image description here

这里有一个sample供您参考,您可以参考它了解如何开发您的服务和日志提供程序的代码。 enter image description here

enter image description here