C# Facebook图形API-营销洞察边缘错误500

C# Facebook图形API-营销洞察边缘错误500,c#,facebook-graph-api,error-handling,facebook-c#-sdk,http-error,C#,Facebook Graph Api,Error Handling,Facebook C# Sdk,Http Error,我正在尝试使用.NET Facebook SDK在一定时间范围内提取广告见解。 我有80个广告账户,所有这些账户都应该每天进行处理。 所有广告指标都应该被提取出来(比如70或80) 这是我正在访问以发出请求的端点: https://graph.facebook.com/v2.8/{AdAccount}/insights?fields={fields}&level=ad&time_range[since]={begin_date}&time_range[until]={en

我正在尝试使用.NET Facebook SDK在一定时间范围内提取广告见解。 我有80个广告账户,所有这些账户都应该每天进行处理。 所有广告指标都应该被提取出来(比如70或80)

这是我正在访问以发出请求的端点:

https://graph.facebook.com/v2.8/{AdAccount}/insights?fields={fields}&level=ad&time_range[since]={begin_date}&time_range[until]={end_date}
我已经尝试了好几次,但都没有成功

  • 我已尝试在level=ad上为每个ad帐户发送一个顺序请求
  • 我尝试了并行请求以加快速度
  • 我还尝试了批处理请求,以提高性能
  • 所有这些尝试都需要很长时间来处理,我也不明白为什么有些请求会给我错误500,代码:1未知错误,因为这些错误不是线性的,它们偶尔会在不同的请求中出现

    我想知道什么是最好的做法来提取所有广告帐户的信息量没有错误,或至少处理他们,直到我有一个成功的答案

    更新

    我不确定发生了什么,我提出了两个简单的要求

    act_107********/insights?level=ad OK
    act_138********/insights?level=ad NOT OK
    

    这两个帐户都是活动的,并且都有活动广告。

    一个广告帐户可能有许多活动,每个都有许多广告集,每个都有许多广告。因此,当您调用API以获取一个广告帐户的所有广告的所有细节时,可能需要足够快地处理太多的数据。广告客户级别的insight call是小客户的选择,比如10个活动。为什么一个广告帐户是好的,而另一个不是好的原因是第一个帐户比第二个帐户有更多的广告

    你应该做的是一个接一个地获得insights活动,甚至是一个接一个地获得广告集(如果你有一个大型活动,有很多广告集)。此外,您还可以限制时间范围以仅检索所需的数据


    那么,有多少广告被认为是“太多”?没有这样的数字,因为有些广告很复杂,有些很简单。这还取决于您希望在insights调用中包含哪些字段。一般来说,如果你有太多的错误,需要在这里提问,这是一个很好的迹象,你现在应该中断你的通话

    如果您正在请求的数据集导致大量CPU负载或花费大量时间,Facebook可能会简单地终止API请求。您是否试图在一个请求中请求所有80个指标?如果是这样,将其拆分为几个单独的请求可能是有意义的。@CBroe在同一个简单的请求中,请求两个不同的帐户act_X_1/insights?level=ad和act_X_2/insights?level=ad,1返回数据,2返回错误500代码1