minbox-logging 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
minbox-logging 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
minbox-logging 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
minbox-logging 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
minbox-logging 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
提 交 者 恒宇少年
适用人群 未知
收录时间 2019-09-05

软件简介

Minbox Logging 是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud 微服务架构下配置使用,内部封装了 RestTemplate、OpenFeign 两种方式透传链路信息。

零侵入式

MinBoxLogging无需使用注解配置采集链路日志,只需要添加 依赖后简单配置 MinboxLogginAdmin的相关 地址服务名称即可,每次在收到请求时就会把请求对应的链路日志详细信息自动上报到 MinBoxLoggingAdmin进行后续分析、告警通知等。

链路日志分析图

日志客户端

链路日志的采集端,也就是具体的业务服务,只需要添加 minbox-logging-client客户端进行简单的配置就可以实现日志的采集以及日志的异步上报。

日志管理端

对外提供 安全的日志上报功能,通过整合 SpringSecurity来完成 BasicAuth基础认证,管理端接收到采集端上报的日志后会自动将日志存储到数据库,考虑到扩展方便,同样也提供监听 日志上报事件(ReportLogEvent)的方式来自定义存储日志到 消息队列logstash文件等存储介质。

日志管理界面

MinBoxLoggingAdmin提供了界面管理应用程序,通过 VUE前端框架进行编写界面与管理端的接口通讯,实时展示 链路日志日志采集服务列表等信息,可查看每条链路日志的详细信息(包含:请求头、请求参数、响应内容、响应头、状态码、异常堆栈信息等)。

整合 Spring Security 后的登录界面

可以直接整合 SpringSecurity来完成 Basic安全认证。

上报日志的服务列表

请求日志的采集服务在第一次上报时,会自动创建一条服务记录,服务的唯一性是根据: 服务ID + 服务IP + 服务端Port 来进行定义。

在每次上报日志成功后会修改服务的最后一次上报时间。

链路日志列表

链路日志是我们访问的入口服务生成,比如: bff-user -> user-service,链路日志产生的位置则是 bff-user服务,链路日志是接口 请求的入口也是做出 响应的结束位置,因此我们可以在页面上查看接口的请求 参数详情头信息以及 响应的内容,至于链路日志内的 日志单元目前界面还未做展示,可以根据 traceId链路日志编号自行去数据库查询。

链路日志详情

每一个请求的链路日志都会包含上图中的全部字段,从请求开始 -> 响应结束一条链路闭合记录。

安全性

MinBoxLoggingAdminUI内部提供了 login.html登录页面,可以整合 SpringSecurity通过配置 loginPageUrl登录跳转地址来使用内置的登录页面,当然也可以自定义登录页面。

可与 MinBoxLoggingAdmin共同使用 SpringSecurity的相同配置提升安全性。

文档

当前版本的文档,请访问 Wikis

快速开始

请访问快速开始的 wikis文档来查看并快速接入 MinBoxLogging快速接入文档

源码方式构建

MinBoxLogging使用 Maven进行构建项目。

先决条件

源码拉取需使用 Git,具体使用方式详见安装 Git

源码采用 JDK1.8版本进行编写,请注意修改使用项目的 JDK版本,JDK 1.8下载地址

需本地安装 Maven环境,Maven 下载地址

logging-admin-ui所需 vue-cli-service命令支持,本地需要安装 vue-cli

拉取源码到本地

git clone git@gitee.com:minbox-projects/minbox-logging.git

安装到本地Maven仓库

mvn install

编译 & 打包生成 jar 包

mvn clean package

Maven仓库依赖构建

MinBoxLogging内的模块都已经上传到 ApacheMavenCenter中央仓库,添加对应的依赖到 pom.xml会自动下载到本地。

欢迎提交贡献代码

MinBoxLogging欢迎广大开发者创建 PullRequest来贡献代码,代码通过审核后会被合并到 master主分支。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
666,找时间看看
2019/09/05 11:32
回复
举报
更多评论
发表于运维专区
2020/06/17 15:48

分布式链路日志 minbox-logging v1.0.5 版本发布,修复部分问题

MinBox Logging MinBox Logging是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud微服务架构下配置使用,内部封装了 RestTemplate、 OpenFeign两种方式透传链路信息。 v1.0.5.RELEASE 更新日志 问题修复 🐛 解决文件上传时日志采集异常问题 #I1KJJV 新增排除指定HttpStatus请求状态日志采集 #I1KT8S 版本升级 ✨ 升级依赖Spring版本为v5.2.7 升级依赖minbox-framework版本为v1.0.5 新增minbox-logging-de...

2
22
发表于DevOps专区
2020/02/14 11:16

minbox-logging v1.0.4 发布,支持线程共享传递链路信息

MinBox Logging MinBox Logging是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud微服务架构下配置使用,内部封装了 RestTemplate、 OpenFeign两种方式透传链路信息。 v1.0.4.RELEASE 更新日志 新特性:线程之间共享传递链路信息(traceID、spanID) 新特性:在使用 OpenFeign、 RestTemplate透传链路信息时日志打印出即将访问的请求地址 统一格式化类上javadoc注释 升级所使用的minbox版本 优化已知问题 零侵入式 Mi...

0
12
发表于DevOps专区
2019/12/20 10:11

分布式链路追踪日志框架 minbox-logging 1.0.2 发布,新增 GlobalLogging 概念

MinBoxLogging是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud微服务架构下配置使用,内部封装了 RestTemplate、 OpenFeign两种方式透传链路信息。 1.0.2.RELEASE 更新内容 升级使用minbox-framework版本为1.0.2.RELEASE 添加GlobalLogging全局业务日志的概念 支持将GlobalLog日志保存到数据库 修改LocalNotice本次日志通知的优先级 修改AdminNotice上报日志到Admin的优先级 添加支持定时上报到Admin功能支持 添加...

5
39
发表于运维专区
2019/09/17 16:36

MinBox Logging 1.0.1.RELEASE 发布,分布式链路日志

MinBoxLogging是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud微服务架构下配置使用,内部封装了 RestTemplate、 OpenFeign两种方式透传链路信息。 零侵入式 MinBoxLogging无需使用注解配置采集链路日志,只需要添加 依赖后简单配置 MinboxLogginAdmin的相关 地址或 服务名称即可,每次在收到请求时就会把请求对应的链路日志详细信息自动上报到 MinBoxLoggingAdmin进行后续分析、告警通知等。 链路日志分析图 更新...

0
22
发表于运维专区
2019/09/05 10:50

分布式链路日志组件 minbox-logging 初版发布

MinBox Logging MinBoxLogging是一款分布式、零侵入式的链路日志分析框架,支持 SpringCloud微服务架构下配置使用,内部封装了 RestTemplate、 OpenFeign两种方式透传链路信息。 零侵入式 MinBoxLogging无需使用注解配置采集链路日志,只需要添加 依赖后简单配置 MinboxLogginAdmin的相关 地址或 服务名称即可,每次在收到请求时就会把请求对应的链路日志详细信息自动上报到 MinBoxLoggingAdmin进行后续分析、告警通知等。 链路...

6
34
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
2019/10/14 11:14

零侵入式分布式链路日志minbox-logging使用文档v1.0

# MinBox Logging `MinBox Logging`是一款分布式、零侵入式的链路日志分析框架,支持`SpringCloud`微服务架构下配置使用,内部封装了`RestTemplate`、`OpenFeign`两种方式透传链路信息。 ## 零侵入式 `MinBox Logging`无需使用注解配置采集链路日志,只需要添加`依赖`后简单配置`Minbox Loggin Admin`的相关`地址`或`服务名称`即可,每次在收到请求时就会把请求对应的链路日志详细信息自动上报到`MinBox Logging Admin`进行后续...

0
0
发表于游戏开发专区
2015/10/19 09:08

logging

http://www.cnblogs.com/dkblog/archive/2011/08/26/2155018.html

0
0
发表了博客
2019/03/27 19:52

logging 配置文件

""" logging配置 """ import os import logging.config # 定义三种日志输出格式 开始 standard_format = '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]' \ '[%(levelname)s][%(message)s]' #其中name为getlogger指定的名字 simple_format = '[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s' id_simple_format = '[%(levelname)s][%(asctime)s] %(message)s' # 定...

0
0
发表了博客
2016/11/28 17:04

mybatis-Logging

Logging Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging 具体选择哪个日志实现工具由MyBatis的内置日志工厂确定。它会使用最先找到的(按上文列举的顺序查找)。 如果一个都未找到,日志功能就会被禁用。 不少应用服务器的classpath中已经包含Commons Logging,如Tomcat和WebShpere, 所以MyBatis会把它作为具体的日志实现。记住这点非常重要。这...

0
2
发表了博客
2019/08/29 21:46

django-logging

1、日志的相关概念 日志是一种可以追踪某些软件运行时所发生事件的方法。软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情。一个事件可以用一个可包含可选变量数据的消息来描述。此外,事件也有重要性的概念,这个重要性也可以被称为严重性级别(level) 日志的作用 通过log的分析,克以方便用户了解系统软件,和应用的运行情况,如果你的log足够丰富,也可以分析出用户的行为,类型喜好,地域分布等...

0
0
发表了博客
2020/10/14 15:56

logging常用

先简单把重点罗列一下,有时间再回来整理~ 基本用法 python之配置日志的几种方式 常见logging handler 常用handler 比较好用的TimedRotatingFileHandler logging遇上多进程 logging模块支持多线程,但是不支持多进程,多进程的logging策略基本上都是靠两种方法实现: 进程队列Queue 经典方法 文件锁 经典方法 (亲测友好且好用) 其他可参考多进程日志方法:python 多进程日志 logging...

0
0
发表了博客
2019/06/11 12:00

Django 之 logging

1. logging 1.1 什么是 logging logging 模块是 Python 内置的日志管理模块,不需要额外安装。 使用: import logging logging.critical('this is critical msg') logging.error('this is error msg') logging.warning('this is warning msg') logging.info('this is info msg') 运行结果如下: CRITICAL:root:this is critical msg ERROR:root:this is error msg WARNING:root:this is warning msg 默认只输出 warning 以上...

0
0
发表了博客
2020/05/21 07:07

logging模块

''' logging:日志模块(有时间,可以设置级别) logging模块将日志分为了五个等级:CRITICAL > ERROR > WARNING > INFO > DEBUG DEBUG:调试信息,通常在诊断问题的时候用得着; INFO:普通信息,确认程序安装预期运行; WARNING:警告信息,表示发生了意想不到的事情,或者指示接下来可能会出现一些问题,但是程序还是继续运行; ERROR:错误信息,程序运行中出现了一些问题,一些功能没有执行;...

0
1
发表了博客
2020/03/17 18:35

MyBatis Logging

Logging Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种方式: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging 具体选择哪个日志实现由MyBatis的内置日志工厂确定。它会使用最先找到的(按上文列举的顺序查找)。 如果一个都未找到,日志功能就会被禁用。 不少应用服务器的classpath中已经包含Commons Logging,如Tomcat和WebShpere, 所以MyBatis会把它作为具体的日志实现。记住这点非常重要。这意味...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
1 评论
37 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部