CN110377588B - 一种数据库对象访问监测方法、服务器及终端 - Google Patents

一种数据库对象访问监测方法、服务器及终端 Download PDF

Info

Publication number
CN110377588B
CN110377588B CN201910664552.5A CN201910664552A CN110377588B CN 110377588 B CN110377588 B CN 110377588B CN 201910664552 A CN201910664552 A CN 201910664552A CN 110377588 B CN110377588 B CN 110377588B
Authority
CN
China
Prior art keywords
database
monitoring
access
information
log
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910664552.5A
Other languages
English (en)
Other versions
CN110377588A (zh
Inventor
杨祖龙
张智锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN201910664552.5A priority Critical patent/CN110377588B/zh
Publication of CN110377588A publication Critical patent/CN110377588A/zh
Application granted granted Critical
Publication of CN110377588B publication Critical patent/CN110377588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据库对象访问监测方法、服务器及终端,所述方法包括接收数据库监测请求;根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构;确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果,本发明可对应用系统进行的数据库访问有效性进行监测,防止数据库访问对象的数据结构与数据库对象的数据结构不一致导致的应用系统运行错误。

Description

一种数据库对象访问监测方法、服务器及终端
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种数据库对象访问监测方法、服务器及终端。
背景技术
目前开放平台大部分应用软件系统都需要与数据库交互,来实现业务数据的新增、查询、修改、存储等操作。在理想情况下,应用程序所需要访问的数据库访问对象(如表、视图、存储过程等)都应该在数据库中存在且结构完全一致,否则应用程序在运行过程中会出现数据库访问对象访问一致性错误,严重情况下会出现相关功能异常中断等生产问题。
现有的一些数据库访问对象访问一致性监测方法有如下不足:
1、对于源代码中包括的数据库访问对象访问语句,一般通过静态代码扫描的方式来解析,并与实际数据库比对,找出不一致的数据库访问对象。但对于生产运行环境上部署的应用程序,源代码已经被编译打包,无法直接从源代码层面静态扫描相关数据库访问对象。
2、由于应用系统生产环境一直处于运行状态中,对于一些重要的生产应用,在其上部署监控程序或直接对生产环境连接监控,可能会影响生产系统的稳定运行。
3、现有的一些自动监测方法缺少通用性以及较好的可扩展性,对不同类型的应用系统或不同数据库访问对象访问语句的解析不完整。
发明内容
本发明的一个目的在于提供一种数据库对象访问监测方法,对应用系统进行的数据库访问有效性进行监测,防止数据库访问对象的数据结构与数据库对象的数据结构不一致导致的应用系统运行错误。本发明的另一个目的在于提供一种监测服务器。本发明还公开了一种监测终端。本发明的再一个目的在于提供一种计算机设备。本发明的还一个目的在于提供一种可读介质。
为了达到以上目的,本发明一方面公开了一种数据库对象访问监测方法,包括:
接收数据库监测请求;
根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构;
确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
优选地,所述方法进一步包括:
根据日志库信息获取所述应用系统的应用日志;
根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
优选地,所述方法进一步包括:
接收日志库信息维护请求;
根据所述日志库信息维护请求对所述日志库信息进行编辑。
优选地,所述方法进一步包括:
接收数据库连接信息维护请求;
根据所述数据库连接信息维护请求对所述数据库连接信息进行编辑。
优选地,所述方法进一步包括:
接收数据库对象解析规则维护请求;
根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
本发明还公开了一种数据库对象访问监测方法,包括:
向监测服务器发送接收数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
本发明还公开了一种监测服务器,包括:
请求接收单元,用于接收数据库监测请求;
日志解析单元,用于根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构;
监测执行单元,用于确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
优选地,所述系统进一步包括:
日志获取单元,用于根据日志库信息获取所述应用系统的应用日志;
数据库同步单元,用于根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
优选地,所述系统进一步包括:
日志库信息维护单元,接收日志库信息维护请求,根据所述日志库信息维护请求对所述日志库信息进行编辑。
优选地,所述系统进一步包括:
数据库连接信息维护单元,用于接收数据库连接信息维护请求,根据所述数据库连接信息维护请求对所述数据库连接信息进行编辑。
优选地,所述系统进一步包括:
解析规则维护单元,用于接收数据库对象解析规则维护请求,根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
优选地,所述系统进一步包括:
数据存储单元,用于存储所述日志库信息、所述数据库连接信息、所述数据库对象解析规则、所述应用日志、所述数据库信息和所述监测结果。
本发明还公开了一种监测终端,包括:
请求发送单元,用于向监测服务器发送数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
本发明还公开了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,
所述处理器执行所述程序时实现如上所述方法。
本发明还公开了一种计算机可读介质,其上存储有计算机程序,
该程序被处理器执行时实现如上所述方法。
本发明通过预先将应用系统的应用日志和数据库信息同步至监测服务器,在接收到用户传输的数据库监测请求时,通过预设的数据库对象解析规则对应用系统的应用日志进行解析得到应用系统的数据库访问对象的数据结构。根据监测服务器上同步的应用系统的数据库信息可确定数据库中对应的数据库对象的数据结构,将数据库对象的数据结构与应用日志解析得到的数据库访问对象的数据结构相比对得到监测结果,可将监测结果实时向用户反馈,若监测结果中应用日志访问的数据库访问对象的数据结构与数据库中数据库对象的数据结构不一致,用户可实时的进行修改,防止应用系统运行错误。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明数据库对象访问监测方法一个具体实施例的流程图之一;
图2示出本发明数据库对象访问监测方法一个具体实施例的流程图之二;
图3示出本发明数据库对象访问监测方法一个具体实施例的流程图之三;
图4示出本发明数据库对象访问监测方法一个具体实施例的流程图之四;
图5示出本发明数据库对象访问监测方法一个具体实施例的流程图之五;
图6示出本发明数据库对象访问监测方法一个具体实施例的流程图之六;
图7示出本发明数据库对象访问监测方法一个具体实施例的流程图之七;
图8示出本发明数据库对象访问监测方法一个具体实施例的流程图之八;
图9示出本发明监测服务器一个具体实施例的结构图之一;
图10示出本发明监测服务器一个具体实施例的结构图之二;
图11示出本发明监测服务器一个具体实施例的结构图之三;
图12示出本发明监测服务器一个具体实施例的结构图之四;
图13示出本发明监测服务器一个具体实施例的结构图之五;
图14示出本发明监测服务器一个具体实施例的结构图之六;
图15示出本发明数据库对象访问监测系统一个具体实施例的结构图;
图16示出本发明监测服务器一个具体实施例的应用流程图;
图17示出适于用来实现本发明实施例的计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的一个方面,本实施例公开了一种数据库对象访问监测方法。如图1所示,本实施例中,所述方法包括:
S100:接收数据库监测请求。
S200:根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构。
其中,开放平台上的应用系统一般包括应用服务器和数据库服务器,应用服务器可与数据库服务器进行数据交互,以从数据库获取的数据库对象,并生成包含数据库对象的应用日志,该数据库对象即为应用系统的数据库访问对象。数据库对象为数据库中的逻辑对象,主要包括表、索引、视图、缺省值、规则或触发器等。
优选的,应用系统的数量可为至少一个,即可获取至少一个应用系统的应用日志,对至少一个应用系统进行数据库访问有效性进行监测。
S300:确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
通过对应用系统运行形成的应用日志进行分析得到访问的数据库访问对象的数据结构,并与数据库对象的数据结构进行一致性分析,若要获取的数据库访问对象的数据结构与数据库中数据库对象的数据结构相同,则得到数据结构一致的监测结果,若不相同,则得到数据结构不一致的监测结果,用户可根据监测结果对应用系统进行及时的调整。
本发明通过预先将应用系统的应用日志和数据库信息同步至监测服务器,在接收到用户传输的数据库监测请求时,通过预设的数据库对象解析规则对应用系统的应用日志进行解析得到应用系统的数据库访问对象的数据结构。根据监测服务器上同步的应用系统的数据库信息可确定数据库中对应的数据库对象的数据结构,将数据库对象的数据结构与应用日志解析得到的数据库访问对象的数据结构相比对得到监测结果,可将监测结果实时向用户反馈,若监测结果中应用日志访问的数据库访问对象的数据结构与数据库中数据库对象的数据结构不一致,用户可实时的进行修改,防止应用系统运行错误。本发明对于应用系统数据库的访问监测与生产环境的应用系统相隔离,从而能够有效规避数据库访问性能问题,特别适用于大型软件研发中心应用系统较多、对应用系统需要按软件生命周期依次提交到多个环境部署测试或投产运行而产生的频繁数据库数据交换导致的运行容易出错的情况,以降低应用系统开发过程中的错误概率。
在优选的实施方式中,如图2所示,所述S200具体可包括:
S210:实时同步各应用系统生成的应用日志。
S220:获取各应用系统所关联的数据库对象解析规则。
S230:读取各应用系统所对应的数据库信息。
S240:根据所读取的各应用系统的应用日志、所关联的数据库对象解析规则,对日志库下各应用程序生成的数据库访问对象的应用日志按数据库对象解析规则进行解析,解析出来的数据库访问对象的数据结构。可按不同数据结构进行转换,存为不同的数据库访问对象的数据结构。
本示例采用了开源数据库访问语句解析工具并加以优化改造,开放源代码的SQL语法分析工具可以将复杂的SQL语句转化为层次结构的数据结构对象,方便后续其它处理。例如对于查询SQL语句,可以被解析为高级语言所识别的select对象,该对象包括有表名,字段名,where子句表达式等子类型。对于其它类型的DDL(data definition language,数据定义语言)、DML(data manipulation language,数据操纵语言)通过优化的解析工具,可以解析出详细的数据库访问对象数据结构,该数据结构包括了数据库访问对象的详细结构内容。
在优选的实施方式中,如图3所示,所述S300具体可包括:
S310:根据解析出来的数据结构、同步的数据库信息,比对所解析的数据库访问对象的数据结构与数据库信息中的数据库对象数据结构。
在优选的实施方式中,比对详细方法可包括如下步骤:首先将实时解析出的数据库访问对象及详细数据结构存放于内存链表中,系统依次获取内存链表各个数据库访问对象,到读取的同步数据库信息中查询对应的数据库对象,将数据库对象的数据结构与数据库访问对象的数据结构比对差异,判断两者的对象名称和对象详细结构等信息是否完全一致,并记录详细比对情况。
所述S300进一步还可包括S320:输出比对的监测结果信息。具体的,可向终端传输包括监测结果显示信息,以使所述终端向用户展示所述显示信息。
在优选的实施方式中,如图4所示,所述方法进一步包括:
S010:根据日志库信息获取所述应用系统的应用日志。
S020:根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
本实施例中,通过日志库信息可连接应用系统中的日志库获取应用系统的应用日志,同时还可以根据数据库连接信息连接应用系统的数据库获取数据库信息,目前各种主流数据库都提供简易的数据库数据结构导出导入方法,由于不需要同步数据内容,可根据数据库连接信息快速完成包括数据库对象数据结构的数据库信息的同步获取。其中,用户可预先对日志库信息和数据库连接信息进行配置。其中,数据库信息至少包括数据库访问对象的数据结构。优选的,可在应用系统空闲或应用升级之后,根据数据库连接信息从应用系统中同步数据库信息。
在优选的实施方式中,如图5所示,所述方法进一步包括:
S410:接收日志库信息维护请求。
S420:根据所述日志库信息维护请求对所述日志库信息进行编辑。
其中,对于日志库信息的编辑可包括新增、修改或删除等操作,编辑的日志库信息可包括日志库的名称、对应的服务器地址、目录结构或日志库关联信息等信息的至少一种,其中日志库关联信息包括日志库下各应用日志目录或文件归属于哪个应用系统以及需要从哪个应用系统实时同步的应用日志文件地址或目录结构等信息。
在一个具体例子中,S420具体可包括:
S421:维护日志库信息:包括新增、修改、删除日志库详细信息,如维护日志库的名称、对应的服务器地址、目录结构。
S422:维护关联信息,包括设置或修改日志库下各日志目录或文件归属于哪个应用系统,以及需要从哪个应用系统实时同步的日志文件地址、目录结构等信息。
S423:将编辑后的日志库信息保存到数据存储单元。可将以上日志库信息保存到监测服务器的数据存储单元,以便监测模块调用。
在优选的实施方式中,如图6所示,所述方法进一步包括:
S510:接收数据库连接信息维护请求。
S520:根据所述数据库连接信息维护请求对所述同步的应用系统的应用日志进行编辑。
其中,对于数据库连接信息的编辑可包括对数据库连接信息的新增、修改或删除等操作。数据库连接信息可包括数据库服务器地址、数据库实例名、端口、用户名和密码等详细信息中的至少之一。
在一个具体例子中,对数据库连接信息进行编辑及通过数据库连接信息获取数据库信息可同时实现,主要包括以下步骤:
S521:维护各应用系统数据库连接信息,如数据库服务器地址及数据库实例名、端口、用户名、密码等详细信息。
S522:同步与所述数据库连接信息对应的数据库信息。可在业务空闲时间或系统升级后,系统自动连接各应用系统数据库同步所有数据库对象及结构,无需同步数据内容。
S523:保存数据库连接信息和数据库信息。具体的,可将以上相关信息保存到监测服务器的数据存储单元,以便监测执行单元调用。一个应用系统数据库对应监测服务器中一个同步的数据库信息,相当于一个数据库结构的同步副本。
在优选的实施方式中,如图7所示,所述方法进一步包括:
S610:接收数据库对象解析规则维护请求。
S620:根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
具体的,用户可通过终端向监测服务器传输数据库对象解析规则维护请求,以使监测服务器根据数据库对象解析规则维护请求对监测服务器上存储的数据库对象解析规则进行编辑,以建立可扩展的解析规则,用户可以方便的通过向监测服务器发送数据库对象解析规则维护请求以删除、增加或修改数据库对象解析规则,实现数据库对象解析规则的自定义,提高监测的准确性及效率。
在一个具体例子中,S620可包括以下步骤:
S621:维护据库对象解析规则的名称。例如可对数据库对象解析规则名称新增、修改、删除。
S622:选择据库对象解析规则的监测类型。监测类型标识此规则是做什么类型的解析及监测,包括通用解析规则、用户自定义解析规则。
S623:维护据库对象解析规则内容。例如,设置解析日志中数据库访问对象的方法。
S624:自动生成据库对象解析规则编号。规则编号是唯一的,每个解析规则项对应一个编号,一个应用系统对应多个解析规则项。
S625:在数据库对象解析规则信息维护完成后,可设定各应用系统需要关联的所有数据库对象解析规则,并保存。
在可选的实施方式中,如图8所示,所述方法还包括:
S710:接收监测统计请求;
S720:根据监测统计请求对应的应用系统,获取所述应用系统的监测结果;
S730:根据所述监测结果形成监测统计报表。例如,可查看各个应用系统的监测统计分析报表、同一应用系统在不同环境阶段中监测统计报表,以便提供给该应用系统项目组决策分析。
基于相同原理,本实施例还公开了一种数据库对象访问监测方法。本实施例中,所述方法包括向监测服务器发送接收数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。由于该方法解决问题的原理与以上方法类似,因此本方法的实施可以参见上述方法的实施,在此不再赘述。
基于相同原理,本实施例还公开了一种监测服务器。本实施例中,如图9所示,所述服务器包括请求接收单元11、日志解析单元12和监测执行单元13。
其中,请求接收单元11用于接收数据库监测请求。
日志解析单元12用于根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构。
监测执行单元13用于确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
在优选的实施方式中,如图10所示,所述系统进一步包括日志获取单元121和数据库同步单元131。
其中,日志获取单元121用于根据日志库信息获取所述应用系统的应用日志。
数据库同步单元131用于根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
在优选的实施方式中,如图11所示,所述系统进一步包括日志库信息维护单元14。日志库信息维护单元14用于接收日志库信息维护请求,根据所述日志库信息维护请求对所述日志库信息进行编辑。
在优选的实施方式中,如图12所示,所述系统进一步包括数据库连接信息维护单元15。数据库连接信息维护单元15用于接收数据库连接信息维护请求,根据所述数据库连接信息维护请求对所述数据库连接信息进行编辑。
在优选的实施方式中,如图13所示,所述系统进一步包括解析规则维护单元16。解析规则维护单元16用于接收数据库对象解析规则维护请求,根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
在优选的实施方式中,如图14所示,所述系统进一步包括数据存储单元17。数据存储单元17用于存储所述日志库信息、所述数据库连接信息、所述数据库对象解析规则、所述应用日志、所述数据库信息和所述监测结果。
由于该服务器解决问题的原理与本实施例中数据库对象访问监测方法类似,因此本服务器的实施可以参见方法的实施,在此不再赘述。
本发明还公开了一种监测终端,所述监测终端包括请求发送单元21。请求发送单元21用于向监测服务器发送数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果。
由于该终端解决问题的原理与本实施例中数据库对象访问监测方法类似,因此本终端的实施可以参见方法的实施,在此不再赘述。
基于相同原理,本实施例还公开了一种数据库对象访问监测系统,如图15所示,该系统包括监测服务器、终端和至少一个应用系统。其中,监测服务器、终端和至少一个应用系统可通过有线或无线网络形式连接,例如通常通过局域网实现信号连接。
本实施例的系统在应用时,系统管理员使用监测终端发起相关维护请求(日志库维护请求、解析规则维护请求、数据库同步请求),日志库维护单元、解析规则维护单元及数据库同步单元接收该请求,进行参数维护操作,维护日志库相关配置信息、维护应用系统数据库配置信息、应用系统同步数据库信息、维护所有解析规则内容,设置各应用系统需要关联的解析规则项等。
系统管理员使用监测终端发起监测请求,解析及监测单元接收该请求,启动对应用系统日志的监测,在监测终端界面可实时查看各个应用系统的监测结果,对于异常的情况,可快速定位数据库访问异常的详细原因,以便进一步对应用程序或数据库进行整改优化。
系统维护人员使用监测终端发起监测统计请求,可查看各个应用系统的监测统计分析报表、同一应用系统在不同环境阶段中监测统计报表,以便提供给该应用系统项目组决策分析。
由于该系统解决问题的原理与本实施例中数据库对象访问监测方法类似,因此本系统的实施可以参见方法的实施,在此不再赘述。
进一步通过一个具体例子来对本发明作进一步的说明,如图16所示,所述系统工作时:
S801:通过日志获取单元循环连接各应用系统,实时同步应用日志。
S802:数据库同步单元依次读取该应用系统所关联的同步数据库信息,该同步数据库将作为比对的目标。
S803:取得该应用系统所设定的关联解析规则,以便对该应用日志进行数据库对象访问情况解析。
S804:日志解析单元读取各应用系统日志的日志详细内容,并根据S803所获取的关联解析规则项对日志中数据库对象访问语句进行解析,解析出来的数据库对象,按不同数据结构进行转换,存为不同的内存对象。
S805:监测执行单元对解析出来的数据库对象进行监测。将S804中所解析出来的数据库对象,与S802所读取的同步数据库进行比对,判断数据库对象结构是否完全一致。比对详细方法如下:首先将S804中所实时解析出的数据库对象及详细结构存放于内存链表中,系统依次获取内存链表各个数据库对象,到S802所读取的同步数据库中查询并比对差异,判断对象名称、对象详细结构是否完全一致,并记录详细比对情况。
S806:判断比对结果是否一致,如不一致,则执行S807;如一致,则执行S808。
S807:监测结果输出单元保存错误信息到数据存储单元,以便监测终端展现。
S808:监测结果输出单元保存正确信息到数据存储单元,以便监测终端展现。
S809:监测结果输出单元向监测终端发送监测结果信息,以便相关人员查看结果。
S810:判断所有应用系统日志是否同步完成,如读取完成则正常结束本次监测,如未读取完,则返回S801,进行下一个应用系统日志同步,继续进行解析监测。
本发明的数据库对象访问监测方案与隔离生产运行系统,对生产系统影响小。本发明的监测服务器提供与生产系统结构一致的同步系统,将应用服务器记录的访问生产数据库的相关日志实时同步到本系统中,同时在业务空闲期间将生产系统数据库访问对象的数据结构定时同步到本系统中。然后通过实时解析本系统得到数据库访问日志:对于正常的数据库访问对象写入正常日志,可忽略不处理,对于异常的数据访问对象,与本系统所保存的同步生产数据库进行比对确认并报警提醒。所有日常实时监测操作与生产系统基本隔离,因此对生产系统影响较小。此外,本发明提供了一个统一集中的监测平台,提高监测效率。针对大型软件研发中心,应用系统较多,并且同一应用系统需要部署到不同环境运行等复杂情况,本系统提供了统一集中的监测平台,从总体上监测数据库访问对象访问情况,避免人工监测效率低且容易出现差错的问题。通过简化监测的配置工作,首次将各应用系统关联的解析规则配置信息记录到数据库中,后续解析规则如果无新增或修改,则无需再次配置。采用本发明具有处理速度快,解析效率高的优点。本发明还扩展了现有监测方法。本系统对现有数据库访问对象的解析方法进行扩展,除常规的解析方法外,还可以对应用系统设置特殊的解析规则,可以针对应用系统不同环境阶段的特殊要求或不同应用系统设置特殊的解析方法,多层次对应用系统进行监测,具有良好的可扩展性。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的由客户端执行的方法,或者,所述处理器执行所述程序时实现如上所述的由服务器执行的方法。
下面参考图17,其示出了适于用来实现本申请实施例的计算机设备600的结构示意图。
如图17所示,计算机设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有系统600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶反馈器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口606。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包括用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (15)

1.一种数据库对象访问监测方法,其特征在于,包括:
接收数据库监测请求;
根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,所述应用日志为应用服务器从数据库服务器获取数据库对象生成的;
确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果,具体包括:将实时解析出的数据库访问对象及数据结构存放于内存链表中,依次获取内存链表各个数据库访问对象,到读取的同步数据库信息中查询对应的数据库对象,将数据库对象的数据结构与数据库访问对象的数据结构比对差异,判断两者的对象名称和对象详细结构是否完全一致,并记录详细比对情况。
2.根据权利要求1所述的数据库对象访问监测方法,其特征在于,所述方法进一步包括:
根据日志库信息获取所述应用系统的应用日志;
根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
3.根据权利要求2所述的数据库对象访问监测方法,其特征在于,所述方法进一步包括:
接收日志库信息维护请求;
根据所述日志库信息维护请求对所述日志库信息进行编辑。
4.根据权利要求2所述的数据库对象访问监测方法,其特征在于,所述方法进一步包括:
接收数据库连接信息维护请求;
根据所述数据库连接信息维护请求对所述数据库连接信息进行编辑。
5.根据权利要求1所述的数据库对象访问监测方法,其特征在于,所述方法进一步包括:
接收数据库对象解析规则维护请求;
根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
6.一种数据库对象访问监测方法,其特征在于,包括:
向监测服务器发送接收数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果,具体包括:将实时解析出的数据库访问对象及数据结构存放于内存链表中,依次获取内存链表各个数据库访问对象,到读取的同步数据库信息中查询对应的数据库对象,将数据库对象的数据结构与数据库访问对象的数据结构比对差异,判断两者的对象名称和对象详细结构是否完全一致,并记录详细比对情况。
7.一种监测服务器,其特征在于,包括:
请求接收单元,用于接收数据库监测请求;
日志解析单元,用于根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,所述应用日志为应用服务器从数据库服务器获取数据库对象生成的;
监测执行单元,用于确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果,具体包括:将实时解析出的数据库访问对象及数据结构存放于内存链表中,依次获取内存链表各个数据库访问对象,到读取的同步数据库信息中查询对应的数据库对象,将数据库对象的数据结构与数据库访问对象的数据结构比对差异,判断两者的对象名称和对象详细结构是否完全一致,并记录详细比对情况。
8.根据权利要求7所述的监测服务器,其特征在于,所述系统进一步包括:
日志获取单元,用于根据日志库信息获取所述应用系统的应用日志;
数据库同步单元,用于根据数据库连接信息连接所述应用系统的数据库并获取所述数据库的数据库信息。
9.根据权利要求7所述的监测服务器,其特征在于,所述系统进一步包括:
日志库信息维护单元,接收日志库信息维护请求,根据所述日志库信息维护请求对所述日志库信息进行编辑。
10.根据权利要求7所述的监测服务器,其特征在于,所述系统进一步包括:
数据库连接信息维护单元,用于接收数据库连接信息维护请求,根据所述数据库连接信息维护请求对所述数据库连接信息进行编辑。
11.根据权利要求8所述的监测服务器,其特征在于,所述系统进一步包括:
解析规则维护单元,用于接收数据库对象解析规则维护请求,根据所述数据库对象解析规则维护请求对所述预设的数据库对象解析规则进行编辑。
12.根据权利要求8所述的监测服务器,其特征在于,所述系统进一步包括:
数据存储单元,用于存储所述日志库信息、所述数据库连接信息、所述数据库对象解析规则、所述应用日志、所述数据库信息和所述监测结果。
13.一种监测终端,其特征在于,包括:
请求发送单元,用于向监测服务器发送数据库监测请求,以使所述监测服务器根据所述数据库监测请求通过预设的数据库对象解析规则对同步的应用系统的应用日志进行解析得到数据库访问对象的数据结构,确定所述数据库访问对象的数据结构与同步的数据库信息中数据库对象的数据结构是否一致得到监测结果,具体包括:将实时解析出的数据库访问对象及数据结构存放于内存链表中,依次获取内存链表各个数据库访问对象,到读取的同步数据库信息中查询对应的数据库对象,将数据库对象的数据结构与数据库访问对象的数据结构比对差异,判断两者的对象名称和对象详细结构是否完全一致,并记录详细比对情况。
14.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述程序时实现如权利要求1-6任一项所述方法。
15.一种计算机可读介质,其上存储有计算机程序,其特征在于,
该程序被处理器执行时实现如权利要求1-6任一项所述方法。
CN201910664552.5A 2019-07-23 2019-07-23 一种数据库对象访问监测方法、服务器及终端 Active CN110377588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910664552.5A CN110377588B (zh) 2019-07-23 2019-07-23 一种数据库对象访问监测方法、服务器及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910664552.5A CN110377588B (zh) 2019-07-23 2019-07-23 一种数据库对象访问监测方法、服务器及终端

Publications (2)

Publication Number Publication Date
CN110377588A CN110377588A (zh) 2019-10-25
CN110377588B true CN110377588B (zh) 2022-04-12

Family

ID=68254850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910664552.5A Active CN110377588B (zh) 2019-07-23 2019-07-23 一种数据库对象访问监测方法、服务器及终端

Country Status (1)

Country Link
CN (1) CN110377588B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817833A (zh) * 2021-01-20 2021-05-18 中国银联股份有限公司 一种监测数据库的方法及装置
CN113760658A (zh) * 2021-09-02 2021-12-07 山东派盟网络科技有限公司 一种监控方法、装置及设备
CN114640715A (zh) * 2022-03-18 2022-06-17 中国建设银行股份有限公司 数据处理方法、装置、设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101676908A (zh) * 2008-09-17 2010-03-24 中兴通讯股份有限公司 检测数据库对象完整性的方法及装置
CN106371973A (zh) * 2016-08-31 2017-02-01 广州品唯软件有限公司 一种数据处理方法、设备和系统
CN107895018A (zh) * 2017-11-15 2018-04-10 广州视睿电子科技有限公司 数据库修改sql生成方法、系统、存储介质及计算机设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105447046A (zh) * 2014-09-02 2016-03-30 阿里巴巴集团控股有限公司 一种分布式系统数据一致性处理方法、装置和系统
US10706028B2 (en) * 2017-04-25 2020-07-07 Citrix Systems, Inc. Detecting outliers in server transaction time as a form of time series data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101676908A (zh) * 2008-09-17 2010-03-24 中兴通讯股份有限公司 检测数据库对象完整性的方法及装置
CN106371973A (zh) * 2016-08-31 2017-02-01 广州品唯软件有限公司 一种数据处理方法、设备和系统
CN107895018A (zh) * 2017-11-15 2018-04-10 广州视睿电子科技有限公司 数据库修改sql生成方法、系统、存储介质及计算机设备

Also Published As

Publication number Publication date
CN110377588A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
CN110377588B (zh) 一种数据库对象访问监测方法、服务器及终端
US20180081956A1 (en) Method for automatically synchronizing multi-source heterogeneous data resources
CN112434059B (zh) 数据处理方法、装置、计算机设备和存储介质
CN110162512B (zh) 一种日志检索方法、装置及存储介质
CN113973053B (zh) 一种网络靶场的探针管理系统与方法
CN110737720A (zh) 一种db2数据库数据同步方法、装置、系统
CN107423404B (zh) 流程实例数据同步处理方法和装置
US20230259358A1 (en) Documentation enforcement during compilation
CN111177244A (zh) 面向多个异构数据库的数据关联分析方法
CN115422003A (zh) 数据质量监控方法、装置、电子设备、存储介质
CN111913933A (zh) 基于统一支撑平台的电网历史数据管理方法及系统
CN112100001B (zh) 数据回滚方法、装置、服务器和可读存储介质
US20220207033A1 (en) Systems and methods for data retrieval
CN112506432A (zh) 一种动静分离的电力自动化系统实时数据存储和管理方法及装置
CN116186082A (zh) 基于分布式的数据汇总方法、第一服务器和电子设备
CN115220992A (zh) 接口变更监控方法、装置、计算机设备和存储介质
CN114201508A (zh) 数据处理方法、数据处理装置、电子设备和存储介质
CN115080666A (zh) 数据同步方法、系统、电子设备及存储介质
CN114817300A (zh) 基于sql语句的日志查询方法及其应用
CN113076343A (zh) 数据查询方法、装置、设备及存储介质
CN113535768A (zh) 生产监控方法和装置
CN115599868B (zh) 数据实时同步处理方法、系统、设备及介质
CN117390050A (zh) 基于分布式链路的数据库监控方法、装置、设备及介质
US10762090B2 (en) Software discovery based on metadata analysis
CN116561102A (zh) 数据双向迁移方法、装置、设备、介质和程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant