如何调试后台/事件页面挂起状态

How to debug background/event page suspended state

本文关键字:事件 挂起状态 后台 何调试 调试      更新时间:2023-09-26

我想调试后台脚本(非持久性)在进入睡眠和醒来(并再次返回睡眠)时所做的事情。

点击"后台页面"将防止后台脚本进入挂起状态,但如果我杀死页面并在一段时间后打开它,只显示新的日志,而不是打开后台页面(从扩展页)之前打印的日志。

所以我想知道我们如何调试事件页面的挂起/唤醒状态?

编辑:把背景故事移到它自己的问题这里

如何在唤醒Event页面时防止/检测处理和恢复存储数据之间的竞争状态

您可以同时登录控制台和非易失性存储器。

您可以使用自定义日志功能,或者重载console.log:

console._log = console.log;
console.log = function() {
  var args = arguments;
  console._log.apply(console, args);
  chrome.storage.local.get({consoleLog : []}, function(data) {
    data.consoleLog.push(args);
    chrome.storage.local.set({consoleLog: data.consoleLog});
  });
}

当然,它可能只应该在您正在进行调试时使用。

尝试创建一个pageLog函数并在页面端发送要记录的对象