npm包yalo-raven的使用教程

阅读时长 6 分钟读完

在现代web开发中,前端应用的监测和错误追踪十分重要。yalo-raven是一款强大的基于Node.js的包,能够为前端应用提供实时错误监测和追踪服务。它可以被安装在任何npm项目中,提供跨平台的错误捕获,帮助开发人员及时发现和解决问题。

本文将详细介绍yalo-raven的使用方法,从安装到配置及运用。

安装npm包yalo-raven

yalo-raven是一款开源软件,并在npm上发布,安装过程极为简单。在命令行中执行以下命令即可完成安装:

配置yalo-raven

安装完成后,需要进行配置文件的编写。首先需要确定Dsn和版本信息(最近一次发行的版本为3.1.0),格式如下:

其中,Dsn的参数含义如下:

  • public_key: 你Releases API Key的公钥
  • private_key: 你Releases API Key的私钥
  • host: Sentry的主机地址(不包括协议,例如sentry.io/abc中的sentry.io
  • project_id: 项目ID,可以在项目概述页面中找到

捕获错误

配置好raven客户端后,接下来可以开始捕获错误了。先看一下最简单的用法:

这一行代码会生成一条Message类型的事件,并连同Stacktrace一起发送到Sentry服务器上。Message类型有时是有用的,但是对于大多数应用程序造成的错误,对错误进行分类是极为重要的。此时需要创建A和B类错误。

A类错误

A错误是由于环境(如浏览器)的初始状态而已导致的错误,例如无法访问某些全局变量或不存在的变量。这些错误通常不涉及用户行为,而是集成问题。

执行这个代码,你将能够捕捉到一个ReferenceError。会发送类似于下面这样的一条事件到你的Sentry上:

-- -------------------- ---- -------
-
    ----------- -----------------------------------
    -------- --------
    ----------- -------------
    --------- --------------
    ---------- ------------ ---- ----
    ---------- ----------- -- --- ---------
    ------------ -
        ------- -----------------
        -------- ----------- -- --- ---------
        ------------- -
            -
                ----------- -------------------------------
                ----------- --------------
                --------- ---
                -------- --
                --------- ----
            -
        -
    -
-

B类错误

B类错误通常与用户操作有关,例如Ajax请求失败或用户设置了错误的选项。捕捉这类错误可以帮助提高用户体验。

-- -------------------- ---- -------
----------------------- ------------- ----------- -
    -------------------
    --- ---- - --------------------
    --------
        ----- -----
        ---- ---------
        ----- -------
        -------- ---------- -
            ---------------------------
        --
        ------ --------------- ----------- ------------ -
            -------------------------------------
            -----------------------
        -
    ---
---

这段代码会将错误信息发送到Sentry服务器。Sentry将捕捉到该函数的调用,包含请求URL和变量data。它也将获取错误详细信息,或者提示是因为连接问题、403或500错误,无法正确交付。如果成功保存会直接打印出来。

原异常与重写

在大多数情况下,当 Raven 捕获异常时,它会立即重新抛出它,使你的应用程序的主要代码可以抓住它。通常可以忽略这个重写,但是有时您可能想要覆盖它。

使用 captureException 方法时,raven会在过滤列表中忽略与 ignoreErrors 配置匹配的异常类型。如果想指定需要忽略的异常,可以传入 ignoreErrors 数组。

以上代码将不会重新抛出 Error: Script error.。想要重写并打开一个新的异常log可以传入第二个参数来改变日志:

这里,我们打算对日志进行指纹验证(以便将来反向调用),并为其指定一个特定的指纹,可以比传递值更有意义,但也可以是任意数据。具体由你自己定义。

总结

yalo-raven是一款优秀的Node.js包,提供了实时的错误监测和追踪,为前端应用开发提供了极大的便利。它不仅能帮助开发人员及时发现和解决问题,还能帮助开发人员对错误进行分类和追踪。希望本文能够对初学者的了解有所帮助,同时也能为专家提供一些更高级的学习和指导。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005575e81e8991b448d4593

纠错
反馈