Из трёх упавших вызовов в логе видна только одна ошибка
try
{
await Task.WhenAll(syncCrm, syncErp, syncWarehouse);
}
catch (Exception ex)
{
_log.LogError(ex, "sync failed");
}
Упали все три синхронизации, а в логе одна запись с ошибкой CRM. Как получить все ошибки?
- Разобрать InnerExceptions из задачи WhenAll
- Ловить AggregateException в catch
- Заменить WhenAll на WhenAny
- Логировать ex.InnerException
