AEMas a Cloud Service:如何隔离503错误?
如果所有页面都返回503错误检查是否有正在发生的事件。 如果一个页面返回503错误,请检查云日志。
描述 description
环境
Adobe Experience Manager as a Cloud Service
问题/症状
本文介绍如何在AEMas a Cloud Service上遇到503错误时隔离问题所在。
解决方法 resolution
AEMas a Cloud Service中的内容投放流程如下所示:
浏览器CDN Dispatcher发布
如果出现服务范围的事件,则所有页面都将返回503错误。 当CDN - Dispatcher或Dispatcher — 发布具有特定条件的请求时,只有特定页面会返回503错误。
案例A — 所有页面均返回错误
当所有页面都返回错误时,可能会出现服务范围的事件。 在Adobe系统状态“Experience Cloud” Adobe Experience Manager as a Cloud Service检查是否存在日常事件或计划维护。
Adobe系统状态https://status.adobe.com/
案例B — 只有特定页面会返回错误
当仅特定页面上发生错误时,页面可能存在固有问题,导致内容投放流程中的某个时间点无法正常响应。 在这种情况下,请尝试访问页面并再次看到503错误。 然后使用从Cloud Manager下载的日志隔离问题。
Dispatcher的 httpdaccess
和发布的 aemrequest
尤其重要。 检查每个日志是否包含相应的访问记录有助于隔离问题所在。
以下是一个要比较的日志示例,其中Dispatcher和Publish均返回了对的访问权限的正常响应 /us/en.html.
Dispatcher的 httpdaccess:logged
在响应时
cm-p12345-e67890-aem-publish-55cf6bcc5-vxfcf - - 18/Oct/2022:10:20:11 +0000 "GET /us/en.html HTTP/1.1" 200 16263 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36"
Publish的aemrequest:登录接收和响应
18/Oct/2022:10:20:11 +0000 [1063] -> GET /content/wknd/us/en.html HTTP/1.1 cm-p12345-e67890-aem-publish-55cf6bcc5-vxfcf
18/Oct/2022:10:20:14 +0000 [1063] <- 200 text/html 3355ms cm-p12345-e67890-aem-publish-55cf6bcc5-vxfcf
有关日志记录详细信息,请参阅手册。
https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/implementing/developing/logging.html?lang=en
以下四种情况可以从存在/不存在访问记录的组合中分离出来。
用例B-1 - Dispatcher和Publish均具有访问记录
由于Publish上的响应时间较长,CDN可能已超时。 检查Publish的 aemrequest
以及响应时间多长。 如果响应时间超过几分钟,请在Publish的 aemerror
.
用例B-2 - Dispatcher具有访问记录,但Publish没有
Dispatcher单独响应,或者请求已到达Publish,但在记录记录之前可能会发生错误。 检查Dispatcher的 httpderror
, aemdispatcher
,和发布的 aemerror
以了解相关消息。
用例B-3 - Dispatcher没有访问记录,但Publish有
Publish已接受请求,但尚未返回响应。 检查Publish的 aemrequest
. 如果没有响应记录,请在Publish的 aemerror
.
用例B-4 - Dispatcher和Publish都没有访问记录
由于出现问题,Dispatcher无法接受请求。 检查Dispatcher的 httpderror
和Dispatcher的 aemdispatcher
以了解相关消息。
此外,当特定页面返回错误时,以下内容也很有用。
- 尝试使用其他浏览器或从其他网络访问
- 将页面中的组件类型和数量与返回正常响应的页面进行比较
- 通过创建页面的包,检查错误是否随本地SDK重复出现