使用vicrab实现项目的错误自动化管理

                                         使用vicrab实现项目的错误自动化管理

   

    1. 产品描述

Vicrab是一套集成数据接入、数据管理、数据分析数据挖掘、并对应用中可能存在的BUG和问题进行提示告警的云端管理平台。通过Vicrab开源错误跟踪功能,可帮助开发人员识别和调试错误实时监控和修复BUG和故障。从而协助业务不断迭代提高效率、从而改善和提升用户体验。

日志系统是非常重要的系统模块,在我们的日常开发,测试,线上运营诊断都有着非常强大的做用。然而,传统的日志系统都是发生在系统出问题的时候,工程师们去后台一段一段的翻看日志,海量的日志具有一定的不可读性,给系统运维排查错误带来了大量的无用工作Vicrab实现了系统的错误自动收集自动归类,以报表的形式显示错误信息,并进行告警。

  1.  2产品优势

助力产品快速迭代

Vicrab能更好的支持越来越快的版本迭代,保障客户业务灵活、高效的运行,更专注在提升市场份额,为技术部门提供更全面的辅助,从而取得更多的商业价值。

提供更优的团队合作

业务发展中很难把握技术投入的平衡点,特别是缺少专业保障平台,及稳定的开发和运维人员,Vicrab可更好的支持团队流程化处理故障等问题。

更好更全面技术辅助

Vicrab团队精耕于研发技术多年,对各项问题有丰富的经验。通过提供专业的平台和技术支持,为企业提供互补和帮助。

立即了解异常情况

只需几行代码即可在几分钟内设置Vicrab。当错误发生或重新出现时,通过电子邮件,短信通知相关人员,甚至可作为工作流程的一部分,不断迭代、提高效率、改善用户体验。

快速查找与修复错误

以最高效率进行错误分类、重现并解决错误,直观的管理平台可查看汇总事件中的错误发生位置和频率。帮助开发人员构建更好的应用程序并更快地迭代,在用户受影响前解决问题。

开源、开放

Vicrab坚持开源开放原则,对系统的代码进行开源,并且提供便捷的云服务平台。消除用户在使用系统过程中的顾虑,保障平台的持续发展和客户数据安全。

用户在使用Vicrab后,即能具备:

  1. 快速查找及自动修复异常的能力;
  2. 立即发现系统运行时异常的能力
  3. 使用简单-基于公有云的全服务监测的服务
  4. 查看每个版本的影响,并自动构建错误跟踪的能力。
    1. 产品功能

  vicrab日志系统是一套基于日志监控发现代码层面问题的SAAS服务框架,平台包括:

  1. Vicrab admin:基于云的saas服务,用户只需要注册一个账号,通过简单的配置,便可以轻松管理使用自己的应用异常。
  2. Vicrab SDK  :vicrab的客户端程序。目前vicrab的开发团队已经上线了vicrab-sdk for java ,vicrab-sdk for android 的两种客户端方案,只需要在项目中简单引入,配置日志传输路径即可集成完毕。
  3. Vicrab document:vicrab 的介绍文档,在github 上和官网都可以下载使用。

Vicrab功能上具备:

(1)强大的堆栈跟踪

Vicrab 可以将错误与程序代码相关联,可以确切知道错误怎么发生的,源头在哪里。 同时也可以屏蔽和接收错误信息,在需要快速迭代时,暂时屏蔽错误信息,但是在后续版本规划中,可以重新开启监控,解决问题。

(2)上下文理解

Vicrab 知道每个错误来自哪个环境, 错误包含有关其环境的详细信息,因此能够了解错误发生的条件。

(3)重现错误而无需用户反馈

在上下文中查看可能导致错误的所有详细内容,能够在告警发生时,知道异常是通过哪些错误引起的,不需要苦苦等待用户的反馈。在运营过程中及时知道产品运行健康度,节约处理和调试异常的时间。

(4)辅助决策版本的优先级

通过对各个版本的排错记录,您可以了解哪些错误已被解决,哪些错误是首次引入的,哪些错误是暂时屏蔽不处理的。将不同问题标记到不同版本,来管理各个发布的优先级,还能够对版本的异常进行持续的跟踪。

 

  1. 入门指南
    1. 业务接入流程
    1. 下载vicrab

Vicrab通过在线仓库的形式进行便捷的集成

官网地址:https://www.vicrab.com 

在线文档:https://www.vicrab.com/config/index

    1. 选择合适的vicrab sdk

   根据你的系统日志的实现方式来选择相应的sdk client 进行集成。查看官网(https://www.vicrab.com/config/index)的帮助,目前提供了如下的5种SDK接入方式

  1. Android >> demo
  2. java.util.logging >> demo
  3. Log4j 1.x >> demo
  4. Log4j 2.x >> demo
  5. Logback >> demo

客户端目前支持Android SDK java服务端根据日志实现方式来选择,vicrab从java6开始提供支持分为原生util loglog4j1log4j2logback四种接入形式这几种形式只是引入的jar包不同,其他步骤都一样。

 

    1. 集成步骤

(1)访问官网创建https://www.vicrab.com账号

  

使用vicrab实现项目的错误自动化管理

注册的时候,需要配置你的项目,选择开发语言,比如java,输入项目名称,组织等信息。注册完成。

(2)引入sdk此步骤可以参考帮助文档介绍这里使用log4j2为例

Using Maven:

<dependency>

    <groupId>com.vicrab</groupId>

    <artifactId>vicrab-log4j2</artifactId>

    <version>1.1</version>

</dependency>

假如你的项目使用springboot ,那么在多引入一个增强jar
<dependency>

  <groupId>com.vicrab</groupId>

  <artifactId>vicrab-spring-boot-starter</artifactId>

  <version>1.2</version>

</dependency>

 

(3)配置使用

配置DSN和日志文件(DSN的地址可以在vicrab的控制台设置里面提供,每个用户一个,各自独立),日志配置支持properties,xml 两种格式,具体参考在线手册。

(4)集成案例

在这一步我们将准备一个基础的Spring Boot 的项目,结构如下

使用vicrab实现项目的错误自动化管理

编写ExampleLog4j类,我们实现一个异常来进行测试。

package com.log.vicrab;

 

import java.util.Date;

 

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.boot.*;

import org.springframework.boot.autoconfigure.*;

import org.springframework.web.bind.annotation.*;

 

@EnableAutoConfiguration

@RestController

@SpringBootApplication

public class ExampleLog4j {

 

private static final Logger logger = LoggerFactory.getLogger(ExampleLog4j.class);

 

public static void main(String[] args) throws Exception {

 

SpringApplication.run(ExampleLog4j.class, args);

}

 

@RequestMapping("/hello")

String vicrabhomne() {

String dateStr = "";

try {

dateStr = new Date().toString();

Integer[] i = new Integer[2];

int a = i[3];

logger.error("this is a error test ");//the sample error message not be sent to the server

} catch (Exception e) {

logger.error("this is a error test ",e);//must be with param 'e'

}

return "Hello World! now time is :" + dateStr;

 

}

}

 pom.xm 添加依赖

<project xmlns="http://maven.apache.org/POM/4.0.0"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

 

<name>vicrab</name>

<url>http://maven.apache.org</url>

 

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.1.0.RELEASE</version>

<relativePath /> <!-- lookup parent from repository -->

</parent>

 

<groupId>com.vicrab.log</groupId>

<artifactId>vicrab</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>jar</packaging>

 

<!-- Add typical dependencies for a web application -->

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

 

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>3.8.1</version>

<scope>test</scope>

</dependency>

 

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

<exclusions>

<exclusion>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-logging</artifactId>

</exclusion>

</exclusions>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-log4j2</artifactId>

</dependency>

 

<dependency>

<groupId>com.vicrab</groupId>

<artifactId>vicrab-spring-boot-starter</artifactId>

<version>1.2</version>

</dependency>

 

 

<dependency>

<groupId>com.vicrab</groupId>

<artifactId>vicrab-log4j2</artifactId>

<version>1.1</version>

</dependency>

</dependencies>

 

<!-- Package as an executable jar -->

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

</plugins>

</build>

 

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

</properties>

 

</project>

 

配置DSN和log4j

使用vicrab实现项目的错误自动化管理

使用vicrab实现项目的错误自动化管理

 

测试运行

启动springboot,访问

http://localhost:8081/demo/hello

控制台查看错误

使用vicrab实现项目的错误自动化管理

 

接下来,登陆vicrab控制台查看错误归集:

使用vicrab实现项目的错误自动化管理

 

本文介绍了Vicrab的背景和用途,以及和log4j1的项目的集成方式,通过本篇我们已经对Vicrab有了一个大致的认识。后续版本会持续改进平台,并会推出更多功能助力企业和用户,如代码定位AI代码修复等。

 

反馈及联系方式

在线文档:https://www.vicrab.com/config/index

线上反馈:https://vicrab.com/about?message=#

售前&商务咨询:[email protected]

售后&服务咨询:[email protected]