日志记录方法及装置与流程

文档序号:11155492阅读:205来源:国知局
日志记录方法及装置与制造工艺

本发明涉及计算机技术与办公自动化技术领域,特别是涉及一种日志记录方法及装置。



背景技术:

ERP(Enterprise Resource Planning,企业资源计划)是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。通常使用的ERP系统包括K3WISE系统等,常规的ERP系统中,对单据进行操作是最为常规的应用之一。

ERP系统通常连接多个用户计算机,用户计算机需要向系统中的业务数据库中写入日志信息时,用户计算机建立与业务服务器的连接,业务服务器将日志信息写入对应的内存空间中,并由对应的内存空间写入业务数据库中的对应的日志记录表里面。通常ERP系统连接多个用户计算机,经常性的并发性访问业务服务器记录日志是比较普遍的,当并发访问数量较高,且用户操作频繁时,如果记录的日志非常多,业务服务器需要对分别将日志信息写入对应的内存空间,频繁的内存切换操作会给业务服务器带来较大的压力,同时,将日志信息写入业务数据库中对应的日志记录表也会极大地占用业务数据库的资源,影响ERP系统的性能。



技术实现要素:

基于此,有必要提供一种日志记录方法和装置,有效提升日志记录效率。

一种日志记录方法,所述方法包括:

业务服务器根据日志操作请求接收需要记录的日志信息;

所述业务服务器将所述日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,所述日志容器为所述业务服务器内存中的存储空间;

通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至日志服务器,所述日志服务器与所述业务服务器连接。

在其中一个实施例中,所述日志服务器中设置有相同的日志容器,所述通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至日志服务器具体为:

通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至所述日志服务器中的日志容器。

在其中一个实施例中,所述方法还包括:

所述日志服务器将所述日志操作请求信息和日志信息存储至日志数据库,所述日志数据库与所述日志服务器连接。

在其中一个实施例中,所述方法还包括:

检测所述日志容器是否可以通过所述内存复制热备份方式将所述日志操作请求信息和日志信息复制至日志服务器;

若否,则通过所述日志容器的后台服务将所述日志操作请求信息和日志信息传递至所述日志服务器。

在其中一个实施例中,所述方法还包括:

对所述日志操作请求信息和日志信息进行序列化处理;

将序列化处理后的所述日志操作请求信息和日志信息构建为二进制数据包;

对所述二进制数据包进行加密。

以上所述日志记录方法中,当与业务服务器连接的用户计算机需要记录日志并向业务服务器发出日志操作请求时,业务服务器会根据日志操作请求接收需要记录的日志信息,业务服务器将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,并将通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器;由此,通过日志容器可以接收任一用户计算机发送的日志信息,无须根据不同的用户计算机切换至对应的内存空间,提高日志信息的记录效率;日志容器中的日志会同步复制至日志服务器,避免因意外情况导致的日志操作失败与日志信息丢失的情况。

一种日志记录装置,所述装置包括业务服务器,所述业务服务器包括:

接收模块,用于根据日志操作请求接收需要记录的日志信息;

写入模块,用于将所述日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,所述日志容器为所述业务服务器内存中的存储空间;

热复制模块,用于通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至日志服务器,所述日志服务器与所述业务服务器连接。

在其中一个实施例中,所述日志服务器中设置有相同的日志容器,所述热复制模块通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至日志服务器具体为:

通过内存复制热备份方式将写入至所述日志容器中的所述日志操作请求信息和日志信息复制至所述日志服务器中的日志容器。

在其中一个实施例中,所述日志服务器连接有日志数据库,所述日志服务器用于将所述日志操作请求信息和日志信息存储至日志数据库。

在其中一个实施例中,所述业务服务器还包括:

检测模块,用于检测所述日志容器是否可以通过所述内存复制热备份方式将所述日志操作请求信息和日志信息复制至日志服务器;

传递模块,用于在所述检测模块检测到不能通过所述内存复制热备份方式将所述日志操作请求信息和日志信息复制至日志服务器时,则通过所述日志容器的后台服务将所述日志操作请求信息和日志信息传递至所述日志服务器。

在其中一个实施例中,所述业务服务器还包括:

处理模块,用于对所述日志操作请求信息和日志信息进行序列化处理;

构建模块,用于将序列化处理后的所述日志操作请求信息和日志信息构建为二进制数据包;

加密模块,用于对所述二进制数据包进行加密。

以上所述日志记录装置中,当与业务服务器连接的用户计算机需要记录日志并向业务服务器发出日志操作请求时,业务服务器会根据日志操作请求接收需要记录的日志信息,业务服务器将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,并将通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器;由此,通过日志容器可以接收任一用户计算机发送的日志信息,无须根据不同的用户计算机切换至对应的内存空间,提高日志信息的记录效率;日志容器中的日志会同步复制至日志服务器,避免因意外情况导致的日志操作失败与日志信息丢失的情况。

附图说明

图1为一实施例的日志记录方法的流程示意图;

图2为另一实施例的日志记录方法的流程示意图;

图3为图1中业务服务器与日志容器的连接示意图;

图4为又一实施例的日志记录方法的流程示意图;

图5为一实施例的日志记录装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,一实施例的日志记录方法包括步骤S120至步骤S160。

步骤S120,业务服务器根据日志操作请求接收需要记录的日志信息。

ERP系统的业务服务器连接多个用户计算机,当用户计算机进行财务操作、物流采购或由ERP系统可实现的其它操作时,需要记录相应的日志信息,以避免操作失败或数据损失。本实施例的ERP系统适用于K3WISE系统等,当用户计算机进行上述操作时,会同步启动业务服务器进行相应的日志记录。具体的,用户计算机向业务服务器发出日志操作请求,业务服务器在接收到日志操作请求后,根据该日志操作请求接收需要记录的日志信息。

步骤S140,业务服务器将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,日志容器为业务服务器内存中的存储空间。

业务服务器包括有内存,本实施例中,在业务服务器中的内存中开辟有日志容器。日志容器在内存中占有固定的存储地址,日志容器只用于存储日志操作请求信息和日志信息,且日志容器可以存储任一用户计算机发送的日志操作请求信息和日志信息。业务服务器在接收到日志操作请求和日志信息后,将将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器。

步骤S160,通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器,日志服务器与业务服务器连接。

在发生意外情况时,为避免日志操作失败与日志丢失,本实施例中,通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器。由于热备份是ERP系统处于正常运行下的备份操作,因此,在日志容器有更新时,则会同步地将更新的内容复制至日志服务器。

以上所述日志记录方法中,当与业务服务器连接的用户计算机需要记录日志并向业务服务器发出日志操作请求时,业务服务器会根据日志操作请求接收需要记录的日志信息,业务服务器将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,并将通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器;由此,通过日志容器可以接收任一用户计算机发送的日志信息,无须根据不同的用户计算机切换至对应的内存空间,提高日志信息的记录效率;日志容器中的日志会同步复制至日志服务器,避免因意外情况导致的日志操作失败与日志信息丢失的情况。

其中,日志服务器中设置有相同的日志容器,步骤S160通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器具体为:通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器中的日志容器。由于日志服务器中的日志容器与业务服务器中的日志容器相同,在热备份时,仅需要同步复制即可,避免可能的地址转换,提升了对日志信息的处理效率。

本实施例中,日志服务器连接日志数据库。如图2所示,另一实施例的日志记录方法还包括步骤S170。

步骤S170,日志服务器将日志操作请求信息和日志信息存储至日志数据库。

复制至日志服务器中的日志操作请求信息和日志信息会被同步会传递至日志数据库进行存储。设置的日志数据库不会产生资源被占用的情况,可有效地提升对日志的存储效率。

参照图3所示,本实施例的一种实现方式中,业务服务器连接日志服务器,日志服务器连接日志数据库。业务服务器的内存中开辟有日志容器,日志容器具有固定大小,在内存中的地址固定,日志服务器的内存中设置有相同的日志容器。

业务服务器通常连接有多个用户计算机,业务服务器在接收到用户计算机发送的日志操作请求后接收对应的日志信息。业务服务器将用户计算机发送的日志操作请求信息和日志信息写入对应的日志容器,其中,日志容器只用于存储日志操作请求信息和日志信息,在没有用户计算机向业务服务器发送日志操作请求时日志容器处于空闲状态。写入业务服务器的日志容器中的日志操作请求信息和日志信息会通过内存复制热备份至日志服务器中的日志容器,进一步,日志服务器将复制至对应日志容器中的日志操作请求信息和日志信息传递至日志数据库进行存储。其中,用户计算机发送至业务服务器的日志信息均可以被写入日志容器,使日志容器作为共享的内存部分,提升对日志信息的处理效率。业务服务器中的日志容器支持热备份,写入其中的日志操作申请信息和日志信息可以同步复制至日志服务器的日志容器中,避免因意外情况导致的日志操作失败与日志信息丢失的情况。复制至日志服务器的日志容器中的日志操作信息和日志信息会被直接发送至日志数据库进行存储,避免用户计算机直接存入日志数据库中的日志记录表里面,避免反复地打开或关闭数据库,提升对日志信息的存储效率。

在不能通过热复制进行正常复制时,本实施例中,为业务服务器中的日志容器设置有后台服务,通过后台服务可以将写入至对应日志容器中的日志操作申请信息和日志信息发送至日志服务器中的日志容器。具体的,由步骤S160通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器时,如果不能正常的执行内存复制热备份,则会产生日志操作失败和日志丢失的情况。为此,如图4所示,又一实施例的日志记录方法还包括步骤S152和步骤S154。

步骤S152,检测日志容器是否可以通过内存复制热备份方式将日志操作请求信息和日志信息复制至日志服务器。

热备份操作时,需要ERP系统在相应的条件下进行,如果不能正常通过内存复制热备份方式进行复制,则会产生日志操作失败和日志丢失的情况。

步骤S154,若否,则通过日志容器的后台服务将日志操作请求信息和日志信息传递至日志服务器。

本实施例中,为业务服务器中的日志容器设置有后台服务,在不能正常通过内存复制热备份方式进行复制时,可以通过后台服务将写入至日志容器中的日志操作请求信息和日志信息传递至日志服务器。进一步,通过步骤S170,日志服务器将日志操作请求信息和日志信息存储至日志数据库

其中,步骤S154中,通过日志容器的后台服务将日志操作请求信息和日志信息传递至日志服务器时,需要对日志操作请求信息和日志信息进行处理以提升传输效率和传输安全。具体的,本实施例的日志记录方法还包括步骤S1531至步骤S1533。

步骤S1531,对日志操作请求信息和日志信息进行序列化处理。

序列化处理包括编码处理等,处理后的日志操作请求信息和日志信息更容易传输。

步骤S1532,将序列化处理后的日志操作请求信息和日志信息构建为二进制数据包。

步骤S1533,对二进制数据包进行加密。

加密后的二进制数据包可以保证传输的安全性,加密方式可以根据日志的重要程度选择不同的加密复杂度。

对于加密后的二进制数据包,日志服务器在验证其有效性后可以传递至日志数据库。

如图3所示,本实施例中,日志服务器中的日志容器可以通过socket,webservice,http/https等方式提供服务给其他异构系统使用,有效的提高的软件的复用性。日志服务器进一步可以通过集群的方式,将对应的日志容器在集群服务器中进行共享,提高数据安全性。

如图5所示,一实施例的日志记录装置包括业务服务器和与业务服务器连接的日志服务器,业务服务器包括接收模块120、写入模块140和热复制模块160。

接收模块120用于根据日志操作请求接收需要记录的日志信息。

ERP系统的业务服务器连接多个用户计算机,当用户计算机进行财务操作、物流采购或由ERP系统可实现的其它操作时,需要记录相应的日志信息,以避免操作失败或数据损失。本实施例的ERP系统适用于K3WISE系统等,当用户计算机进行上述操作时,会同步启动业务服务器进行相应的日志记录。具体的,用户计算机向业务服务器发出日志操作请求,业务服务器在接收到日志操作请求后,根据该日志操作请求接收需要记录的日志信息。

写入模块140用于将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,日志容器为业务服务器内存中的存储空间。

业务服务器包括有内存,本实施例中,在业务服务器中的内存中开辟有日志容器。日志容器在内存中占有固定的存储地址,日志容器只用于存储日志操作请求信息和日志信息,且日志容器可以存储任一用户计算机发送的日志操作请求信息和日志信息。业务服务器在接收到日志操作请求和日志信息后,将将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器。

热复制模块160用于通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器。

在发生意外情况时,为避免日志操作失败与日志丢失,本实施例中,通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器。由于热备份是ERP系统处于正常运行下的备份操作,因此,在日志容器有更新时,则会同步地将更新的内容复制至日志服务器。

以上所述日志记录装置中,当与业务服务器连接的用户计算机需要记录日志并向业务服务器发出日志操作请求时,业务服务器会根据日志操作请求接收需要记录的日志信息,业务服务器将日志操作请求信息和接收的日志信息写入业务服务器中的日志容器中,并将通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器;由此,通过日志容器可以接收任一用户计算机发送的日志信息,无须根据不同的用户计算机切换至对应的内存空间,提高日志信息的记录效率;日志容器中的日志会同步复制至日志服务器,避免因意外情况导致的日志操作失败与日志信息丢失的情况。

其中,日志服务器中设置有相同的日志容器,热复制模块160通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器具体为:通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器中的日志容器。由于日志服务器中的日志容器与业务服务器中的日志容器相同,在热备份时,仅需要同步复制即可,避免可能的地址转换,提升了对日志信息的处理效率。

本实施例中,日志服务器连接日志数据库。日志服务器用于将日志操作请求信息和日志信息存储至日志数据库。

复制至日志服务器中的日志操作请求信息和日志信息会被同步会传递至日志数据库进行存储。设置的日志数据库不会产生资源被占用的情况,可有效地提升对日志的存储效率。

参照图3所示,本实施例的一种实现方式中,业务服务器连接日志服务器,日志服务器连接日志数据库。业务服务器的内存中开辟有日志容器,日志容器具有固定大小,在内存中的地址固定,日志服务器的内存中设置有相同的日志容器。

业务服务器通常连接有多个用户计算机,业务服务器在接收到用户计算机发送的日志操作请求后接收对应的日志信息。业务服务器将用户计算机发送的日志操作请求信息和日志信息写入对应的日志容器,其中,日志容器只用于存储日志操作请求信息和日志信息,在没有用户计算机向业务服务器发送日志操作请求时日志容器处于空闲状态。写入业务服务器的日志容器中的日志操作请求信息和日志信息会通过内存复制热备份至日志服务器中的日志容器,进一步,日志服务器将复制至对应日志容器中的日志操作请求信息和日志信息传递至日志数据库进行存储。其中,用户计算机发送至业务服务器的日志信息均可以被写入日志容器,使日志容器作为共享的内存部分,提升对日志信息的处理效率。业务服务器中的日志容器支持热备份,写入其中的日志操作申请信息和日志信息可以同步复制至日志服务器的日志容器中,避免因意外情况导致的日志操作失败与日志信息丢失的情况。复制至日志服务器的日志容器中的日志操作信息和日志信息会被直接发送至日志数据库进行存储,避免用户计算机直接存入日志数据库中的日志记录表里面,避免反复地打开或关闭数据库,提升对日志信息的存储效率。

在不能通过热复制进行正常复制时,本实施例中,为业务服务器中的日志容器设置有后台服务,通过后台服务可以将写入至对应日志容器中的日志操作申请信息和日志信息发送至日志服务器中的日志容器。具体的,由热复制模块160通过内存复制热备份方式将写入至日志容器中的日志操作请求信息和日志信息复制至日志服务器时,如果不能正常的执行内存复制热备份,则会产生日志操作失败和日志丢失的情况。为此,业务服务器还包括检测模块152和传递模块154。

检测模块152用于检测日志容器是否可以通过内存复制热备份方式将日志操作请求信息和日志信息复制至日志服务器。

热备份操作时,需要ERP系统在相应的条件下进行,如果不能正常通过内存复制热备份方式进行复制,则会产生日志操作失败和日志丢失的情况。

传递模块154用于在检测模块检测到不能通过内存复制热备份方式将日志操作请求信息和日志信息复制至日志服务器时,则通过日志容器的后台服务将日志操作请求信息和日志信息传递至日志服务器。

本实施例中,为业务服务器中的日志容器设置有后台服务,在不能正常通过内存复制热备份方式进行复制时,可以通过后台服务将写入至日志容器中的日志操作请求信息和日志信息传递至日志服务器。进一步,日志服务器可以将日志操作请求信息和日志信息存储至日志数据库。

其中,传递模块154通过日志容器的后台服务将日志操作请求信息和日志信息传递至日志服务器时,需要对日志操作请求信息和日志信息进行处理以提升传输效率和传输安全。具体的,业务服务器还包括处理模块1531、构建模块1532和加密模块1533。

处理模块1531用于对日志操作请求信息和日志信息进行序列化处理。

序列化处理包括编码处理等,处理后的日志操作请求信息和日志信息更容易传输。

构建模块1532用于将序列化处理后的日志操作请求信息和日志信息构建为二进制数据包。

加密模块1533用于对二进制数据包进行加密。

加密后的二进制数据包可以保证传输的安全性,加密方式可以根据日志的重要程度选择不同的加密复杂度。

如图3所示,本实施例中,日志服务器中的日志容器可以通过socket,webservice,http/https等方式提供服务给其他异构系统使用,有效的提高的软件的复用性。日志服务器进一步可以通过集群的方式,将对应的日志容器在集群服务器中进行共享,提高数据安全性。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1