filters

2019-02-20 15:51 更新

通过配置filters属性,用户可以过滤掉一些不需要捕获的错误,比如Script error.

filters只能在JavasScript中配置:

if ("fundebug" in window) {
    fundebug.filters = [
    {
        message: /^Script error\.$/
    }]
}

配置规则

filters属性有以下特点:

  • 它是一个数组,数组中的元素为过滤规则,当错误符合数组中任意一条过滤规则时,则会被过滤
  • 过滤规则是JavaScript对象,该对象的Key为错误的属性名,Value为正则表达式(唯一的特例是"inexistence");
  • 当错误的属性匹配对应正则表达式时,则会被过滤;
  • 当过滤规则的属性值为"inexistence"时,则会过滤某个属性不存在的错误;

示例

示例1:过滤name为ReferenceError的错误

fundebug.filters = [
{
    name: /^ReferenceError$/
}]

示例2:过滤name为ReferenceError,且message中含aler的错误

fundebug.filters = [
{
    name: /^ReferenceError$/,
    message: /aler/
}]

示例3:过滤method为GET,且status为401的错误

fundebug.filters = [
{
    req:
    {
        method: /^GET$/
    },
    res:
    {
        status: /^401$/
    }
}]

示例4:过滤特定域名的资源加载错误

fundebug.filters = [
{
    target:
    {
        src: /example.com/
    }
}]

示例5:过滤status不存在的图片加载错误

fundebug.filters = [
{
    target:
    {
        tagName: /^IMG$/,
        status: "inexistence"
    }
}]

示例6:配置多条过滤规则

fundebug.filters = [
{
    message: /^Script error\.$/
},
{
    req:
    {
        method: /^GET$/
    },
    res:
    {
        status: /^401$/
    }
}]

不同类型的错误的属性略有不同,具体可以查看JavaScript执行错误资源加载错误以及HTTP请求错误

常见错误过滤

Script error.

fundebug.filters = [
{
    message: /^Script error\.$/
}]

WeixinJSBridge is not defined

fundebug.filters = [
    {
        message: /WeixinJSBridge is not defined/
    }
];


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号