掌桥专利:专业的专利平台
掌桥专利
首页

一种文件维护的轨迹记录方法、装置及电子设备

文献发布时间:2023-06-19 10:05:17


一种文件维护的轨迹记录方法、装置及电子设备

技术领域

本说明书一个或多个实施例涉及文件轨迹技术领域,尤其涉及一种文件维护的轨迹记录方法、装置及电子设备。

背景技术

随着信息网络技术和公司业务的不断发展,公司内的应用系统越来越多,不同的应用系统可能会对同一个文件进行多次操作,并采用系统日志记录操作轨迹。

然而,通过日志对文件操作轨迹进行记录的方式不够直观;而且,对于请求量较大的应用,在日志中查找文件操作轨迹耗时耗力。

发明内容

有鉴于此,本说明书一个或多个实施例的目的在于提出一种文件维护的轨迹记录方法、装置及电子设备,以解决现有技术中通过日志记录文件操作轨迹不便查找的问题。

基于上述目的,本说明书一个或多个实施例提供了一种文件维护的轨迹记录方法,包括:

接收第一用户对第一文件的操作指令;

根据所述操作指令对所述第一文件进行操作,生成第二文件以及所述第二文件的文件操作轨迹;

将所述文件操作轨迹存储于ElasticSearch模块中。

可选的,所述根据所述操作指令对所述第一文件进行操作,包括:

获取与所述操作指令对应的指令接口;

调用所述指令接口对所述第一文件进行操作。

可选的,在生成第二文件的同时,保留所述第一文件并修改所述第一文件的系统索引字段,使所述第一文件不能被所述第一用户操作。

可选的,还包括:

接收第二用户对所述第二文件的操作轨迹查询请求;

基于所述操作轨迹查询请求,获取所述第二文件的文件标识信息;

基于所述文件标识信息,在所述ElasticSearch模块中进行搜索,获取所述第二文件的文件操作轨迹。

可选的,所述获取所述第二文件的文件操作轨迹之后,还包括:

根据所述文件操作轨迹,获取所述第二文件的基本信息;

根据所述第二文件的基本信息,确定所述第一文件的基本信息;

根据所述第一文件的基本信息,调用所述ElasticSearch模块进行搜索,获取所述第一文件。

可选的,所述获取所述第二文件的文件操作轨迹之后,还包括:

根据所述文件操作轨迹,调用Kibana模块生成统计图表并提供给所述第二用户。

可选的,所述对所述第一文件进行操作,包括:

对所述第一文件进行上传、下载、断点续传、查询以及删除。

可选的,所述文件操作轨迹包括文件标识信息、接口类型、逻辑桶、操作用户信息、响应结果。

本说明书一个或多个实施例提供了一种文件维护的轨迹记录装置,包括:

接收模块,用于接收第一用户对第一文件的操作指令;

生成模块,用于根据所述操作指令对所述第一文件进行操作,生成第二文件以及所述第二文件的文件操作轨迹;

存储模块,用于将所述文件操作轨迹存储于ElasticSearch模块中。

本说明书一个或多个实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项实施例所述文件维护的轨迹记录方法。

从上面所述可以看出,本说明书一个或多个实施例提供的文件维护的轨迹记录方法、装置及电子设备,在对第一文件进行操作时调用ElasticSearch模块生成相应的文件操作轨迹并存储于ElasticSearch模块中,文件操作轨迹按照应用区分不同接口的调用量与平均响应时间,便于观察核心接口的运行状态,并且能够通过轨迹复现用户操作流程,做到有迹可循;利用ElasticSearch模块的搜索功能,可直接通过ElasticSearch模块对文件操作轨迹进行搜索,从而可以追溯文件的整个操作流程,提高了文件操作轨迹的查询效率;当有人篡改或误删文件时,可根据文件操作轨迹及时追溯操作轨迹,能够在审计、案件侦破以及法律纠纷等场景发挥作用。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本说明书一个或多个实施例文件维护的轨迹记录方法的流程图;

图2为本说明书一个或多个实施例文件维护的轨迹记录装置的结构图;

图3为本说明书一个或多个实施例电子设备的结构。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。

需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。

现有技术中,在对文件进行上传、下载、调阅、转码、删除等操作时,通过通过文件系统的日志功能记载文件操作轨迹。然而应用系统通过日志对文件操作轨迹进行记录的方式不够直观;而且,对于请求量较大的应用,在日志中查找文件操作轨迹耗时耗力。

基于上述原因,本说明书一个或多个实施例提供一种文件维护的轨迹记录方法,以解决上述技术问题。如图1所示,所述文件维护的轨迹记录方法包括:

步骤S101,接收第一用户对第一文件的操作指令。

其中,第一用户需要对第一文件进行操作时,会生成针对第一文件的操作指令并发送给文件管理系统。文件管理系统可对第一文件进行存储。

在本实施例中,第一用户即为可对第一文件进行操作的应用方,各个应用方通过各自的应用系统实现对第一文件的操作。操作指令包括对第一文件进行上传、下载、断点续传、查询以及删除等操作的操作指令。

步骤S103,根据所述操作指令对所述第一文件进行操作,生成第二文件以及所述第二文件的文件操作轨迹。

文件管理系统基于操作指令对第一文件进行操作后获得第二文件继续存储于文件管理系统中,在此过程中,调用ElasticSearch模块生成第二文件的索引信息并同时生成文件操作轨迹。

本实施例中,对所述第一文件进行操作,包括对所述第一文件进行上传、下载、断点续传、查询以及删除等操作。

步骤S105,将所述文件操作轨迹存储于ElasticSearch模块中。

其中,Elasticsearch是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch的实现原理主要分为以下几个步骤:首先用户将数据提交到Elasticsearch数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据的时候,再根据权重将结果排名、打分,再将返回结果呈现给用户。

本实施例中,在对第一文件进行操作时调用ElasticSearch模块生成相应的文件操作轨迹并存储于ElasticSearch模块中,文件操作轨迹按照应用区分不同接口的调用量与平均响应时间,便于观察核心接口的运行状态,并且能够通过轨迹复现用户操作流程,做到有迹可循;利用ElasticSearch模块的搜索功能,可直接通过ElasticSearch模块对文件操作轨迹进行搜索,从而可以追溯文件的整个操作流程,提高了文件操作轨迹的查询效率;当有人篡改或误删文件时,可根据文件操作轨迹及时追溯操作轨迹,从而可以在审计、案件侦破以及法律纠纷等场景发挥作用。

在本说明书的一些可选的实施例中,,步骤S103中所述根据所述操作指令对所述第一文件进行操作,包括:

步骤S201,获取与所述操作指令对应的指令接口。

步骤S203,调用所述指令接口对所述第一文件进行操作。

在本实施例中,每一个核心接口都会记录成功、失败的文件轨迹信息,可定位具体文件源头及具体文件信息,记录接口类型、耗时、响应结果,可定位系统响应能力以及接口并发量,通过调用设备类型、组件版本信息、流水号等关键索引信息,追溯应用方调用方式以及具体设备、系统版本等。

在本说明书的一些可选的实施例中,步骤S103中在生成第二文件的同时,保留所述第一文件并修改所述第一文件的系统索引字段,使所述第一文件不能被所述第一用户操作。

现有技术中,在对第一文件进行操作生成第二文件后,只保留第二文件,而不会保留第一文件。例如,对第一文件进行修改获得第二文件后只保留修改后的第二文件,而不保留修改前的第一文件。而在本说明书实施例中,修改第一文件的索引信息或者生成新的索引信息作为第二文件的索引,同时仍然保留第一文件,只是修改第一文件的系统索引字段使得第一文件不能被第一用户进行下载、单个索引查询、更新索引、索引反查询、批量更行、文件替换等操作。这样,对于第一用户来说,被操作之前的第一文件是不可见的。

在一个具体的实施例中,以删除操作为例,所述文件维护的轨迹记录方法包括:

步骤S301,接收第一用户对第一文件的逻辑删除指令。

步骤S303,基于所述逻辑删除指令,修改第一文件的系统索引字段,使第一文件对第一用户不可见,完成第一文件的逻辑删除。

在本实施例中,在对第一文件进行删除时,通过将第一文件的系统索引字段(x-cms-system-meta-permission)信息修改为03,使得第一文件不可被第一用户进行下载、单个索引查询、更新索引、索引反查询、批量更新、文件替换的操作;即第一文件仍然存储于底层介质中而未被删除,只是在下载、单个索引查询、更新索引、索引反查询、批量更新、文件替换等接口中屏蔽了系统索引字段(x-cms-system-meta-permission)为03的第一文件。这样对第一用户来说,删除的第一文件是不可见的,等同于真正的删除。若出现误操作时,只需通过不会屏蔽系统索引字段为03的接口即可找回第一文件,从而使得即使第一用户误操作,导致第一文件被删除,也可进行找回,从而可以避免引起业务事故。

本说明书一个或多个实施例所述文件维护的轨迹记录方法还包括:

步骤S401,接收第二用户对所述第二文件的操作轨迹查询请求。

本实施例中,第二用户与第一用户具有不同的权限;其中,第一用户能够实现对第一文件的操作,但是并不能查询系统索引字段被修改为03后的第一文件;第二用户能够查询文件操作轨迹,并能够查询系统索引字段被修改为03的第一文件。

步骤S402,基于所述操作轨迹查询请求,获取所述第二文件的文件标识信息。

在本实施例中,文件操作轨迹包括文件标识信息、接口类型、逻辑桶、操作用户信息、响应结果等信息。此外,还可包括耗时、组件版本信息、调用设备类型、流水号以及描述信息(包括工号、执行结果)等。

系统接收到第二用户对第二文件的操作轨迹查询请求后,解析该操作轨迹查询请求从而获得第二文件的文件标识信息,以便于在ElasticSearch模块中查询出第二文件的全部文件操作轨迹。

步骤S403,基于所述文件标识信息,在所述ElasticSearch模块中进行搜索,获取所述第二文件的文件操作轨迹。

可选的,获得文件操作轨迹之后,则可根据该文件操作轨迹确定操作用户信息、操作时间、操作用户的调用设备类型等信息。

在一个具体的实施例中,通过在ElasticSearch模块中查询trace_type为“D”的文件操作轨迹记录,可查询出所有逻辑删除的记录;再通过具体的文件标识信息(x-cms-system-meta-id)可定位被删除的具体文件,同时通过trace_info、trace_date可定位文件由谁删除以及何时删除,通过trace_device_type可定位应用方设备类型。

在上述实施例中,由于对第一文件进行操作后仍保留第一文件,因此可通过其他用户、接口对第一文件进行查询。因此本说明书一个或多个实施例所述文件维护的轨迹记录方法还包括:

步骤S501,根据所述文件操作轨迹,获取所述第二文件的基本信息。

步骤S502,根据所述第二文件的基本信息,确定所述第一文件的基本信息。

步骤S503,根据所述第一文件的基本信息,调用所述ElasticSearch模块进行搜索,获取所述第一文件。

在本实施例中,因修改了系统索引字段导致不能够被第一用户操作的第一文件对第二用户是可见的,即可以被第二用户操作。因此当获取到全部的文件操作轨迹之后,则可以根据该文件操作轨迹确定第二文件的基本信息,包括文件标识信息、调用设备类型、组件版本信息、流水号等。而由第一文件生成第二文件的过程中,部分基本信息不变化,因此在第二文件的基本信息中可确定第一文件的基本信息,最后调用ElasticSearch模块进行搜索从而获取所述第一文件。

在上述实施例中,当获取到二文件的文件操作轨迹之后,还可以根据所述文件操作轨迹,调用Kibana模块生成统计图表并提供给所述第二用户。通过Kibana模块生成各种统计图表,使用异步线程池的方式记录轨迹信息减少请求响应时间,且使得文件操作轨迹的展示更加直观。

本说明书实施例所述文件维护的轨迹记录方法,通过在Elasticsearch模块中记录文件操作轨迹,能够通过文件操作轨迹复现用户操作流程,做到有迹可循;利用ElasticSearch模块的搜索功能,可直接通过ElasticSearch模块对文件操作轨迹进行搜索,从而可以追溯文件的整个操作流程,提高了文件操作轨迹的查询效率;当有人篡改或误删文件时,可根据文件操作轨迹及时追溯操作轨迹,能够在审计、案件侦破以及法律纠纷等场景发挥作用。

需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供一种文件维护的轨迹记录装置。如图2所示,所述文件维护的轨迹记录装置包括:

接收模块11,用于接收第一用户对第一文件的操作指令。

生成模块12,用于根据所述操作指令对所述第一文件进行操作,生成第二文件以及所述第二文件的文件操作轨迹。

存储模块13,用于将所述文件操作轨迹存储于ElasticSearch模块中。

可选的,所述生成模块12还用于:获取与所述操作指令对应的指令接口;调用所述指令接口对所述第一文件进行操作。

可选的,所述生成模块12还用于:在生成第二文件的同时,保留所述第一文件并修改所述第一文件的系统索引字段,使所述第一文件不能被所述第一用户操作。

可选的,所述装置还用于实现:接收第二用户对所述第二文件的操作轨迹查询请求;基于所述操作轨迹查询请求,获取所述第二文件的文件标识信息;基于所述文件标识信息,在所述ElasticSearch模块中进行搜索,获取所述第二文件的文件操作轨迹。

可选的,所述获取所述第二文件的文件操作轨迹之后,还包括:

根据所述文件操作轨迹,获取所述第二文件的基本信息;

根据所述第二文件的基本信息,确定所述第一文件的基本信息;

根据所述第一文件的基本信息,调用所述ElasticSearch模块进行搜索,获取所述第一文件。

可选的,所述获取所述第二文件的文件操作轨迹之后,还包括:

根据所述文件操作轨迹,调用Kibana模块生成统计图表并提供给所述第二用户。

可选的,所述对所述第一文件进行操作,包括:对所述第一文件进行上传、下载、断点续传、查询以及删除。

可选的,所述文件操作轨迹包括文件标识信息、接口类型、逻辑桶、操作用户信息、响应结果。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

基于同一发明构思,基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的文件维护的轨迹记录方法。

图3示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。

尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。

本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

相关技术
  • 一种文件维护的轨迹记录方法、装置及电子设备
  • 一种轨迹特征点判断方法、轨迹记录方法和相关装置
技术分类

06120112410171