【发布时间】:2019-01-31 12:37:08
【问题描述】:
我有一个简单的 C# Azure 函数,它使用计时器触发器每 X 分钟运行一次。没有输出绑定。
在应用洞察中,函数总是成功,结果代码为0:
[尽管多次调用 TraceWriter 的 .Error()。]
我想在应用程序洞察中获得正确的最终状态,但我不知道该怎么做。文档从不谈论这个:-/ 有人可以指导我如何在 C# 中做到这一点吗?
我尝试设置Environment.ExiCode,但结果相同。
我还尝试将返回类型更改为int,但随后不再调用该函数。我想是因为它是 azure 函数本身的 declare an output binding 方式。
这是我的功能:
[FunctionName("SendToOfflineArchive")]
public static void Run([TimerTrigger("%TimerInterval%")]TimerInfo myTimer, TraceWriter log)
{
log.Info($"C# Timer trigger function executed at: {DateTime.Now}");
// do stuff
int nbErrors = 7;
//return nbErrors;
}
如果结果代码不是 0 那就太好了...就像错误数(整数)一样。
【问题讨论】:
-
您好 Thibault,您是如何使用 Visual Studio 或直接在门户网站上创建此功能的?我认为 TraceWriter 是旧签名。看看这个docs.microsoft.com/en-us/azure/azure-functions/…
-
这是一个 7 个月的“旧”项目,使用 Functions 1.x 并且工作正常。但是版本 2.x 也有同样的问题。无论如何,记录器不是问题!
标签: c# azure azure-functions azure-application-insights