Azure 函数 - 在全局每个日志语句中添加 InitationId

问题描述 投票:0回答:1

我正在编写一个 Azure 函数,我想记录当前正在执行的函数的 invokingId 与日志消息一起记录。我有一个 CustomLogger 类,利用 dotnet 的 ILogger 接口。我有 Transient、Scoped 和 Singleton 生命周期对象 - 所有这些对象都通过注入其中的 CustomLogger 添加一些日志。 CustomLogger 必须是瞬态的,因为它必须被注入到所有类型的对象中(基于生命周期)。如何获取记录器类中的invocationId?我不希望 CustomLogger 的用户每次都传递 invokingId 。难道不可能吗?

c# .net logging azure-functions lifetime
1个回答
0
投票

使用此参考,我们可以在 Azure Function 中添加 InvokingId。

public static HttpResponseMessage Run(HttpRequestMessage req, TraceWriter log, ExecutionContext context)
{
    return req.CreateResponse(System.Net.HttpStatusCode.OK, context.InvocationId);
}

输出:

enter image description here

  • 有关更多详细信息,请参阅此 SOgit
© www.soinside.com 2019 - 2024. All rights reserved.