Vicrab是一套集成数据接入、数据管理、数据分析、数据挖掘、并对应用中可能存在的BUG和问题进行提示告警的云端管理平台。通过Vicrab开源的错误跟踪功能,可帮助开发人员识别和调试错误,实时监控和修复BUG和故障。从而协助业务不断迭代、提高效率、从而改善和提升用户体验。
日志系统是非常重要的系统模块,在我们的日常开发,测试,线上运营诊断都有着非常强大的做用。然而,传统的日志系统都是发生在系统出问题的时候,工程师们去后台一段一段的翻看日志,海量的日志具有一定的不可读性,给系统运维、排查错误带来了大量的无用工作。Vicrab实现了系统的错误自动收集、自动归类,以报表的形式显示错误信息,并进行告警。
助力产品快速迭代
Vicrab能更好的支持越来越快的版本迭代,保障客户业务灵活、高效的运行,更专注在提升市场份额,为技术部门提供更全面的辅助,从而取得更多的商业价值。
提供更优的团队合作
业务发展中很难把握技术投入的平衡点,特别是缺少专业保障平台,及稳定的开发和运维人员,Vicrab可更好的支持团队流程化处理故障等问题。
更好更全面的技术辅助
Vicrab团队精耕于研发技术多年,对各项问题有丰富的经验。通过提供专业的平台和技术支持,为企业提供互补和帮助。
立即了解异常情况
只需几行代码即可在几分钟内设置Vicrab。当错误发生或重新出现时,通过电子邮件,短信通知相关人员,甚至可作为工作流程的一部分,不断迭代、提高效率、改善用户体验。
快速查找与修复错误
以最高效率进行错误分类、重现并解决错误,直观的管理平台可查看汇总事件中的错误发生位置和频率。帮助开发人员构建更好的应用程序并更快地迭代,在用户受影响前解决问题。
开源、开放
Vicrab坚持开源开放原则,对系统的代码进行开源,并且提供便捷的云服务平台。消除用户在使用系统过程中的顾虑,保障平台的持续发展和客户数据安全。
用户在使用Vicrab后,即能具备:
vicrab日志系统是一套基于日志监控发现代码层面问题的SAAS服务框架,平台包括:
Vicrab在功能上具备:
(1)强大的堆栈跟踪
Vicrab 可以将错误与程序代码相关联,可以确切知道错误怎么发生的,源头在哪里。 同时也可以屏蔽和接收错误信息,在需要快速迭代时,暂时屏蔽错误信息,但是在后续版本规划中,可以重新开启监控,解决问题。
(2)上下文理解
Vicrab 知道每个错误来自哪个环境, 错误包含有关其环境的详细信息,因此能够了解错误发生的条件。
(3)重现错误而无需用户反馈
在上下文中查看可能导致错误的所有详细内容,能够在告警发生时,知道异常是通过哪些错误引起的,不需要苦苦等待用户的反馈。在运营过程中及时知道产品运行健康度,节约处理和调试异常的时间。
(4)辅助决策版本的优先级
通过对各个版本的排错记录,您可以了解哪些错误已被解决,哪些错误是首次引入的,哪些错误是暂时屏蔽不处理的。将不同问题标记到不同版本,来管理各个发布的优先级,还能够对版本的异常进行持续的跟踪。
Vicrab可通过在线仓库的形式,进行便捷的集成:
官网地址:https://www.vicrab.com
在线文档:https://www.vicrab.com/config/index
根据你的系统日志的实现方式来选择相应的sdk client 进行集成。查看官网(https://www.vicrab.com/config/index)的帮助,目前提供了如下的5种SDK接入方式:
客户端目前支持Android SDK。 java服务端可根据日志实现方式来选择,vicrab从java6开始提供支持。分为原生util log、log4j1、log4j2、logback四种接入形式,这几种形式只是引入的jar包不同,其他步骤都一样。
(1)访问官网创建https://www.vicrab.com账号。
注册的时候,需要配置你的项目,选择开发语言,比如java,输入项目名称,组织等信息。注册完成。
(2)引入sdk,此步骤可以参考帮助文档介绍。 这里使用log4j2为例
Using Maven:
<dependency>
<groupId>com.vicrabgroupId>
<artifactId>vicrab-log4j2artifactId>
<version>1.1version>
dependency>
假如你的项目使用springboot ,那么在多引入一个增强jar
<dependency>
<groupId>com.vicrabgroupId>
<artifactId>vicrab-spring-boot-starterartifactId>
<version>1.2version>
dependency>
(3)配置使用
配置DSN和日志文件(DSN的地址可以在vicrab的控制台设置里面提供,每个用户一个,各自独立),日志配置支持properties,xml 两种格式,具体参考在线手册。
(4)集成案例
在这一步我们将准备一个基础的Spring Boot 的项目,结构如下
编写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 添加依赖
"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">
4.0.0
vicrab
http://maven.apache.org
org.springframework.boot
spring-boot-starter-parent
2.1.0.RELEASE
com.vicrab.log
vicrab
0.0.1-SNAPSHOT
jar
org.springframework.boot
spring-boot-starter-web
junit
junit
3.8.1
test
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j2
com.vicrab
vicrab-spring-boot-starter
1.2
com.vicrab
vicrab-log4j2
1.1
org.springframework.boot
spring-boot-maven-plugin
UTF-8
配置DSN和log4j
测试运行:
启动springboot,访问
http://localhost:8081/demo/hello
控制台查看错误
接下来,登陆vicrab控制台查看错误归集:
本文介绍了Vicrab的背景和用途,以及和log4j1的项目的集成方式,通过本篇我们已经对Vicrab有了一个大致的认识。后续版本会持续改进平台,并会推出更多功能来助力企业和用户,如代码定位、AI代码修复等。
反馈及联系方式
在线文档:https://www.vicrab.com/config/index
线上反馈:https://vicrab.com/about?message=#
售前&商务咨询:[email protected]
售后&服务咨询:[email protected]