CN104572781B - 一种交易日志产生方法和装置 - Google Patents
一种交易日志产生方法和装置 Download PDFInfo
- Publication number
- CN104572781B CN104572781B CN201310518732.5A CN201310518732A CN104572781B CN 104572781 B CN104572781 B CN 104572781B CN 201310518732 A CN201310518732 A CN 201310518732A CN 104572781 B CN104572781 B CN 104572781B
- Authority
- CN
- China
- Prior art keywords
- transaction
- log
- transaction log
- information
- major key
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开一种交易日志产生方法和装置。该方法包括以下步骤:步骤A:从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,步骤B:依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,步骤C:按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出。
Description
技术领域
本发明涉及联机交易系统的日志记录,尤其涉及这种系统的交易日志产生方法和装置。
背景技术
联机交易系统在执行过程中会产生交易日志,交易日志包括多个日志信息,整地记录每笔交易的具体执行路径。通过分析交易日志,可以得出交易成功或失败的原因,或者辨识其它异常信息。
目前,在高并发环境下,传统处理产生交易日志中的日志信息的通常不连续,即一份交易日志文件中无规律地穿插着多笔交易的日志信息。这样对交易进行问题排查、交易信息归档、交易分析与挖掘将非常不便,例如,往往首先需要在无序的日志信息的基础上进一步将一笔交易的日志信息从多笔交易的日志信息抽取出来才能进行后续分析。
发明内容
根据本发明的一个目的,公开一种交易日志产生方法,包括以下步骤:
步骤A:从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,
步骤B:依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,
步骤C:按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出。
根据本发明的另一个目的,公开一种交易日志产生装置,包括:
接收单元,配置成从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,
处理单元,配置成依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,
输出单元,配置成按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出。
本发明能够实现高并发环境下同步交易日志的无间断有序输出,大大提高交易日志的可读性、友好性,一方面改善了人工排查问题时的日志环境,减少排查时间,另一方面简化了日志二次处理的工作。
附图说明
在参照附图阅读了本发明的具体实施方式以后,本领域技术人员将会更清楚地了解本发明的各个方面。本领域技术人员应当理解的是,这些附图仅仅用于配合具体实施方式说明本发明的技术方案,而并非意在对本发明的保护范围构成限制。其中,
图1是根据本发明实施例的交易日志产生方法的步骤示意图。
图2是根据本发明的一个实施例的交易日志处理的实例。
图3是根据本发明的另一个实施例的交易日志产生方法的过程示意图。
图4是根据本发明实施例的交易日志产生装置的示意图。
具体实施方式
下面参照附图,对本发明的具体实施方式作进一步的详细描述。在下面的描述中,为了解释的目的,陈述许多具体细节以便提供对实施例的一个或多个方面的透彻理解。然而,对于本领域技术人员可以显而易见的是,可以这些具体细节的较少程度来实践各实施例的一个或多个方面。另外,尽管可以仅关于若干实施方式中的一个公开了实施例的特定特征或方面,但可针对任何给定的或特定的应用所期望和有利的那样,这种特征或方面可与其他实施方式的一种或多个其他特征或方面相组合。因此下面的描述不被视为局限性的,而是通过所附权利要求来限定保护范围。
图1是根据本发明实施例的交易日志产生方法的步骤示意图。如图1所示,该方法包括以下步骤:
步骤A:从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,
步骤B:依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,
步骤C:按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出。
图2是根据本发明的一个实施例的交易日志处理的实例。如图2所示,从系统接收4个交易信息,这4个交易信息各自包含交易主键a、a、b、c。根据交易主键来处理所接收的这4个交易信息,例如根据交易主键为a的交易信息维护图中的交易日志集合1,该交易日志集合1包含交易主键a,以及分别对应于第1和第2个交易信息的日志信息a1和a2,并且当处理交易主键为a的另一交易信息时,在交易日志集合1中增加对应于该另一交易信息的日志信息,以更新该交易日志集合。
图3是根据本发明的另一个实施例的交易日志产生方法的过程示意图。如图3所示,对照图1所示的步骤,首先从联机交易系统接收n个交易信息,该n个交易信息涉及m笔交易。然后,根据n个交易信息的各自的交易主键Key将其归类,例如将Key为a的交易信息归类到交易日志集合1,将Key为b的交易信息归类到交易日志集合m。交易日志集合的数据结构例如可以是如图3所示的,包括Key字段和日志信息数据结构,多个日志信息可以被存储在列表中。最后,连续输出交易日志集合1即同一笔交易的日志信息,作为交易主键为a的交易日志。
在一个示例中,使用哈希表来维护一个或多个交易日志集合。在处理交易信息时以其交易主键Key为关键字,映射到所对应的交易日志集合,并且将与该交易信息对应的日志信息存储到该交易日志集合,以更新该交易集合,对照图3,例如当处理一个包含交易主键a,日志信息ak的交易信息时,根据交易主键a映射到交易日志集合1,并在该交易日志集合1中的日志信息列表中加入日志信息ak。在不存在对应的交易日志集合的情况下,则新建与该Key对应的交易日志集合。
在本发明的另一个实施例中,在步骤B中,当处理的交易信息包含结束标识时,将该结束标识写入相应的交易日志集合,以及在步骤C中,当判断交易日志集合包含交易结束标志时,输出该交易日志集合的交易日志。这里,结束标识指示一笔交易的结束。在一个示例中,可以在交易日志集合的数据结构中设置一个字段用于存储结束标识。
在本发明的另一个实施例中,在步骤C中,当判断交易日志集合的更新时间与当前时间的间隔超过预定值时,即发生超时时,输出该交易日志集合的交易日志。这里,更新是指在交易日志集合增加日志信息。在一个示例中,可以在交易日志集合的数据结构中设置一个字段用于存储最后增加日志信息的时间作为更新时间。根据该实施例,可以通过更新时间来控制一笔交易的输出时机,从而当该笔交易的后续交易信息的接收发生异常而未接收到结束标识时,仍然能够输出该笔交易的日志。
在本发明的另一个实施例中,在步骤A中,维护持久化文件,该文件用于存储从系统接收的所述一个或多个交易信息。在步骤C中,维护日志快照文件,其中,当输出包含交易结束标志的交易日志集合的交易日志后,将该交易日志集合涉及的交易主键记录在所述日志快照文件中。由此,当未被持久化的所述从系统接收一个或多个交易信息和所述维护的一个或多个交易日志集合丢失(例如,意外断电或系统崩溃的情况)时,根据所述持久化文件和日志快照文件产生交易日志。
在一个示例中,在步骤D中,处理所述持久化文件中的一个或多个交易信息从而维护一个或多个交易日志集合,其中,在所述处理中忽略所述日志快照文件中的交易主键所标识的交易信息,这是因为所述日志快照文件中的交易主键所涉及的交易日志已经被输出到日志文件中。另外,如上所述,日志快照文件仅记录包含交易结束标志的交易日志集合的交易主键,而不记录因为发生超时而被输出的交易日志的交易主键,因此不会丢失未被完整输出的交易的日志信息。
图4是根据本发明实施例的交易日志产生装置的示意图。如图4所示,该装置包括接收单元、处理单元、输出单元以及可选的恢复单元。其中,接收单元,配置成从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易。处理单元,配置成依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键。输出单元,配置成按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出。
在本发明的另一个实施例中,处理单元被配置成当处理的交易信息包含结束标识时,将该结束标识写入相应的交易日志集合,输出单元被配置成当判断交易日志集合包含交易结束标志时,输出该交易日志集合的交易日志。
在本发明的另一个实施例中,输出单元被配置成当判断交易日志集合的更新时间与当前时间的间隔超过预定值时,输出该交易日志集合的交易日志。如本发明前文所述,可以通过更新时间来控制一笔交易的输出时机,从而当该笔交易的后续交易信息的接收发生异常而未接收到结束标识时,本发明的交易日志产生装置能够及时输出交易日志,避免因所述异常而造成的系统资源浪费。
在本发明的另一个实施例中,接收单元被配置成维护持久化文件,该文件用于存储从系统接收的所述一个或多个交易信息。可以根据日志产生装置的系统资源限定该文件的大小,接收的所述一个或多个交易信息按照原始次序被写入。输出单元被配置成维护日志快照文件,其中,当输出包含交易结束标志的交易日志集合的交易日志后,将该交易日志集合涉及的交易主键记录在所述日志快照文件中。也可以根据日志产生装置的系统资源限定该文件的大小或者记录数。其中,所述可选的恢复单元被配置成当未被持久化的所述从系统接收的一个或多个交易信息和所述维护的一个或多个交易日志集合丢失时,根据所述持久化文件和日志快照文件产生交易日志。
在本发明的另一个实施例中,恢复单元被配置成处理所述持久化文件中的一个或多个交易信息从而维护一个或多个交易日志集合,其中,在所述处理中忽略所述日志快照文件中的交易主键所标识的交易信息。
Claims (4)
1.一种交易日志产生方法,其特征在于,包括以下步骤:
步骤A:从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,
步骤B:依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,
步骤C:按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出,
其中,在步骤B中,当处理的交易信息包含结束标识时,将该结束标识写入相应的交易日志集合,
在步骤C中,当判断交易日志集合包含交易结束标识时,输出该交易日志集合的交易日志,
在步骤C中,当判断交易日志集合的更新时间与当前时间的间隔超过预定值时,输出该交易日志集合的交易日志,
使用哈希表来维护一个或多个交易日志集合,在处理交易信息时以其交易主键为关键字,映射到所对应的交易日志集合,并且将与该交易信息对应的日志信息存储到该交易日志集合,以更新该交易日志集合,
在步骤A中,维护持久化文件,该文件用于存储从系统接收的所述一个或多个交易信息,
在步骤C中,维护日志快照文件,其中,当输出包含交易结束标志的交易日志集合的交易日志后,将该交易日志集合涉及的交易主键记录在所述日志快照文件中,
其中,所述方法还包括步骤D,在步骤D中,当未被持久化的所述从系统接收的一个或多个交易信息和所述维护的一个或多个交易日志集合丢失时,根据所述持久化文件和日志快照文件产生交易日志。
2.如权利要求1所述的方法,其特征在于,
在步骤D中,处理所述持久化文件中的一个或多个交易信息从而维护一个或多个交易日志集合,其中,在所述处理中忽略所述日志快照文件中的交易主键所标识的交易信息。
3.一种交易日志产生装置,其特征在于,包括:
接收单元,配置成从系统接收一个或多个交易信息,其中所述一个或多个交易信息各自包含交易主键,一个交易主键标识相应的一笔交易,
处理单元,配置成依据交易主键来处理所接收的所述一个或多个交易信息,从而维护一个或多个交易日志集合,使得同一个交易日志集合涉及同一个交易主键,
输出单元,配置成按照交易日志集合来输出交易日志,使得同一笔交易的日志信息被连续输出,
其中,处理单元被配置成当处理的交易信息包含结束标识时,将该结束标识写入相应的交易日志集合,
输出单元被配置成当判断交易日志集合包含交易结束标识时,输出该交易日志集合的交易日志,
输出单元被配置成当判断交易日志集合的更新时间与当前时间的间隔超过预定值时,输出该交易日志集合的交易日志,
其中,使用哈希表来维护一个或多个交易日志集合,在处理交易信息时以其交易主键为关键字,映射到所对应的交易日志集合,并且将与该交易信息对应的日志信息存储到该交易日志集合,以更新该交易日志集合,
接收单元被配置成维护持久化文件,该文件用于存储从系统接收的所述一个或多个交易信息,
输出单元被配置成维护日志快照文件,其中,当输出包含交易结束标志的交易日志集合的交易日志后,将该交易日志集合涉及的交易主键记录在所述日志快照文件中,
其中,所述装置还包括恢复单元,其被配置成当未被持久化的所述从系统接收的一个或多个交易信息和所述维护的一个或多个交易日志集合丢失时,根据所述持久化文件和日志快照文件产生交易日志。
4.如权利要求3所述的装置,其特征在于,
恢复单元被配置成处理所述持久化文件中的一个或多个交易信息从而维护一个或多个交易日志集合,其中,在所述处理中忽略所述日志快照文件中的交易主键所标识的交易信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310518732.5A CN104572781B (zh) | 2013-10-29 | 2013-10-29 | 一种交易日志产生方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310518732.5A CN104572781B (zh) | 2013-10-29 | 2013-10-29 | 一种交易日志产生方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572781A CN104572781A (zh) | 2015-04-29 |
CN104572781B true CN104572781B (zh) | 2018-10-23 |
Family
ID=53088857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310518732.5A Active CN104572781B (zh) | 2013-10-29 | 2013-10-29 | 一种交易日志产生方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572781B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775885B (zh) * | 2016-12-26 | 2020-09-29 | 中国建设银行股份有限公司 | 一种日志输出控制方法和系统及银行管理系统 |
CN106649796B (zh) * | 2016-12-28 | 2020-05-22 | 中国建设银行股份有限公司 | 一种数据处理方法及装置 |
CN107481011A (zh) * | 2017-08-11 | 2017-12-15 | 杭州秘猿科技有限公司 | 一种基于许可链的交易快速确认方法 |
CN110019069A (zh) * | 2017-10-30 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种日志处理方法、装置及设备 |
CN110704378A (zh) * | 2019-09-30 | 2020-01-17 | 珠海港联科技有限公司 | 日志记录方法及日志记录系统 |
CN110955578A (zh) * | 2019-11-26 | 2020-04-03 | 深圳市信联征信有限公司 | 基于宿主机的日志收集方法、装置、计算机设备及存储介质 |
CN113064752B (zh) * | 2019-12-16 | 2023-11-21 | 华晨宝马汽车有限公司 | 用于将日志归档的方法、系统和计算机可读介质 |
CN111309745B (zh) * | 2020-02-10 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 虚拟资源处理方法、装置、电子设备及存储介质 |
CN112306751A (zh) * | 2020-10-30 | 2021-02-02 | 上海二三四五网络科技有限公司 | 一种Redis队列容灾的控制方法以及控制装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101339531A (zh) * | 2008-08-12 | 2009-01-07 | 杭州华三通信技术有限公司 | 一种处理日志文件的方法及装置 |
CN101601197A (zh) * | 2006-12-07 | 2009-12-09 | 索尼爱立信移动通讯股份有限公司 | 生成便携式移动通信设备与其它无线设备间数据交换的交易日志 |
CN102156933A (zh) * | 2010-02-11 | 2011-08-17 | 阿里巴巴集团控股有限公司 | 统计电子商务交易数据的方法和统计系统 |
CN102902764A (zh) * | 2012-09-25 | 2013-01-30 | 北京奇虎科技有限公司 | 一种日志记录的方法和装置 |
-
2013
- 2013-10-29 CN CN201310518732.5A patent/CN104572781B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101601197A (zh) * | 2006-12-07 | 2009-12-09 | 索尼爱立信移动通讯股份有限公司 | 生成便携式移动通信设备与其它无线设备间数据交换的交易日志 |
CN101339531A (zh) * | 2008-08-12 | 2009-01-07 | 杭州华三通信技术有限公司 | 一种处理日志文件的方法及装置 |
CN102156933A (zh) * | 2010-02-11 | 2011-08-17 | 阿里巴巴集团控股有限公司 | 统计电子商务交易数据的方法和统计系统 |
CN102902764A (zh) * | 2012-09-25 | 2013-01-30 | 北京奇虎科技有限公司 | 一种日志记录的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104572781A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104572781B (zh) | 一种交易日志产生方法和装置 | |
US8290994B2 (en) | Obtaining file system view in block-level data storage systems | |
CN110245035A (zh) | 一种链路跟踪方法及装置 | |
CN106059762B (zh) | 数据安全处理方法及装置 | |
CN105989076A (zh) | 一种数据统计方法以及装置 | |
CN104021219B (zh) | 一种数据模板的生成方法及装置 | |
CN109522328A (zh) | 一种数据处理方法及其装置、介质、终端 | |
CN106330963A (zh) | 一种跨网络多节点日志采集的方法 | |
CN106371953A (zh) | 紧凑二进制事件日志生成 | |
CN102521356B (zh) | 基于确定有限状态自动机的正则表达式匹配设备和方法 | |
CN110263222A (zh) | 一种数据获取方法、装置、设备及介质 | |
CN102253948B (zh) | 在多源信息系统中搜索信息的方法和装置 | |
CN107943661A (zh) | 一种数据储存管理系统 | |
CN107040532B (zh) | 一种使用验证码校验的数据评估装置 | |
CN107180043A (zh) | 分页实现方法和分页系统 | |
CN106250501A (zh) | 报表处理方法及报表系统 | |
CN107172112A (zh) | 一种计算机文件传输方法及装置 | |
CN103714121B (zh) | 一种索引记录的管理方法及装置 | |
CN103207916A (zh) | 元数据处理的方法和装置 | |
CN104166650B (zh) | 数据存储装置和数据存储方法 | |
CN101000647A (zh) | 提高数据输入安全性的方法和装置 | |
CN202548924U (zh) | 新型打卡机 | |
CN103488549B (zh) | 多镜像数据的回滚处理系统和回滚处理方法 | |
CN107247715A (zh) | Wms系统与erp系统的同步方法 | |
CN113867818B (zh) | 一种ini文件的生成方法、装置、计算机设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |