业务系统日志数据采集

业务系统的定义

业务系统是指在一个专业/行业方面,比如人事系统、财务系统、物资系统等,从某一个方面从上到下的组织架构及所有的业务工作。

拿企业业务系统来说,此系统解决的是公司外部的问题,即将一个公司生产的产品卖给他人。

业务系统解决的问题

  1. 让业务流程变的更加规范
  2. 数据实时展示,并给出领导层决策
  3. 历史数据长久保留并随时可查

业务系统—ERP

ERP是企业资源计划的简称,由不同的功能模块组成的软件系统,建立在信息技术基础上。是一个信息高度集成的管理系统。核心业务包括:财务统计,会计管理,销售管理,采购管理,客户关系管理,供应商管理,物流管理,生产计划,质量管理

业务系统—CRM

CRM是指利用计算机网络实现以客户为中心的系统。主要用途是实现企业效益最大化,作用:服务、挖掘客户,维护客户与销售之间的关系、提高客户的满意度、提高服务质量。

应用:

  1. 客户档案有序管理
  2. 合同管理
  3. 销售报表
  4. 预测销售业绩

业务系统的数据价值

数据库数据的价值

记录了业务产生数据,可以用来分析企业业务趋势等。

日志数据的价值

日志中记录了业务系统的几乎所有行为。通过日志信息可以为企业应用系统纠错跟踪系统的运行优化系统性能,可以反映系统错误操作被恶意攻击情况

在高可靠性的系统中,日志能够准确及时反映系统的状况,从而保障了系统运行的连续性

日志数据

由于日志是分散存储才不同设备、服务器中的,所以大多数公司使用集中化管理日志,如syslog,将所有服务器上的日志收集汇总。

日志的作用

  1. 信息查找:检索日志可以找到系统bug,并针对性的修复bug
  2. 服务诊断:对日志信息进行统计分析,根据服务的符合、运行状态,进行相应的优化
  3. 数据分析:如果是格式化的日志,如log,可以进一步分析、统计、聚合出更有意义的信息

ELK

ElasticSearch、Logstash和Kibana三个开源工具组成

ElasticSearch是一个开源分布式搜索服务器。特点是,零配置、分布式、索引自动分片、自动发现、索引副本即止、自动搜索负载

Logstash主要功能,日志进行收集、过滤并将其存储。用于收集集群日志

Kibana浏览器页面的Elasticsearch前端展示工具,主要是为ElasticSearch和Logstash提供web互动界面。

开发语言与技术框架

.Net

.Net平台是微软搭建的技术平台,技术人员在此平台上进行应用的搭建与开发。

程序的运行需要很多所必需的环境。这就是.Net平台 。

.Net的 日志框架

  1. 记录器:日志的对象,可以同时连接一个或多个不同的监视器,记录各种不同的消息和信息
  2. 监视器:用于存储和显示日志消息的媒介(文本文件、数据库、网络、控制台、邮箱)
  3. 包装器:用于制定日志记录的方式
  4. 过滤器:根据消息的严重性级别来过滤和忽略某类消息,只记录特定级别的日志信息
  5. 布局:用于格式化输出(定义输出内容和输出格式)
  6. 严重性级别:给不同类别的消息给予不同的严重程度。

Java

Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。
Java分为三个体系:
JavaSE(J2SE)(Java2 Platform Standard Edition,基础
JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,企业)
JavaME(J2ME)(Java 2 Platform Micro Edition,嵌入式设备)。
常用的日志框架Log4j、Slf4j 、Logback

Java的日志框架

Java3以前Java的日志不能定制化,且日志粒度(粒度就是同一维度下,数据统计的粗细程度)不够细。

之后阿帕奇发布了Log4j,解决了上述问题。

现在流行的日志框架Log4j2是性能最好的

Java的日志输出方式

  1. 使用IDEA创建一个Maven项目
  2. 在pom.xml中添加log4j依赖,重载pom.xml,等待依赖添加成功。
  3. 创建Log对象(静态类),并输出若干日志。
  4. 配置每一个日志的配置文件,并分别配置同步和异步两种方式(现用现查)

Java的语言特点

  1. 跨平台性:Java编译后的字节码具有一次编译到处运行的特点,运行在JVM中。
  2. 简单性:Java是面向对象的程序设计语言,没有那些难以理解的指针、结构等
  3. 面向对象:面向对象的程序设计语言,属性或方法必须声明到一个具体的对象中,才能使用。
  4. 安全性:Java在编译时有严格的语言和语义检查,保证了每个变量对应一个值

JavaEE下的框架*

  1. Struts2
  2. Spring
  3. Hibernate
  4. MyBatis/iTatis
  5. Security
  6. Velovity/Framemark/Thmeleaf

微服务框架

概述

微服务架构是围绕着分模块和分布式思想构建的一系列结果的简称,是一种在传统软件应用框架的基础上,按照功能拆分为粒度更细的服务,拆分出的每个服务都是一个独立的应用

服务*

  1. 微服务实例的开发–SpringBoot
  2. 服务的注册与发现–Spring Cloud Eureka
  3. 负载均衡–Spring Cloud Ribbon
  4. 服务容错–Spring Cloud Hystrix
  5. API网关–Spring Cloud Zuul/Gateway
  6. 分布式配置中心–Spring Cloud Config

SpringBoot

集成了原有Spring框架的优秀基因,省去了Spring繁琐的配置,很容易创建一个独立运行的、准生产级别的基于Spring框架的项目

作用*:

  1. 独立运行的Spring项目,以jar的形式独立运行
  2. 内嵌servlet容器,可以内嵌tomact等
  3. 自动配置Spring
  4. 完整的项目监控,保证生产健康
  5. 无代码生成和xml配置,通过条件注解来实现

Spring Cloud

提供了快速构建分布式系统中一些常见模式的工具,开发人员使用SpringCloud可以快速地支持实现这些模式的服务和应用程序。他们能在任何分布式环境中运行良好

业务系统日志数据采集

日志级别

  1. all: 最低等级用于打开所有日志记录
  2. trace:很低的级别,追踪,程序往下执行时,可以用trace输出
  3. debug:调试,默认的最低等级all和trace一般不用;主要用于开发过程中打印一些的信息
  4. info:消息在粗粒度级别上突出强调应用程序的运行过程,用于打印一些重要的信息 常用
  5. warn:警告,可能会出现潜在的错误,需要给开发人员予以提示
  6. error:错误信息,发生了错误事件,道理上不影响整个程序的运行,常用
  7. fatal:致命错误,会导致程序完全停止,整个程序本身存在问题需要重写
  8. off:最高等级,用于关闭所有日志记录

log4j日志显示形式

SimpleLayout:一种简单的形式显示

HTMLLayout:一种HTML表格形式显示

PatternLayout:一种用户自定义的形式显示

log4j的日志格式

%t–线程名称

%p–日志级别

%c–日志消息所在的类名

%m–消息内容

%M–输出执行方法

%d–发生时间

%x–输出和当前线程相关的NDC,多用于java servlets这样的多客户多线程的应用中。

%L–代码中的行数

%n:换行

采集业务系统日志

收集tomcat日志到mysql

  1. Tomact启动:运行Tomcat业务系统
  2. 生成日志:Tomcat中运行java web系统
  3. 日志配置:配置log4j.xml
  4. 设置采集工具FileBeat:配置FileBeat的配置文件,启动FileBeat
  5. 配置LogStash:修改或创建配置文件
  6. Logstash输出配置:安装logstash-output-jdbc插件,将mysql-5.1的驱动程序放到vendor/jar/jdbc目录下,创建logstash.conf配置文件

收集spark、log4j日志到kafka

logstash+kafka

flume+kafka

数据采集—业务系统日志数据采集相关推荐

  1. 什么是大数据采集?大数据采集的过程是什么?

    大数据开启了一个大规模生产.分享和应用数据的时代,它给技术和商业带来了巨大的变化.麦肯锡研究表明,在医疗.零售和制造业领域,大数据每年可以提高劳动生产率0.5-1个百分点.大数据在核心领域的渗透速度有 ...

  2. 【Android RTMP】音频数据采集编码 ( 音频数据采集编码 | AAC 高级音频编码 | FAAC 编码器 | Ubuntu 交叉编译 FAAC 编码器 )

    文章目录 安卓直播推流专栏博客总结 一. 音频数据采集.编码 二. AAC 高级音频编码 三. FAAC 编码器 四. Ubuntu 18.04.4 交叉编译 FAAC 编码器 安卓直播推流专栏博客总 ...

  3. 业务系统日志记录规范总结

    业务系统日志记录规范 注意 应用中应该充满了日志记录信息,日志甚至比逻辑代码还要多: 集成 seluth ,开启消息链路:不开启日志上传,不集成 zipkin; 应该避免日志记录过程中出现异常,比如 ...

  4. matlab数据采集工具箱,MATIAB数据采集工具箱

    前言 MATLAB 被广泛的使用在工程学和科学的领域, 从数据采集和分析到应用程序开发.MATLAB 环境集合了数学计算, 图形化输出, 和强有力的计算机程序语言.内建的接口让使用者可以从仪器.档案. ...

  5. matlab数据采集柜,MATLAB数据采集工具箱

    前言 MATLAB 被广泛的使用在工程学和科学的领域, 从数据采集和分析到应用程序开发.MATLAB 环境集合了数学计算, 图形化输出, 和强有力的计算机程序语言.内建的接口让使用者可以从仪器.档案. ...

  6. 动态数据采集业务逻辑

    数据采集之后台管理模块 1.Control:MemoryReportControl 2.进入报表采集页面并查询列表/分页:/index  repIndex.jsp    后台: action: Pag ...

  7. 人脸识别——景联文科技提供3D头模数据采集业务!

    "拿起手机刷脸解锁.上下班考勤.支付订单,刷脸已极大地便利了我们的生活.清华大学新闻学院教授沈阳表示,中国人平均每天要暴露在各种摄像头下超过500次.人脸识别已成了我们生活中重要的一部分. ...

  8. 大数据-数仓-数据采集-业务数据(二):全量同步采集【MySQL<-->DataX(全量)<-->HDFS】【每日全量:每天都将业务数据库中全部数据同步到数据仓库,是保证两侧数据同步的最简单方式】

    DataX源码地址:GitHub - alibaba/DataX: DataX是阿里云DataWorks数据集成的开源版本. 一.第1章 DataX介绍 1.1 DataX概述 1. 介绍:DataX ...

  9. 如何把三菱plc的数据导入mysql_三菱plc数据采集储存 plc数据采集并存入数据库

    三菱PLC如何用于数据采集? 现在三菱PLC技术越来越强,其数据存储面积越来越大,可以存储大量的数据,具有很大的应用空间.数据采集可以用计数器记录采集到的脉冲数,并定期传送到DM区.A/D单元也可用于 ...

最新文章

  1. 一个登录框实现不同的登录验证
  2. tcp和udp多线程的epoll服务器+客户端源代码 - brucema的个人空间 - 开源中国社区
  3. C++中类的多态与虚函数的使用
  4. c语言 自动包含头文件,C语言不要重复包含.h头文件和.c文件
  5. Robot Framework自动化测试(一)--- 安装
  6. 风控模型中的五大类聚类算法介绍
  7. Pytorch——搭建深度神经网络的基本流程
  8. android接支付宝授权和支付功能
  9. 动态设置option标签默认选中的两种方法
  10. Centos7系列各版本镜像合集下载
  11. 计算机在线拥有,电路在线计算器
  12. u盘插上电脑显示计算机无响应,为什么u盘连接电脑没反应,u盘在电脑上显示不出来...
  13. 【013】故宫博物院数字文物库-让文物随时可赏
  14. odl源码系列一restconf模块
  15. Wavel Sequence HDU - 6078 (dp)
  16. 树莓派 使用3.5耳机口输出音频
  17. 基于EOS的区块链捐赠平台合约发开
  18. Unity3d八 Unity使用的坐标系
  19. vue 往数组中push对象
  20. 《用户画像--方法论与工程化解决方法》读后感

热门文章

  1. Postgresql学习02-配置ODBC数据源
  2. 贷前风控策略审批及决策引擎——策略审批架构搭建
  3. 阿里云MaxCompute介绍
  4. 杀时间的人最终都被时间杀掉了
  5. 一个男人的“变态”婚姻价值观
  6. 热身小游戏(线段树,单修区修区查)
  7. CNN基本原理以及卷积池化的实现细节
  8. 路由表 (RIB) 与转发表 (FIB)
  9. Matlab randint()函数用法
  10. Java实现文件写入——IO流(输入输出流详解)