azure-functions - Azure Function (ServiceBus) System.Private.CoreLib 错误(在本地工作)
问题描述
当我在本地运行我的 Azure 函数时,它们就像一个魅力。但是当我在云中发布和运行它们时,出现以下错误:
[错误] System.Private.CoreLib:执行功能时出现异常:警报。Function.PowerBI:AzureFunction.PowerBi 中的放弃消息。
在名为 PowerBi 的函数中运行名为 Alert 的函数。有没有办法,也许在 Kudu 中可以看到实际的错误,或者我应该如何解释错误
System.Private.CoreLib
代码:
[FunctionName("Alert")]
public static async Task Alert([ServiceBusTrigger(Topic.Alert, Subscription.PowerBi, Connection = "servicebusconnectionstring")] Message message, TraceWriter log)
{
if (!MessageHandler.Validate(message, Subscription.PowerBi))
return;
var json = Encoding.UTF8.GetString(message.Body);
var messageCounter = message.SystemProperties.DeliveryCount;
try
{
var alert = Validator.ValidateCloudAlert(json);
if (alert != null)
{
var powerBiAlert = alert.ToPowerBiAlert();
var result = await PowerBiService.AddRow(powerBiAlert);
if (!result)
throw new PowerBiCommandException($"PowerBiService.AddRows returned value: {result}");
}
}
catch (Exception e)
{
EventLogger.LoggException("Function.PowerBi.Alert", e, new Dictionary<string, string>() { { "Messsage", json } });
if (messageCounter >= 5)
{
EventLogger.LoggEvent("DeadLetterQueue", new Dictionary<string, string>() { { "Function", "Function.PowerBi.Alert" }, { "Messsage", json } });
await QueueService.SendAsync(Queue.Deadletter, JsonConvert.DeserializeObject<CloudAlert>(json), Topic.Alert, Subscription.PowerBi);
}
else
throw new MessageAbandonException($"Abandom message in AzureFunction.PowerBi");
}
}
谢谢您的帮助!
解决方案
包含的以下包使 Azure 功能停止工作:
PackageReference 包括="System.Dynamic.Runtime" 版本="4.3.0"
有没有办法更容易地找出这个问题,这次我只是删除了一行代码,直到我发现问题所在。非常耗时。即使您建议使用 Application Insights(我这样做),也很难找到真正的问题。我只需要花一些时间看看它发生在哪一行,并试图删除所有与此相关的 nugets,直到我发现问题。
推荐阅读
- reactjs - Webpack 更新包后找不到模块
- git - 了解 oh my posh 中的 git 符号
- fortran - 通用接口和运算符重载 - 如何将通用接口块中的过程设置为模块中的私有?
- javascript - 如果没有其他变化,则在 1 秒后状态发生变化时运行函数 in useeffect
- mysql - 当表和列存在并且类型相同时,为什么我不能在这里添加外键?
- python - 在 Python 后台打开浏览器
- c# - 在 ALB 上使用 Cognito 用户池进行 ASP.NET Core 身份验证
- javascript - 找出正在加载的图片源
- leaflet - 如何使用传单和 geoJson 文件数据制作热图
- python - Discord.PY 不退出