ABP調試時遇到an internal error occurred during your request怎麼查看詳細日誌

在調試abp程序時,前端經常會拋出An internal error occurred during your request,這個時候往往不明覺歷,在後臺打斷點調試進去,看到的也是這個錯誤,怎麼查看詳細的錯誤日誌呢?

方法一

通過查看**..Web.Mvc項目,找到log4net.config文件裏面,找到 <file value="App_Data/Logs/Logs.txt" />這個配置,通過這個配置找到對應的Logs.txt的異常日誌文件,找到異常原因並解決。

方法二

通過在 ***.Web.Core模塊找到AbpZeroTemplateWebCoreModule.cs文件,找到 public override void PreInitialize()這個方法,然後在尾部添加 Configuration.Modules.AbpWebCommon().SendAllExceptionsToClients = true;

這樣,客戶端就可以查看到詳細的異常日誌信息,但是記得在發佈到正式環境 的時候關閉噢。

方法三

在APPService層,直接攔截異常,如下:
try
{
await _repository.InsertAsync(...);
await CurrentUnitOfWork.SaveChangesAsync();
}
catch(Exception ex)
{
throw new UserFriendlyException("user friendly exception message");
}
這樣手工攔截

附記

若你的實體繼承了IMustHaveTenant接口,在調用Repository.InsertAsync這樣的方法保存時必須給TenantId賦值,如果你沒有取到TenantId,在多租戶的情況下默認最好設置爲1(或者查看數據庫裏默認tenantid表的ID值 ).否則在做create等操作時會出錯。

 

轉載:https://www.jianshu.com/p/72fa5c8d10bf

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章