与Azure函数等效的HostingEnviornment.QueueBackgroundWorkItem

时间:2019-01-28 16:16:23

标签: c# .net azure asynchronous azure-functions

我正在编写一个自定义记录器,该记录器将Azure函数中的日志通过网络写入目标。该记录器必须是一劳永逸的异步方法–等待每个日志写入将太慢。但是,我不希望每次关闭主机时都丢失最后几个日志条目。有没有办法注册我的异步操作以使用与HostingEnviornment.QueueBackgroundWorkItem等效的东西来写日志?

1 个答案:

答案 0 :(得分:1)

AFAIK,Azure函数目前没有像QueueBackgroundWorkItem这样的东西(现代等效项为IApplicationLifetime / IHost); Azure Functions确实在幕后使用了这些功能,但是该配置级别不适用于最终用户代码。在一般情况下,具有耐用的功能,但是仅用于日志记录会显得过分过分。

也许您的日志记录系统可能需要一些工作。我有一个AF,可以将其日志流式传输到压缩的Azure Blob。在返回AF结果之前,我先对其进行了冲洗,到目前为止,我对它的性能感到满意。