本申请涉及互联网技术领域,尤其涉及一种日志记录处理方法、装置、设备及机器可读存储介质。
背景技术:
设备运行过程会产生日志记录,如应用程序日志记录、安全日志记录、系统日志记录等,日志记录是记录软件信息、系统信息、硬件信息的重要媒介。日志记录可以是单个文件、文件集合、数据库、数据流等。日志记录中的内容包括时间戳、事件信息、系统状态信息、错误信息、用户信息、应用信息等。
用户通过分析日志记录中的内容,可以监控设备的安全性,检测异常行为,及时对设备的异常进行处理,保证设备正常运行,发现系统或软件的错误等。
但是,设备通常会产生大量日志记录,由用户人工分析大量日志记录中的内容,其工作量很大,而且,用户可能无法分析出日志记录中有价值的信息。
技术实现要素:
本申请提供一种日志记录处理方法,所述方法包括:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
本申请提供一种日志记录处理方法,所述方法包括:
获取日志记录,所述日志记录包括用户信息、操作行为事件;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
本申请提供一种日志记录处理装置,所述装置包括:
获取模块,用于获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;确定模块,用于根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;利用所述操作行为序列确定目标操作行为序列。
本申请提供一种日志记录处理设备,包括:
处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
本申请提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令;所述计算机指令被执行时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
基于上述技术方案,本申请实施例中,能够快速有效地提取日志记录中有价值的信息,如确定目标操作行为序列,目标操作行为序列是被大量用户频繁执行的操作行为序列。目标操作行为序列包括操作行为事件和操作行为事件的消耗资源值(如消耗的存储空间大小、cpu大小、内存大小等),这样,通过目标操作行为序列可以获知哪些操作行为事件被频繁执行,且消耗的资源大小,继而对资源进行有效控制,保证业务的正常运行。在分析同一操作行为事件对应的消耗资源值时,可以将同一操作行为事件的消耗资源值进行分组,从而大大减少操作行为序列的数量,提高确定目标操作行为序列时的处理效率。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其它的附图。
图1是本申请一种实施方式中的日志记录处理方法的流程示意图;
图2是本申请另一种实施方式中的日志记录处理方法的流程示意图;
图3是本申请一种实施方式中的日志记录处理装置的结构示意图;
图4是本申请一种实施方式中的日志记录处理设备的结构示意图;
图5是本申请一种实施方式中的日志记录处理系统的结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例提出一种日志记录处理方法,应用于日志记录处理设备,该日志记录处理设备可以是任意类型的设备,如服务器、网络设备(如路由器、交换机)、pc(personalcomputer,个人计算机)等,对此不做限制,只要能够产生日志记录即可,后续以服务器为例。在用户通过客户端访问服务器的过程中,服务器可以产生大量日志记录,如针对用户的登录操作,服务器产生针对登录操作的日志记录,该日志记录可以包括操作行为事件,且操作行为事件为登录操作。针对用户的注册操作,服务器产生针对注册操作的日志记录,该日志记录可以包括操作行为事件,且操作行为事件为注册操作。针对用户的搜索操作,服务器产生针对搜索操作的日志记录,该日志记录可以包括操作行为事件,且操作行为事件为搜索操作,以此类推,对操作行为事件的类型不做限制。
为了分析日志记录中有价值的信息,本申请实施例中提出一种日志记录处理方法,参见图1所示,为日志记录处理方法的流程示意图,该方法可以包括:
步骤101,获取日志记录,所述日志记录可以包括但不限于以下之一或者任意组合:用户信息、操作行为事件、消耗资源值。
在服务器的运行过程中,可以产生大量日志记录,每个日志记录包括大量信息,对此信息不做限制。本实施例中,可以预先配置需要提取的属性信息,表示需要从日志记录的大量信息中获取这些属性信息,属性信息可以根据实际需要任意配置,对此不做限制。本实施例中,属性信息包括但不限于以下之一或者任意组合:用户信息、操作行为事件、消耗资源值、时间戳和操作时间值。
参见表1所示,可以预先配置数据结构,针对获取的大量日志记录,可以从每个日志记录中提取用户信息、操作行为事件、消耗资源值、时间戳和操作时间值等,并将这些信息记录到数据结构中。当然,表1只是示例,数据结构可以包括大量日志记录的信息,后续过程中,根据数据结构中的信息进行分析。
表1
在上述实施例中,用户信息用于唯一表示一个用户,如用户信息可以为用户标识(用户id)、ip地址、浏览器指纹等,对此用户信息不做限制。
操作行为事件用于表示用户的操作行为,如针对用户的登录操作,操作行为事件为登录操作。针对用户的搜索操作,操作行为事件为搜索操作。针对用户的购物车操作,操作行为事件为购物车操作。针对用户的购买操作,操作行为事件为购买操作。当然,上述只是操作行为事件的示例,对此不做限制。
消耗资源值用于表示操作行为事件的消耗资源值,例如,存储空间大小、cpu大小、内存大小等,对此消耗资源值的类型不做限制,后续以消耗资源值为存储空间大小为例。例如,日志记录1中的15字节,表示针对用户信息1的登录操作,共使用了15字节的存储空间大小。日志记录2中的120字节,表示针对用户信息1的搜索操作,共使用了120字节的存储空间大小,以此类推。
时间戳用于表示日志记录的产生时刻,如时间戳1表示日志记录1在时间戳1产生,时间戳2表示日志记录2在时间戳2产生,以此类推。可以约定时间戳的格式(如年、月、日、时、分、秒等的格式),并采用该格式在数据结构中记录时间戳,对此时间戳的格式不做限制,可以根据实际需要配置。
操作时间值用于表示操作行为事件的操作时间值,例如,日志记录1中的3秒,表示针对用户信息1的登录操作,共使用了3秒的时间。日志记录2中的6秒,表示针对用户信息1的搜索操作,共使用了6秒的时间,以此类推。
步骤102,根据消耗资源值和操作行为事件确定日志记录所属的类别组。
在一个例子中,可以针对每种操作行为事件创建至少一个类别组,在创建所述至少一个类别组时,不同的类别组可以对应不同的资源值区间。
例如,针对登录操作创建类别组11、类别组12、类别组13。类别组11对应资源值区间11,且资源值区间11为区间[0字节,10字节)。类别组12对应资源值区间12,且资源值区间12为区间[10字节,20字节)。类别组13对应资源值区间13,且资源值区间13为区间[20字节,正无穷)。
针对搜索操作创建类别组21、类别组22、类别组23。类别组21对应资源值区间21,且资源值区间21为区间[0字节,100字节)。类别组22对应资源值区间22,且资源值区间22为区间[100字节,200字节)。类别组23对应资源值区间23,且资源值区间23为区间[200字节,正无穷)。
针对购物车操作创建类别组31、类别组32、类别组33。类别组31对应资源值区间31,且资源值区间31为区间[0字节,1000字节)。类别组32对应资源值区间32,且资源值区间32为区间[1000字节,2000字节)。类别组33对应资源值区间33,且资源值区间33为区间[2000字节,正无穷)。
针对购买操作创建类别组41、类别组42、类别组43。类别组41对应资源值区间41,且资源值区间41为区间[0字节,1000字节)。类别组42对应资源值区间42,且资源值区间42为区间[1000字节,2000字节)。类别组43对应资源值区间43,且资源值区间43为区间[2000字节,正无穷)。
当然,上述只是类别组和资源值区间的示例,对此不做限制,例如,针对每种操作行为事件创建4个类别组,4个类别组对应4个资源值区间。
在一个例子中,针对每个日志记录来说,可以根据该日志记录的消耗资源值和操作行为事件确定该日志记录所属的类别组。具体的,可以确定该操作行为事件对应的所有资源值区间,并从该操作行为事件对应的所有资源值区间中确定该消耗资源值所位于的资源值区间;然后,确定与所述资源值区间对应的类别组,并将该日志记录划分到所述类别组中。
例如,日志记录1的操作行为事件为登录操作,消耗资源值为15字节。登录操作对应资源值区间11、资源值区间12和资源值区间13,且15字节位于资源值区间12,因此,将日志记录1划分到资源值区间12对应的类别组12。日志记录2的操作行为事件为搜索操作,消耗资源值为120字节。搜索操作对应资源值区间21、资源值区间22和资源值区间23,且120字节位于资源值区间22,因此,将日志记录2划分到资源值区间22对应的类别组22。同理,日志记录3的操作行为事件为登录操作,消耗资源值为16字节,将日志记录3划分到类别组12。日志记录4的操作行为事件为购物车操作,消耗资源值为800字节,将日志记录4划分到类别组31。日志记录5的操作行为事件为搜索操作,消耗资源值为126字节,将日志记录5划分到类别组22。日志记录6的操作行为事件为购买操作,消耗资源值为1500字节,将日志记录6划分到类别组42。
步骤103,根据用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列。
在一个例子中,日志记录还包括时间戳和操作时间值,根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列,可以包括:
方式一、基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列,并将初始序列确定为所述用户的操作行为序列。
在一个例子中,可以通过某个字符表示操作行为事件,如a表示登录操作,b表示搜索操作,c表示购物车操作,d表示购买操作。参见表1所示,由于日志记录1、日志记录2和日志记录4对应同一个用户信息1,因此,日志记录1、日志记录2和日志记录4是属于同一用户的日志记录,按照时间戳的先后顺序,对日志记录1的a12(a表示登录操作,12表示类别组的组标识)、日志记录2的b22和日志记录4的c31进行排序,假设排序结果为a12、b22、c31,则初始序列为a12-b22-c31,将初始序列a12-b22-c31确定为用户信息1的操作行为序列。
参见表1所示,由于日志记录3、日志记录5和日志记录6对应同一个用户信息2,因此,日志记录3、日志记录5和日志记录6是属于同一用户的日志记录,按照时间戳的先后顺序,对日志记录3的a12、日志记录5的b22和日志记录6的d42进行排序,假设排序结果为a12、b22、d42,则初始序列为a12-b22-d42,将初始序列a12-b22-d42确定为用户信息2的操作行为序列。
方式二、基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列。根据操作时间值和消耗资源值将该初始序列切分成至少一个子序列,并将至少一个子序列确定为所述用户的操作行为序列。
其中,根据操作时间值和消耗资源值将该初始序列切分成至少一个子序列,包括:针对该初始序列中的每个操作行为事件(如操作行为事件和该操作行为事件对应的类别组),根据该操作行为事件对应的操作时间值和消耗资源值,确定该操作行为事件(如操作行为事件和该操作行为事件对应的类别组)是否为切分节点;若是,则将该初始序列中位于该操作行为事件(如操作行为事件和该操作行为事件对应的类别组)之前的至少一个操作行为事件和类别组切分成子序列。若否,则不对该操作行为事件(如操作行为事件和该操作行为事件对应的类别组)之前的操作行为事件和类别组进行切分。
参见表1所示,由于日志记录1、日志记录2和日志记录4对应同一个用户信息1,因此,日志记录1、日志记录2和日志记录4是属于同一用户的日志记录,按照时间戳的先后顺序,对日志记录1的a12、日志记录2的b22和日志记录4的c31进行排序,假设排序结果为a12、b22、c31,则初始序列为a12-b22-c31。
针对初始序列a12-b22-c31中的操作行为事件和类别组a12,确定a12对应的操作时间值和消耗资源值,即日志记录1的操作时间值(3秒)和消耗资源值(15字节)。根据操作时间值(3秒)和消耗资源值(15字节)确定a12是否为切分节点。若否,则判断下一个操作行为事件和类别组,直至初始序列的最后一个操作行为事件和类别组。若是,由于初始序列a12-b22-c31中位于a12之前的操作行为事件和类别组为空,因此不切分子序列,然后,继续判断下一个操作行为事件和类别组。
针对初始序列a12-b22-c31中的b22,确定b22对应的操作时间值和消耗资源值,即日志记录2的操作时间值(6秒)和消耗资源值(120字节)。根据操作时间值(6秒)和消耗资源值(120字节)确定b22是否为切分节点。若否,则判断下一个操作行为事件和类别组。若是,则将初始序列a12-b22-c31中位于b22之前的操作行为事件和类别组切分成子序列,即得到一个子序列,该子序列为a12,然后,继续判断下一个操作行为事件和类别组。
针对初始序列a12-b22-c31中的c31,确定c31对应的操作时间值和消耗资源值,即日志记录4的操作时间值(5秒)和消耗资源值(800字节)。根据操作时间值(5秒)和消耗资源值(800字节)确定c31是否为切分节点。若否,则结束判断流程。若是,则将初始序列a12-b22-c31中位于c31之前的操作行为事件和类别组切分成子序列。例如,假设已经将a12切分为子序列,则将b22切分为子序列,且c31是一个子序列,即针对用户信息1得到3个子序列,第一个子序列为a12,第二个子序列为b22,第三个子序列为c31。假设没有将a12切分为子序列,则将a12和b22切分为子序列,且c31是一个子序列,即针对用户信息1得到2个子序列,第一个子序列为a12-b22,第二个子序列为c31。
参见表1所示,由于日志记录3、日志记录5和日志记录6对应同一个用户信息2,因此,日志记录3、日志记录5和日志记录6是属于同一用户的日志记录,按照时间戳的先后顺序,对日志记录3的a12、日志记录5的b22和日志记录6的d42进行排序,假设排序结果为a12、b22、d42,则初始序列为a12-b22-d42。
针对初始序列a12-b22-d42,可以根据a12对应的操作时间值(日志记录3的操作时间值)和消耗资源值(日志记录3的消耗资源值),确定a12是否为切分节点;可以根据b22对应的操作时间值(日志记录5的操作时间值)和消耗资源值(日志记录5的消耗资源值),确定b22是否为切分节点;可以根据d42对应的操作时间值(日志记录6的操作时间值)和消耗资源值(日志记录6的消耗资源值),确定d42是否为切分节点。具体方式参见上述实施例,假设针对用户信息2得到两个子序列,第一个子序列为a12-b22,第二个子序列为d42。
在上述实施例中,根据操作行为事件对应的操作时间值和消耗资源值,确定操作行为事件(如操作行为事件和类别组)是否为切分节点,可以包括但不限于:根据操作时间值和消耗资源值,确定操作行为事件(如操作行为事件和类别组)的残差;若该残差大于残差阈值,则确定该操作行为事件是切分节点;若该残差不大于残差阈值,则确定该操作行为事件不是切分节点。
示例性的,可以将用户的初始序列切分为至少一个子序列,若初始序列的所有操作行为事件均不是切分节点,则将初始序列切分为一个子序列,若初始序列的所有操作行为事件中存在切分节点,则将初始序列切分为多个子序列。
为了方便描述,本实施例中,可以将日志记录的操作行为事件和日志记录所属类别组的组信息称为操作行为参数,该操作行为参数可以包括但不限于:操作行为事件、该类别组的组信息,如日志记录所属类别组的组标识。
在一个例子中,针对每个日志记录来说,可以根据操作行为事件和类别组确定该日志记录的操作行为参数。例如,参见上述实施例,日志记录1的操作行为参数包括登录操作和类别组12;日志记录2的操作行为参数包括搜索操作和类别组22。日志记录3的操作行为参数包括登录操作和类别组12。日志记录4的操作行为参数包括购物车操作和类别组31。日志记录5的操作行为参数包括搜索操作和类别组22。日志记录6的操作行为参数包括购买操作和类别组42。
示例性的,可以通过某个字符表示操作行为事件,如a表示登录操作,b表示搜索操作,c表示购物车操作,d表示购买操作。基于此,日志记录1的操作行为参数包括a12,即登录操作和类别组12。日志记录2的操作行为参数包括b22。日志记录3的操作行为参数包括a12。日志记录4的操作行为参数包括c31。日志记录5的操作行为参数包括b22。日志记录6的操作行为参数包括d42。
在一个例子中,考虑到操作行为事件的消耗资源值的分布比较广,因此,可以为同一种操作行为事件划分多个类别组,且类别组对应的是资源值区间,而不是具体的消耗资源值。当多个消耗资源值对应同一个资源值区间时,就可以将这些消耗资源值确定为同样的类别,属于同一个类别组。显然,由于操作行为事件的消耗资源值分布在0至无穷大,因此,通过划分类别组,可以显著减少操作行为参数的数量。例如,若未划分类别组,则日志记录1的操作行为参数为a15,15表示15个字节,日志记录3的操作行为参数为a16,16表示16个字节,本实施例中,由于划分类别组,因此,日志记录1和日志记录3的操作行为参数均为a12,12表示类别组12。显然,针对登录操作划分3个类别组时,针对登录操作的操作行为参数为3个,如操作行为参数包括a11、a12、a13。
示例性的,可以使用一维聚类方法(如jenksnaturalbreaks),为同一操作行为事件划分多个类别组,每个类别组对应不同的资源值区间,对此不做限制。在一个例子中,为了将初始序列切分为多个子序列,则需要从初始序列的所有操作行为事件(如操作行为事件和该操作行为事件对应的类别组)中,获知能够作为切分节点的操作行为事件。而能够作为切分节点的操作行为事件,是所有操作行为事件中有滞留的操作行为事件。例如,用户在执行登录操作时,若滞留时间比较长,则这个登录操作就是有滞留的操作行为事件,也就是说,该操作行为事件是能够作为切分节点的操作行为事件。
在一个例子中,针对每个操作行为事件,可以根据该操作行为事件的操作时间值和消耗资源值,确定该操作行为事件是否为有滞留的操作行为事件。例如,可以根据该操作行为事件的操作时间值和消耗资源值,确定该操作行为事件的残差;若该残差大于残差阈值,则确定该操作行为事件为有滞留的操作行为事件,即该操作行为事件是切分节点;若该残差不大于残差阈值,则确定该操作行为事件不为有滞留的操作行为事件,即该操作行为事件不是切分节点。
示例性的,可以使用线性回归的方法,确定操作行为事件是否为有滞留的操作行为事件。例如,在用户操作过程中,消耗资源值越大,则操作的时间越长,因此,可以根据操作时间值和消耗资源值来建立线性回归模型,该线性回归模型用于记录操作时间值、消耗资源值和残差的对应关系。在线性回归模型中,操作行为事件的操作时间值作为自变量,操作行为事件的消耗资源值作为自变量,对此线性回归模型的构建过程不做限制。由于操作时间值和消耗资源值均作为自变量,因此,针对每个操作行为事件,可以根据该操作行为事件的操作时间值和消耗资源值查询线性回归模型,得到该操作行为事件的残差。
示例性的,基于线性回归模型,若操作时间值较大,消耗资源值较小,则残差比较大,若操作时间值较小,消耗资源值较大,则残差比较小。当然,这里只是示例,线性回归模型可以任意选择,只要线性回归模型用于记录操作时间值、消耗资源值和残差的对应关系即可,这样,基于线性回归模型,可以根据操作行为事件的操作时间值和消耗资源值,确定该操作行为事件的残差。
进一步的,在得到操作行为事件的残差后,判断该残差是否大于残差阈值,该残差阈值可以根据经验配置,如残差阈值为0.5、0.6等,对此不做限制。若该操作行为事件的残差大于残差阈值,则该操作行为事件是切分节点;若该操作行为事件的残差不大于残差阈值,则该操作行为事件不是切分节点。
步骤104,利用操作行为序列确定目标操作行为序列,目标操作行为序列是频繁序列,表示目标操作行为序列出现在多个操作行为序列。
在一个例子中,可以利用操作行为序列确定公共子序列,所述公共子序列出现在多个操作行为序列。确定公共子序列在所有操作行为序列中的出现次数;若所述出现次数大于次数阈值,则根据所述公共子序列确定目标操作行为序列。
示例性的,参见上述实施例,假设针对用户信息1得到两个操作行为序列,分别为a12-b22、c31,针对用户信息2得到一个操作行为序列,如a12-b22-d42,当然,这里只是以两个用户信息的操作行为序列为例,在实际应用中,操作行为序列的数量很多,对此不做限制。然后,将所有操作行为序列看成字符串,如一个字符串为a12b22,另一个字符串为c31,另一个字符串为a12b22d42。
然后,使用后缀数组的结构分析每一个操作行为序列,对此分析过程不再赘述。基于所有操作行为序列,可以使用最长公共前缀的方法来挖掘所有操作行为序列中的公共子序列,所述公共子序列出现在多个操作行为序列中。
例如,假设公共子序列a12-b22出现在10个操作行为序列中,则公共子序列a12-b22在所有操作行为序列中的出现次数可以为10。假设公共子序列a13-b22出现在8个操作行为序列中,则公共子序列a13-b22在所有操作行为序列中的出现次数可以为8。假设公共子序列a11-b21-c33出现在6个操作行为序列中,则公共子序列a11-b21-c33在所有操作行为序列中的出现次数可以为6。
以此类推,可以基于所有操作行为序列挖掘出多个公共子序列,且能够获知每个公共子序列在所有操作行为序列中的出现次数,对此不再赘述。
进一步的,基于每个公共子序列在所有操作行为序列中的出现次数,可以从所有公共子序列中确定出目标操作行为序列。例如,针对每个公共子序列,若该公共子序列在所有操作行为序列中的出现次数大于次数阈值,则确定该公共子序列为目标操作行为序列。或者,若该公共子序列在所有操作行为序列中的出现次数不大于次数阈值,则确定该公共子序列不为目标操作行为序列。
在一个例子中,次数阈值可以根据经验配置,且次数阈值与公共子序列中的操作行为事件的数量无关。例如,次数阈值可以为8,当然,数值8只是一个示例,对此次数阈值不做限制,可以根据经验任意配置。公共子序列a12-b22在所有操作行为序列中的出现次数为10(大于次数阈值),因此,公共子序列a12-b22为目标操作行为序列。公共子序列a13-b22在所有操作行为序列中的出现次数为8(不大于次数阈值),因此,公共子序列a13-b22不为目标操作行为序列。公共子序列a11-b21-c33在所有操作行为序列中的出现次数为6(不大于次数阈值),因此,公共子序列a11-b21-c33不为目标操作行为序列。
在另一个例子中,次数阈值与公共子序列中的操作行为事件的数量有关。具体的,根据公共子序列中的操作行为事件的数量,确定所述公共子序列对应的次数阈值;其中,若操作行为事件的数量越大时,则次数阈值越小。
例如,操作行为事件的数量为2时,则次数阈值可以为8,当然,数值8只是一个示例,对此次数阈值不做限制,可以根据经验任意配置。操作行为事件的数量为3时,则次数阈值可以为5,当然,数值5只是一个示例,对此次数阈值不做限制,可以根据经验任意配置。操作行为事件的数量为4时,则次数阈值可以为3,当然,数值3只是一个示例,对此次数阈值不做限制,可以根据经验任意配置。以此类推,操作行为事件的数量越大时,则次数阈值越小。
例如,公共子序列a12-b22中的操作行为事件的数量为2,因此,次数阈值可以为8,也就是说,公共子序列a12-b22在所有操作行为序列中的出现次数为10(大于次数阈值),因此,公共子序列a12-b22为目标操作行为序列。
公共子序列a13-b22中的操作行为事件的数量为2,因此,次数阈值可以为8,也就是说,公共子序列a13-b22在所有操作行为序列中的出现次数为8(不大于次数阈值),因此,公共子序列a13-b22不为目标操作行为序列。
公共子序列a11-b21-c33中的操作行为事件的数量为3,因此,次数阈值可以为5,也就是说,公共子序列a11-b21-c33在所有操作行为序列中的出现次数为6(大于次数阈值),因此,公共子序列a11-b21-c33为目标操作行为序列。
综上所述,可以利用多个操作行为序列确定目标操作行为序列,目标操作行为序列是频繁序列,表示目标操作行为序列出现在多个操作行为序列,这样,通过目标操作行为序列可以获知哪些操作行为事件被频繁执行,且消耗的资源大小,继而对资源进行有效控制,保证业务的正常运行。
在上述实施例中,日志记录可以包括但不限于负载日志记录,如负载测试日志记录、历史负载日志记录、模拟负载日志记录、实时负载日志记录等,对此日志记录类型不做限制,可以是任意类型的日志记录。当日志记录为负载日志记录时,基于目标操作行为序列,获知哪些操作行为事件被频繁执行,从而预留资源,保证所有用户都能够正常访问服务器,避免服务器出现故障。
在一个例子中,上述执行顺序只是为了方便描述给出的一个示例,在实际应用中,还可以改变步骤之间的执行顺序,对此执行顺序不做限制。而且,在其它实施例中,并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其它实施例中可能被分解为多个步骤进行描述;本说明书中所描述的多个步骤,在其它实施例也可能被合并为单个步骤进行描述。
基于上述技术方案,本申请实施例中,能够快速有效地提取日志记录中有价值的信息,如确定目标操作行为序列,目标操作行为序列是被大量用户频繁执行的操作行为序列。目标操作行为序列包括操作行为事件和操作行为事件的消耗资源值(如消耗的存储空间大小、cpu大小、内存大小等),这样,通过目标操作行为序列可以获知哪些操作行为事件被频繁执行,且消耗的资源大小,继而对资源进行有效控制,保证业务的正常运行。在分析同一操作行为事件对应的消耗资源值时,可以将同一操作行为事件的消耗资源值进行分组,从而大大减少操作行为序列的数量,提高确定目标操作行为序列时的处理效率。
综上所述,本申请实施例提出一种高效地挖掘目标操作行为序列(即用户频繁序列)的方法。首先,从日志记录中提取上下文信息,该上下文信息可以包括用户信息、操作行为事件、消耗资源值、时间戳和操作时间值等。
其次,考虑到操作行为事件的消耗资源值(如字节数)的分布比较广,因此,可以使用一维聚类的方法(如jenksnaturalbreaks),将所有用户同一种操作行为事件的消耗资源值进行分组,最后将属于同一个组的消耗资源值确定为同样的类别,属于同一个类别组。显然,由于操作行为事件的消耗资源值分布在0至无穷大,因此,通过划分类别组,可以显著减少操作行为事件的数量。
再次,将操作行为事件和消耗资源值所属类别组的组标识连接起来,作为一个完整事件(即操作行为参数),将完整事件替换成字符和数字,如a1这个完整事件中,a代表操作行为事件,1代表消耗资源值所属类别组的组标识。
再次,考虑到用户的所有操作行为事件中存在有滞留的操作行为事件,因此,可以利用操作时间值和消耗资源值,将用户的初始序列切分为多个子序列,例如,可以使用线性回归的方法切分所有操作行为事件中存在滞留的操作行为事件,即在存在滞留的操作行为事件处将初始序列切分为多个子序列。在线性回归模型中,操作行为事件的消耗资源值作为自变量,操作行为事件的操作时间值作为自变量,在该线性回归模型中,如果某一个操作行为事件的消耗资源值和操作时间值的残差大于残差阈值,则该操作行为事件为被切分序列的事件。
最后,将每个用户的所有子序列理解成字符串,使用后缀数组的结构分析每一个子序列,使用最长公共前缀的方法来挖掘所有子序列的公共子序列,基于公共子序列的出现次数对所有公共子序列进行优先级排序,并将出现次数大于次数阈值的公共子序列作为目标操作行为序列,即挖掘出频繁序列。
基于上述技术方案,在分析同一种操作行为事件的消耗资源值时,可以使用一维聚类的方法将同一种操作行为事件的消耗资源值进行分组,即对消耗资源值进行聚类处理,这样可以大大减少消耗资源值的分布,进而提高处理效率。在用户的操作过程中,操作行为事件的消耗资源值越大时,操作行为事件的操作时间值越长,因此,可以根据消耗资源值和操作时间值建立线性回归模型,并使用该线性回归模型对用户的初始序列进行切分,得到多个子序列,继而可以更加准确地识别目标操作行为序列。通过使用后缀数组和最长公共前缀挖掘目标操作行为序列,可以高效而形象地展示出目标操作行为序列。
为了分析日志记录中有价值的信息,本申请实施例中提出一种日志记录处理方法,参见图2所示,为日志记录处理方法的流程示意图,该方法可以包括:
步骤201,获取日志记录,所述日志记录包括但不限于以下之一或者任意组合:用户信息、操作行为事件、消耗资源值。例如,日志记录可以包括用户信息、操作行为事件、消耗资源值、时间戳和操作时间值。
步骤202,根据用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件确定所述用户的操作行为序列。
在一个例子中,该操作行为序列可以包括属于所述用户的所有日志记录的操作行为事件;在另一个例子中,该操作行为序列可以包括属于所述用户的所有日志记录的操作行为事件和消耗资源值;在另一个例子中,该操作行为序列可以包括属于所述用户的所有日志记录的操作行为事件、各日志记录所属类别组的组信息,其中,类别组是根据消耗资源值和操作行为事件确定的。
在一个例子中,确定操作行为序列的过程,可以包括但不限于:
方式一、基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件确定初始序列,将初始序列确定为所述用户的操作行为序列。
方式二、基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件确定初始序列。根据操作时间值和消耗资源值将该初始序列切分成至少一个子序列,并将至少一个子序列确定为所述用户的操作行为序列。
其中,根据操作时间值和消耗资源值将该初始序列切分成至少一个子序列,可以包括:针对该初始序列中的每个操作行为事件,根据该操作行为事件的操作时间值和消耗资源值,确定该操作行为事件是否为切分节点;若是,则将该初始序列中位于该操作行为事件之前的至少一个操作行为事件切分成子序列。
在一个例子中,根据操作行为事件的操作时间值和消耗资源值,确定操作行为事件是否为切分节点,可以包括但不限于:根据操作时间值和消耗资源值,确定操作行为事件的残差;若该残差大于残差阈值,则确定操作行为事件是切分节点;若该残差不大于残差阈值,则确定操作行为事件不是切分节点。
示例性的,可以将用户的初始序列切分为至少一个子序列,若初始序列的所有操作行为事件均不是切分节点,则将初始序列切分为一个子序列,若初始序列的所有操作行为事件中存在切分节点,则将初始序列切分为多个子序列。
为了将初始序列切分为多个子序列,则需要从初始序列的所有操作行为事件中,获知能够作为切分节点的操作行为事件。而能够作为切分节点的操作行为事件,是所有操作行为事件中有滞留的操作行为事件。例如,用户在执行登录操作时,若滞留时间较长,则这个登录操作对应的操作行为事件,就是有滞留的操作行为事件,即该操作行为事件是能够作为切分节点的操作行为事件。
在一个例子中,针对每个操作行为事件,可以根据该操作行为事件的操作时间值和消耗资源值,确定该操作行为事件是否为有滞留的操作行为事件。例如,可以根据该操作行为事件的操作时间值和消耗资源值,确定该操作行为事件的残差;若该残差大于残差阈值,则确定该操作行为事件为有滞留的操作行为事件,即该操作行为事件是切分节点;若该残差不大于残差阈值,则确定该操作行为事件不为有滞留的操作行为事件,即该操作行为事件不是切分节点。
示例性的,可以使用线性回归的方法,确定操作行为事件是否为有滞留的操作行为事件。例如,在用户操作过程中,消耗资源值越大,则操作的时间越长,因此,可以根据操作时间值和消耗资源值来建立线性回归模型,该线性回归模型用于记录操作时间值、消耗资源值和残差的对应关系。在线性回归模型中,操作行为事件的操作时间值作为自变量,操作行为事件的消耗资源值作为自变量,对此线性回归模型的构建过程不做限制。由于操作时间值和消耗资源值均作为自变量,因此,针对每个操作行为事件,可以根据该操作行为事件的操作时间值和消耗资源值查询线性回归模型,得到该操作行为事件的残差。
示例性的,基于线性回归模型,若操作时间值较大,消耗资源值较小,则残差比较大,若操作时间值较小,消耗资源值较大,则残差比较小。当然,这里只是示例,线性回归模型可以任意选择,只要线性回归模型用于记录操作时间值、消耗资源值和残差的对应关系即可,这样,基于线性回归模型,可以根据操作行为事件的操作时间值和消耗资源值,确定该操作行为事件的残差。
步骤203,利用操作行为序列确定目标操作行为序列,目标操作行为序列是频繁序列,表示目标操作行为序列出现在多个用户的操作行为序列。
在一个例子中,可以利用操作行为序列确定公共子序列,所述公共子序列出现在多个操作行为序列。确定公共子序列在所有操作行为序列中的出现次数;若所述出现次数大于次数阈值,则根据所述公共子序列确定目标操作行为序列。
具体的,基于每个公共子序列在所有操作行为序列中的出现次数,可以从所有公共子序列中确定出目标操作行为序列。例如,针对每个公共子序列,若该公共子序列在所有操作行为序列中的出现次数大于次数阈值,则确定该公共子序列为目标操作行为序列。或者,若该公共子序列在所有操作行为序列中的出现次数不大于次数阈值,则确定该公共子序列不为目标操作行为序列。
在一个例子中,次数阈值可以根据经验配置,且次数阈值与公共子序列中的操作行为事件的数量无关。或者,次数阈值与公共子序列中的操作行为事件的数量有关。根据公共子序列中的操作行为事件的数量,确定所述公共子序列对应的次数阈值;其中,若操作行为事件的数量越大时,则次数阈值越小。
在上述实施例中,日志记录可以包括但不限于负载日志记录,如负载测试日志记录、历史负载日志记录、模拟负载日志记录、实时负载日志记录等,对此日志记录类型不做限制,可以是任意类型的日志记录。
在一个例子中,上述执行顺序只是为了方便描述给出的一个示例,在实际应用中,还可以改变步骤之间的执行顺序,对此执行顺序不做限制。而且,在其它实施例中,并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其它实施例中可能被分解为多个步骤进行描述;本说明书中所描述的多个步骤,在其它实施例也可能被合并为单个步骤进行描述。
基于上述技术方案,本申请实施例中,能够快速有效地提取日志记录中有价值的信息,如确定目标操作行为序列,目标操作行为序列是被大量用户频繁执行的操作行为序列。目标操作行为序列包括操作行为事件和操作行为事件的消耗资源值(如消耗的存储空间大小、cpu大小、内存大小等),这样,通过目标操作行为序列可以获知哪些操作行为事件被频繁执行,且消耗的资源大小,继而对资源进行有效控制,保证业务的正常运行。
基于与上述方法同样的申请构思,本申请实施例还提供一种日志记录处理装置,如图3所示,为所述日志记录处理装置的结构图,所述装置包括:
获取模块31,用于获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
确定模块32,用于根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;利用所述操作行为序列确定目标操作行为序列。
所述确定模块32根据消耗资源值和操作行为事件确定所述日志记录所属的类别组时具体用于:确定所述操作行为事件对应的所有资源值区间;从所述操作行为事件对应的所有资源值区间中确定所述消耗资源值所位于的资源值区间;确定与所述资源值区间对应的类别组;将所述日志记录划分到所述类别组。
所述确定模块32还用于:针对每种操作行为事件创建至少一个类别组;
其中,不同类别组对应不同的资源值区间。
所述日志记录还包括时间戳和操作时间值,所述确定模块32根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列时具体用于:基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列;将所述初始序列确定为所述用户的操作行为序列;或者,基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列;根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列,并将所述至少一个子序列确定为所述用户的操作行为序列。
所述确定模块32根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列时具体用于:针对所述初始序列中的操作行为事件,根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点;若是,则将所述初始序列中位于所述操作行为事件之前的至少一个操作行为事件和类别组切分成子序列。
所述确定模块32根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点时具体用于:
根据所述操作时间值和所述消耗资源值,确定所述操作行为事件的残差;
若所述残差大于残差阈值,则确定所述操作行为事件是切分节点;
若所述残差不大于残差阈值,确定所述操作行为事件不是切分节点。
所述确定模块32利用所述操作行为序列确定目标操作行为序列时具体用于:利用所述操作行为序列确定公共子序列,所述公共子序列出现在多个操作行为序列中;确定所述公共子序列在所有操作行为序列中的出现次数;若所述出现次数大于次数阈值,则根据所述公共子序列确定目标操作行为序列。
所述确定模块32根据所述公共子序列中的操作行为事件的数量,确定所述公共子序列对应的次数阈值;若操作行为事件的数量越大时,则次数阈值越小。
基于与上述方法同样的申请构思,本申请实施例还提供一种日志记录处理设备,包括:处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令;所述计算机指令被执行时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
参见图4所示,为本申请实施例中提出的日志记录处理设备的结构图,所述日志记录处理设备40可以包括:处理器41,网络接口42,总线43,存储器44。存储器44可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据等等。例如,存储器44可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等)。
参见图5所示,为本申请实施例中提出的日志记录处理系统的结构图,日志记录处理系统包括多个客户端51、数据库52和日志记录处理装置53。用户通过客户端51访问日志记录处理设备,针对用户的操作过程,日志记录处理设备可以产生日志记录,并将日志记录存储到数据库52中。日志记录处理装置53从数据库52中获取多个日志记录,并根据多个日志记录确定目标操作行为序列。
以下对日志记录处理装置53的结构进行说明。
第一获取模块531,用于从数据库52中获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值、时间戳和操作时间值。
第一确定模块532,用于根据消耗资源值和操作行为事件确定所述日志记录所属的类别组。
第二确定模块533,用于根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列。例如,基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列;根据操作时间值和消耗资源值将初始序列切分成至少一个子序列,将至少一个子序列确定为所述用户的操作行为序列。
第三确定模块534,用于利用所述操作行为序列确定目标操作行为序列。至此,成功获取到目标操作行为序列,并输出目标操作行为序列。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
1.一种日志记录处理方法,其特征在于,所述方法包括:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
根据所述操作行为序列确定目标操作行为序列。
2.根据权利要求1所述的方法,其特征在于,所述根据消耗资源值和操作行为事件确定所述日志记录所属的类别组,包括:
确定所述操作行为事件对应的所有资源值区间;从所述操作行为事件对应的所有资源值区间中确定所述消耗资源值所位于的资源值区间;
确定与所述资源值区间对应的类别组;
将所述日志记录划分到所述类别组中。
3.根据权利要求2所述的方法,其特征在于,所述根据消耗资源值和操作行为事件确定所述日志记录所属的类别组之前,所述方法还包括:
针对每种操作行为事件创建至少一个类别组;
其中,不同类别组对应不同的资源值区间。
4.根据权利要求1所述的方法,其特征在于,
所述日志记录还包括时间戳和操作时间值,所述根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列,包括:
基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列;将所述初始序列确定为所述用户的操作行为序列;或者,
基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件和类别组确定初始序列;根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列,并将所述至少一个子序列确定为所述用户的操作行为序列。
5.根据权利要求4所述的方法,其特征在于,所述根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列,包括:
针对所述初始序列中的操作行为事件,根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点;
若是,则将所述初始序列中位于所述操作行为事件之前的至少一个操作行为事件和类别组切分成子序列。
6.根据权利要求5所述的方法,其特征在于,根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点,包括:
根据所述操作时间值和所述消耗资源值,确定所述操作行为事件的残差;
若所述残差大于残差阈值,则确定所述操作行为事件是切分节点;
若所述残差不大于残差阈值,确定所述操作行为事件不是切分节点。
7.根据权利要求1所述的方法,其特征在于,
所述利用所述操作行为序列确定目标操作行为序列,包括:
利用所述操作行为序列确定公共子序列,所述公共子序列出现在多个操作行为序列中;确定所述公共子序列在所有操作行为序列中的出现次数;若所述出现次数大于次数阈值,则根据所述公共子序列确定目标操作行为序列。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
根据所述公共子序列中的操作行为事件的数量,确定所述公共子序列对应的次数阈值;其中,若操作行为事件的数量越大时,则次数阈值越小。
9.根据权利要求1-8任一所述的方法,其特征在于,
所述日志记录包括负载日志记录。
10.一种日志记录处理方法,其特征在于,所述方法包括:
获取日志记录,所述日志记录包括用户信息、操作行为事件;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
11.根据权利要求10所述的方法,其特征在于,
所述日志记录还包括时间戳、操作时间值和消耗资源值,所述根据属于同一用户的日志记录的操作行为事件确定所述用户的操作行为序列,包括:
基于时间戳的先后顺序,根据属于同一用户的日志记录的操作行为事件确定初始序列;根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列,并将所述至少一个子序列确定为所述用户的操作行为序列。
12.根据权利要求11所述的方法,其特征在于,所述根据操作时间值和消耗资源值将所述初始序列切分成至少一个子序列,包括:
针对所述初始序列中的操作行为事件,根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点;
若是,则将所述初始序列中位于所述操作行为事件之前的至少一个操作行为事件切分成子序列。
13.根据权利要求12所述的方法,其特征在于,根据所述操作行为事件对应的操作时间值和消耗资源值,确定所述操作行为事件是否为切分节点,包括:
根据所述操作时间值和所述消耗资源值,确定所述操作行为事件的残差;
若所述残差大于残差阈值,则确定所述操作行为事件是切分节点;
若所述残差不大于残差阈值,确定所述操作行为事件不是切分节点。
14.一种日志记录处理装置,其特征在于,所述装置包括:
获取模块,用于获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
确定模块,用于根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;利用所述操作行为序列确定目标操作行为序列。
15.一种日志记录处理设备,其特征在于,包括:
处理器和机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述处理器执行所述计算机指令时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
16.一种机器可读存储介质,其特征在于,所述机器可读存储介质上存储有若干计算机指令;所述计算机指令被执行时进行如下处理:
获取日志记录,所述日志记录包括用户信息、操作行为事件、消耗资源值;
根据消耗资源值和操作行为事件确定所述日志记录所属的类别组;
根据所述用户信息确定属于同一用户的日志记录,并根据属于同一用户的日志记录的操作行为事件和类别组确定所述用户的操作行为序列;
利用所述操作行为序列确定目标操作行为序列。
技术总结