日志数据流
其中在nginx部位,可以获取access.log,用返回的红色箭头获取upstream参数。
日志处理架构
日志中心--存储服务器
1.Nginx:跨域的GET请求1像素的图片,可以记录request,response里的cookie,head,query等信息
http://analytics.xxxx.com/__utm.gif?a=11&b=222&c=333
关键参数:系统key,版本信息,时间戳,日志参数;
OtherClick
多条日志
日志中心--配置服务器(or 配置组件)
http:// analytics.xxxx.com/conf/
供解析模块使用
对外提供page,为开发人员提供配置的UI
用mysql保存日志格式;
主要数据结构:
系统表(systemId,系统名,中文描述,负责人,联系方式),
参数表(parameterId,参数名,参数简写,参数描述,参数位置head,body,common),
日志表(logId,logName,logPath,creater,creaerTime)
格式表(logId,parameterId,index)
关联表(systemId,formatId,logId)
主要确定map参数中的index,达到与日志格式一致的效果
日志过滤器
Filter:处理WEB项目的日志;
在chain.doFilter(request, response);方法之后,直接根据参数规范,从中取出前缀的参数并异步发送GET请求保存日志
重定向发日志
公共参数(系统ID,timestamp)在拦截器(filter,aop)里插入
AOP:处理服务类的日志;
在after处从本地队列中取出,直接异步发送GET请求保存日志
注:实现分为3阶段
1)无缓存
2)过滤器缓存
3)(消息中间件,memcacheQ-支持落地,redis),服务端统一来收集
JS组件
参照GA(1像素图片的跨域请求,后接具体参数及时间戳);
包装发送请求的组件
Other click组件
方案一(废弃):
样式:
<style>
.log_container { display:none; width:0px; heignt:0px; }
</style>
模版:
<div class="log_container">
<input type="hidden" id="" value="" />
<input type="hidden" id="" value="" />
</div>
其中style会定义在公共的css中
方案二:
将参数放到head中,可以解决servlet的日志,请求图片,ajax请求JSON的问题,
特殊字符的处理:html特殊字符,逗号,分号
其中移动网关,有可能会过滤head,需要进一步考虑。
日志组件
javaLogComponent日志公共组件
JSP标签
保存日志的公共前缀
设置单值到request中,自动追加前缀(前端已经取得的数据,后端不传回)
统一日志头到组件中--参考用户中心,WWW/WAP的日志头是统一的
自动缓存发送日志文件到日志中心(可选功能)
单条发送日志到日志中心(可选功能)
日志中心的实现技术
nginx + hadoop + tomcat + flume + mysql
日志中心方案对比
| 统一nginx | 日志中心http接口 |
日志格式配置 | 无法结构化管理 | 可以保存在mysql中 |
管理UI实现 | 难度较大 | 容易 |
日志文件 | 分散在nginx | 统一在日志服务器上 |
- 大小: 15.5 KB
- 大小: 25.8 KB
- 大小: 37.1 KB
- 大小: 57.7 KB
- 大小: 59.8 KB
分享到:
相关推荐
十二、spring mvc 如何把全局异常记录到日志中? 十三、如何给spring3 MVC中的Action做JUnit单元测试? 十四、spring mvc 转发与重定向 十五、spring mvc 处理ajax请求 十六、spring mvc 关于写几个配置文件的说明...
四、CXF框架可以与spring无缝连接,就不用我们自己Endpoint了。它还能记录日志之类的 五、我们还可以使用Idea下的webservice,能够使用图形画面的方式获取本地代理和生成WSDL文件。 Activiti 介绍 ...
基于SpringBoot框架和SaaS模式,构建的非常... - 核心框架:SpringBoot 2.0.0 - 持久层框架:Mybatis 1.3.2 - 日志管理:Log4j 2.10.0 - JS框架:Jquery 1.8.0 - UI框架: EasyUI 1.9.4 - 模板框架: AdminLTE
企业架构师必备技能(JAVA核心技术反射) JavaWeb之基础(手写实现Tomcat服务器) java多线程编程 纯手写实现SpringIOC实现过程 JEE企业级开发(企业级项目开发权威指南) 网络爬虫之JAVA正则表达式 手写springMVC框架 老...
FramkPHP是一款运行轻畅、架构清晰的PHP框架,框架以“快速易用”为理念给php开发者提供网站建设的最佳实践,框架核心代码非常易读且嵌套少易于进行个性化扩展。 FramkPHP 快速易用PHP框架 v1.7.131110 更新日志: 1....
1、框架采用多层架构,反射技术。 2、权限管理里实现的功能:按钮管理、菜单管理、角色管理、用户管理、数据字典、单号管理、日志管理等。通用于后台管理系统以及权限管理模块。 3、系统用到缓存技术,MemCached...
10PB天日志系统设计和实现 专为物联网优化设计的大数据平台 中台技术架构实践与思考 直播前端工程体系实践 云上DevOps工具链架构实现 新趋势下架构师的机遇与挑战 小团队构建大网站之技术选型 小程序端到端全链路...
* 核心框架:SpringBoot 2.0.0 * 持久层框架:Mybatis 1.3.2 * 日志管理:Log4j 2.10.0 * JS框架:Jquery 1.8.0 * UI框架: EasyUI 1.3.5 * 模板框架: AdminLTE 2.4.0 * 项目管理框架: Maven 3.2.3 ### 开发环境 建议...
核心框架:Spring Boot 权限框架:SpringSecurity 模板引擎:Thymeleaf 持久层框架:Mybatis-Plus 日志管理:LogBack 工具类:Apache Commons、Hutool 视图框架:Spring MVC 工作流:Activiti6 定时器:Quartz ...
部署和运维:讨论了微服务架构的部署和运维问题,包括容器化部署、持续集成和持续交付、监控和日志管理等方面。 微服务架构的最佳实践:总结了一些微服务架构的最佳实践和设计模式,以及一些常见的陷阱和解决方案。
FramkPHP是一款运行轻畅、架构清晰的PHP框架,框架以“快速易用”为理念给php开发者提供网站建设的最佳实践,框架核心代码非常易读且嵌套少易于进行个性化扩展。 FramkPHP 快速易用PHP框架 v1.7.131110 更新日志:1....
它与MV *框架无关,其主要目标是为以下方面提供标准方法: 定义组件跨组件共享功能使用后端/默认数据自举组件架构定义根据该层的目的是声明和抽象对其余堆栈将依赖的基本库集的访问。 它是我们可以定义如何与DOM,...
FramkPHP是一款运行轻畅、架构清晰的PHP框架,框架以“快速易用”为理念给php开发者提供网站建设的最佳实践,框架核心代码非常易读且嵌套少易于进行个性化扩展。 FramkPHP 快速易用PHP框架 v1.7.131110 更新日志...
spring boot 核心框架 sa-token 权限认证框架 mybatis-plus MyBatis扩展 Redis 分布式缓存数据库 knife4j 一个增强版本的Swagger 前端UI hutool Java工具类大全 beetl Beetl3 高速模板引擎 已实现功能 用户管理 ...
SKPHP是一套为WEB梦想家创造的轻量级开发框架(PHP Web Framework),遵循Apache2开源协议,采用分层体系架构实现“高内聚、低耦合”,适合大中型网站架构。她以“最简单、最高效、最安全”为理念,在...修正框架核心code
该项目的核心功能有:登录、功能管理、角色管理(包含了权限管理)、用户管理、部门管理、系统日志、业务字典,报表管理、代码生成器、通用的附件上传、下载、导入、导出,echart图表统计,缓存,druid的sql监控,...
3.3 其他日志框架统一转换成slf4j+logback 44 3.4 Spring Boot日志使用 45 3.5 Spring Boot默认配置 47 3.6 指定日志文件和日志Profile功能 52 3.7 切换日志框架(不使用SLF4j+LogBack) 54 4 Spring Boot与Web开发 ...
1、其中Yaf 是PHP国内第一人写的纯C框架, 核心在于路由部分与类的加载功能, 可惜没有数据库ORM操作,极轻量级。 2、phalcon是国外非常火的一个框架,也是一个纯C框架,非常重量级,过于臃肿,文档不太完善。 3、...
基于Spring Cloud的企业级微服务框架(用户权限管理,配置中心管理,应用管理,....),其核心的设计目标是分离前后端,快速开发部署,学习简单,功能强大,提供快速接入核心接口能力,其目标是帮助企业搭建一套类似...