CN103309794A - 一种基于数据采集与关键字挖掘的自动日志生成系统及方法 - Google Patents

一种基于数据采集与关键字挖掘的自动日志生成系统及方法 Download PDF

Info

Publication number
CN103309794A
CN103309794A CN201310132246XA CN201310132246A CN103309794A CN 103309794 A CN103309794 A CN 103309794A CN 201310132246X A CN201310132246X A CN 201310132246XA CN 201310132246 A CN201310132246 A CN 201310132246A CN 103309794 A CN103309794 A CN 103309794A
Authority
CN
China
Prior art keywords
data
module
mouse
keyboard
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.)
Pending
Application number
CN201310132246XA
Other languages
English (en)
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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN201310132246XA priority Critical patent/CN103309794A/zh
Publication of CN103309794A publication Critical patent/CN103309794A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

一种基于数据采集与关键字挖掘的自动日志生成系统及方法,包括:数据采集部分、数据分析部分、数据展示部分;所述数据采集部分包括键盘监听模块、剪贴板监听模块、鼠标监听模块、进程监听模块和数据存储模块;所述数据分析部分包括进程数据分析模块、鼠标键盘分析模块;数据展示部分包括数据即时展示模块和定时工作日志推送模块。本发明具有良好的用户体验,直观地展现系统数据,并且定时向用户推送工作日志和优化建议,能够为用户提供良好的工作管理协助,提高用户工作效率,适宜处于工作环境下的科研以及学习的人群。

Description

一种基于数据采集与关键字挖掘的自动日志生成系统及方法
技术领域
本发明涉及一种基于数据采集与关键字挖掘的自动日志生成系统及方法,属于计算机技术领域。
背景技术
个人计算机一词源自于1981年IBM的第一部桌上型计算机型号PC,在此之前有Apple II的能独立运行、完成特定功能的个人计算机。个人计算机不需要共享其他计算机的处理、磁盘和打印机等资源也可以独立工作。今天,个人计算机一词则泛指所有的个人计算机、如桌上型计算机、笔记型计算机、或是兼容于IBM系统的个人计算机等。基于个人计算机的功能面向使用计算机进行工作、学习、娱乐、沟通的用户的应用软件种类十分繁多,功能也十分强大。
长时间使用个人计算机工作学习的人都会面临时间分配的问题,集娱乐与学习工作功能于一体的计算机能帮助提高效率,同时也有可能导致对时间分配不合理,花费过多的时间在娱乐上导致工作学习的时间被压缩,特别是对于大学生,这个问题更加严重。因此需要一个对时间进行管理的个人计算机应用软件。
当前计算机所提供的工作日志一般有Linux系统下的工作日志,该日志记录了计算机所有的操作详情。但是使用起来过于复杂,并且数据也太过庞大,所以这并不适合普通用户。Windows系统在运行的过程中也会留下许多痕迹,记录计算机工作情况,并且以最直观和的图表等形式展现给用户是希望做到的。如何对数据的分析和提炼、如何展示才能有更好的用户体验,这是值得去研究的部分。
数据挖掘,又译为资料探勘、数据采矿。它是数据库知识发现中的一个步骤。数据挖掘一般是指从大量的数据中自动搜索隐藏于其中的有着特殊关系性的信息的过程。数据挖掘通常与计算机科学有关,并通过统计、在线分析处理、情报检索、机器学习、专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。通过对个人计算机中的信息进行采集,并运用数据挖掘领域中的算法将有用的信息提取出来并加以分析,产生的分析结果对用户的使用会有很大帮助。
现有技术之中,结合键盘鼠标活动状态的数据加以推断分析进程类型的技术少有开发,由于判断精度是技术的难点之一,对计算机工作领域的了解的局限性也是实验设计局限的原因。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种基于数据采集与关键字挖掘的自动日志生成系统,具有良好的用户体验,直观地展现系统数据,并且定时向用户推送工作日志和优化建议,能够为用户提供良好的工作管理协助,提高用户工作效率,适宜处于工作环境下的科研以及学习的人群。
本发明技术解决方案:一种基于数据采集与关键字挖掘的自动日志生成系统,其特征在于包括:数据采集部分、数据分析部分、数据展示部分;所述数据采集部分包括键盘监听模块、剪贴板监听模块、鼠标监听模块、进程监听模块和数据存储模块;所述数据分析部分包括进程数据分析模块、鼠标键盘分析模块;数据展示部分包括数据即时展示模块和定时工作日志推送模块;
键盘监听模块,实现监听用户使用键盘的信息;用户按下的每个键位都会监听并记录下来,监听得到的信息将会以字符串的形式记录下来,此信息将会送往数据存储模块;
剪贴板监听模块,实现监听用户使用Windows操作系统剪贴板的情况;当剪贴板中的数据(主要是文字数据)发生变化时,将会对变化后的数据记录下来,数据将会送往数据存储模块;
鼠标监听模块,实现对鼠标的使用信息监听并记录;记录鼠标的点击频率,每间隔一段时间将会对鼠标的点击次数进行一次统计,以文字的形式记录下来,记录的数据将会送往数据存储模块;
进程监听模块,实现对Windows操作系统进程的使用情况进行记录,包括进程号、进程名、占内存大小,起始时间、占CPU百分比;过一段时间(如5s)进行刷新,将记录数据送至数据存储模块;
数据存储模块,实现数据存储功能,以数据库的形式展示;存储收集到的系统数据,对这些数据进行一些基础的管理以及保存的工作,数据存储模块中的数据将会在需要的时候被送到数据分析部分以及数据展示部分中的各模块;
进程数据分析模块,对采集并存储到数据存储模块的进程信息进行数据挖掘分析;将采集到的进程名与本自动日志生成系统预存在进程分析模块中的进程白名单相比对,得到第一级状态分类判断结果,然后状态分类则进入更细化高级的分类判断之中:包括所占内存与标准活动内存相比较,线程数与标准线程数相比较,优先级判断活动类型,启动次数则在数据挖掘环节作为阶段活动统计信息呈现出来;
鼠标键盘数据分析模块,对采集并存储到数据库的鼠标、键盘、剪贴板信息进行数据挖掘分析,针对位置进程主窗口句柄的情况,直接从键盘活动信息和鼠标使用频率上,比对不同类型进程的标准数据,将数据送至数据即时展示模块。标准数据将会通过样本数据的特征提取。为此设计了样本活动进程的活动信息统计:
在系统基本进程之外,单独运行常用基本程序。其中常用基本程序的运行状态也根据使用强度进行不同程度的归类。在系统基本进程之外,根据计算机使用目的分类测试采集。其中包括,玩电子游戏、欣赏影视作品、浏览社交网络、写论文、查阅资料、编程、测试程序这几类。由于每个活动目的都将会运行一到多个进程不等,因此这样的分类将会为采集活动目的的数据特征提供便捷。在系统基本进程之外,在单位时间内无限定自由使用计算机,采集到的数据特征,将作为混乱样本,用于为最后数学模型的误差计算提供支撑。
具体实验设计表:
Figure BDA00003058420700031
通过分析上述类型的进程活动信息,归纳出具有特征的标准数据,实际应用到判断体系之中,完成数据分析的基本框架。最后再通过反复测试基本框架的误差局部调整判断条件,已达到将误差降低至不会影响到用户体验。因此最后会将邀请10名志愿者进行为期一周‐四周不等的体验测试;
数据即时展示模块,实现将进程数据分析模块和鼠标键盘分析模块得出的分析结果利用图表方式直接呈现给用户;将进程信息做成表格,将键盘、鼠标的相关记录做成图表,剪贴板得出的高频词汇(即出现频率>10次,若均未超过10次则选取次数最高的5个词汇)进行输出,定时推送的日志信息以.txt格式保存至本地。
所述键盘监听模块实现过程:
(1)建立一个键盘监听适配器KeyAdapter,并且定义一个布尔型的变量flag来记录shift键是否被按下,如果被按下,flag的值为true,否则为false;初始时flag的值为false;
(2)对键盘进行监听,如果键盘上的键被按下,KeyAdapter获得一个相应的键盘事件KeyEvent e,通过e的属性keycode可以获得当前按下的键盘键位所对应的一个整型的值,记录在整型变量key中;
(3)对key的值进行解析,如果key的值和shift键对应的keycode值相等,那么将flag的值置为true表明shift键被按下;对于key的其他值:只有一种可能性,即是否按下shift键不会改变计算机收到的信号,将相应的键的名称记录下来;有两种可能性的键位,查看当前shift键是否被按下,再做出相应的判断,获得当前被按下的键;
(4)如果键盘上的键被松开,则获得相应的键盘事件e1,如果松开的键对应的一个keycode整型值等于shift键对应的值,那么将flag的值置为false表明shift键被松开;
(5)将获得的对应信息存储到数据存储模块中;
(6)重复循环(2)到(5)的步骤。
所述剪贴板监听模块实现过程:
(1)获得系统剪贴板;
(2)定义一个ClipboardOwner对象,用来监听剪贴板的所有者是否发生变化,间接的监听剪贴板的内容是否发生变化;
(3)如果发生变化,将当前剪贴板中的字符串内容存储到数据库中;
(4)重复(2)、(3)两个步骤,监听剪贴板。
所述鼠标监听模块的实现过程:
(1)添加一个鼠标监听器MouseAdapter,监听鼠标事件MouseEvent;
(2)新建一个线程,以十秒为单位,在十秒之内记录鼠标被点击的次数,以此作为鼠标的点击频率;
(3)将鼠标的点击频率存入数据库中;
(4)重复(2)、(3)两个步骤,监听鼠标的点击频率。
所述进程监听模块实现过程:
(1)建立一个存放进程编号的数组Pids[];
(2)利用Sigar.getProcList(),获得当前所有进程号,存入数组;
(3)利用进程号数组Pids和Sigar中的getInfo获得进程相关信息;
(4)将相关信息按照进程名为主码存入数据库中;
(5)每隔5s重复步骤(2)~(4)。
所述数据分析模块实现过程:
(1)数据采集模块得到的数据进入数据分析模块之后,根据数据类型的不同,分别进入进程数据分析模块和键盘鼠标数据分析模块;
(2)进程数据分析模块的优先级高于键盘鼠标数据分析模块,只要在进程数据分析模块判断失败的条件下才会启动键盘鼠标数据分析模块;
(3)判断成功之后,即计算得到的匹配误差度小于预定值之后会为目标进程打上标签以表明其种类;
(4)标签按照范围包括了第一级大类标签和第二级更具体的标签tag,其中第一级标签包含了工作,娱乐两类;第二级的标签则将会细致地分为文档、编程等工作类任务,或者社交网络、影视欣赏、电玩娱乐类任务;
(5)如果判断失败,系统将会将数据特征匹配误差度最低的前三组结果输出到用户自定义模块中,以达到提出合理建议的友好人机交互体验。用户自定义属于数据展示模块的功能。
一种基于数据采集与关键字挖掘的自动日志生成方法,实现步骤如下:
(1)用户启动系统,鼠标监听模块、键盘监听模块、剪贴板监听模块、进程监听模块同时启动;
(2)启动系统后(1)中提到的五个模块分别进行系统数据的收集,A.鼠标监听模块负责监听用户对于鼠标的操作,记录鼠标的点击频率,每间隔一段时间将会对鼠标的点击次数进行一次统计,以文字的形式记录下来,记录的数据将会送往数据存储模块;B.键盘监听模块负责监听用户对键盘的操作,按下的每个键位都会监听并记录下来,监听得到的信息将会以字符串的形式记录下来,此信息将会送往数据存储模块;C.剪贴板监听模块负责对用户剪贴板的使用进行监听,当剪贴板中的数据(主要是文字数据)发生变化时,将会对变化后的数据记录下来,数据将会送往数据存储模块;D.进程监听模块监听系统进程的信息,主要监听进程占CPU百分比以及起始时间和结束时间,按照进程名称记录下来,送往数据存储模块;
(3)判断用户使用进程(主要为应用程序)所占CPU百分比以及鼠标、键盘点击频率,如果符合数据即时展示模块所要求的条件,则弹出即时展示窗口;
(4)判断当前系统时间,如果符合用户设定的弹出工作日志时间,则按照定时工作日志推送模块所要求生成工作日志,并且弹出工作日志窗口。
本发明与现有技术相比的优点在于:
(1)相比于使用目的类型相似的流行软件而言,本发明基本删掉了用户完全自定义、自管理进程信息的过程,从使用的角度而言,提高了人机交互的体验。而本发明的初衷也是出于让机器可以更懂用户的角度出发,基于这个方向,数据分析环节的技术的发展前景就潜力巨大的,而它的进步空间也是难以衡量的。在数据采集模块,另外又增加了对鼠标和键盘使用情况的监听,通过分析键盘和鼠标的使用情况可以增加判断进程的精准度,然而同时增加的误判率也是需要着重解决的问题之一;
(2)本发明提出了对应用程序进行分类,将电脑里运行的应用程序分为娱乐和工作。并且不仅仅通过普通的关键字提取,而是同时通过对鼠标、键盘的利用进行分析,配合进程主窗口句柄的提取确定应用程序类型。并且提供了用户再判断环节,在推送日志显示应用程序分类时用户可进行类型的修改和细化。系统将记录修改和细化的内容,为下一次应用程序的判断提供基础;
(3)本发明具有良好的用户体验,直观地展现系统数据,并且定时向用户推送工作日志和优化建议,能够为用户提供良好的工作管理协助,提高用户工作效率。本系统适宜处于工作环境下的科研以及学习的人群。
附图说明
图1为本发明的组成框图;
图2为本发明的进程监听模块的实现流程图;
图3为本发明的键盘监听模块的实现流程图;
图4为本发明的剪贴板监听模块实现流程图;
图5为本发明的鼠标监听模块实现流程图;
图6为本发明的数据存储模块结构框图;
图7为本发明的数据分析模块实现流程图;
图8为本发明的数据即时展示模块实现流程图;
图9为本发明的定时工作日志推送模块实现流程图。
具体实施方式
如图1所示,本发明分为九个模块,分别是鼠标监听模块、键盘监听模块、剪贴板监听模块、进程监听模块、进程数据分析模块、鼠标键盘等数据分析模块、数据即时展示模块、定时工作日志推送模块、数据存储模块。
如图1所示,本发明总体实现过程如下:
(1)用户启动系统,鼠标监听模块、键盘监听模块、剪贴板监听模块、进程监听模块同时启动。
(2)启动系统后(1)中提到的五个模块分别进行系统数据的收集。A.鼠标监听模块负责监听用户对于鼠标的操作,记录鼠标的点击频率,每间隔一段时间将会对鼠标的点击次数进行一次统计,以文字的形式记录下来,记录的数据将会送往数据存储模块;B.键盘监听模块负责监听用户对键盘的操作,按下的每个键位都会监听并记录下来,监听得到的信息将会以字符串的形式记录下来,此信息将会送往数据存储模块;C.剪贴板监听模块负责对用户剪贴板的使用进行监听,当剪贴板中的数据(主要是文字数据)发生变化时,将会对变化后的数据记录下来,数据将会送往数据存储模块;D.进程监听模块监听系统进程的信息,主要监听进程占CPU百分比以及起始时间和结束时间,按照进程名称记录下来,送往数据存储模块;
(3)判断用户使用进程(主要为应用程序)所占CPU百分比以及鼠标、键盘点击频率,如果符合数据即时展示模块所要求的条件,则弹出即时展示窗口;
(4)判断当前系统时间,如果符合用户设定的弹出工作日志时间,则按照定时工作日志推送模块所要求生成工作日志,并且弹出工作日志窗口。
如图2所示,本发明中进程监听模块使用已经封装好的的sigar.jar包中的API对系统进程信息进行监听,首先获得当前所有正在运行的进程号,然后根据进程号获得进程相关信息;并且将信息按照进程名为主码存入数据库中,每5s刷新一次,重复获得进程号,进行循环。
具体实现方式如下:
(1)建立一个存放进程编号的数组Pids[];
(2)利用Sigar.getProcList(),获得当前所有进程号,存入数组;
(3)利用进程号数组Pids和Sigar中的getInfo获得进程相关信息;
(4)将相关信息按照进程名为主码存入数据库中;
(5)每隔5s重复步骤(2)~(4)。
如图3所示,本发明中键盘监听模块中,Java中包含这样的监听器可以直接监听键盘输入,并且以键盘事件keyevents的形式返回一个整型数。可以根据输入的这个整型数还判断键盘上的哪个键被按下或者被松开。由于不同的键盘配置是不一样的,所以特殊的键不予考虑,只考虑比较常见的按键组合。同时需要对shift键进行监听,如果shift键被按下,那么被按下的键则会不同。将键盘输入统一记录到一个文档中,并且存入数据库。同时需要记录键盘敲击的频率。
具体实现方式如下:
(1)建立一个键盘监听适配器KeyAdapter,并且定义一个布尔型的变量flag来记录shift键是否被按下,如果被按下,flag的值为true,否则为false;初始时flag的值为false;
(2)对键盘进行监听,如果键盘上的键被按下,KeyAdapter获得一个相应的键盘事件KeyEvent e,通过e的属性keycode可以获得当前按下的键盘键位所对应的一个整型的值,记录在整型变量key中;
(3)对key的值进行解析,如果key的值和shift键对应的keycode值相等,那么将flag的值置为true表明shift键被按下;对于key的其他值:只有一种可能性,即是否按下shift键不会改变计算机收到的信号(不考虑字母的大小写),将相应的键的名称记录下来;有两种可能性的键位,查看当前shift键是否被按下,再做出相应的判断,获得当前被按下的键;
(4)如果键盘上的键被松开,那么获得相应的键盘事件e1,如果松开的键对应的一个keycode整型值等于shift键对应的值,那么将flag的值置为false表明shift;键被松开;
(5)将获得的对应信息存储到数据存储模块中;
(6)重复循环(2)到(5)的步骤。
如图4所示,本发明中剪贴板监听模块使用java语言中对系统剪贴板的监听以及调用,Java中包含接口可以直接获得当前系统的剪切板,并且能够直接对剪贴板中的内容进行查看和操作。初始时剪贴板中内容为空,通过对剪贴板的监听,选择是否记录剪贴板中的内容,如果剪贴板中的内容发生了变化,那么将当前剪贴板中的内容记录到数据库中去,对于剪贴板的监听部分,通过ClipboardOwner是否发生变化来监听剪贴板内容是否发生变化。
剪贴板监听模块具体实现方式如下:
(1)获得系统剪贴板;
(2)定义一个ClipboardOwner对象,用来监听剪贴板的所有者是否发生变化,间接的监听剪贴板的内容是否发生变化;
(3)如果发生变化,将当前剪贴板中的字符串内容存储到数据库中;
(4)重复(2)(3)两个步骤,监听剪贴板。
如图5所示,本发明中鼠标监听模块使用java中的线程可以对鼠标的频率进行监听,建立一个线程,每十秒刷新一次,记录十秒内鼠标被点击的次数,依此可以对鼠标的频率进行监听。鼠标的点击频率和使用电脑的状态是有一定关系的。鼠标点击速度快,很有可能是在玩游戏,而速度较慢时就可能是在浏览网页或者撰写文档等别的工作。
具体实现方式如下:
(1)添加一个鼠标监听器MouseAdapter,监听鼠标事件MouseEvent;
(2)新建一个线程,以十秒为单位,在十秒之内记录鼠标被点击的次数,以此作为鼠标的点击频率;
(3)将鼠标的点击频率存入数据库中;
(4)重复(2)(3)两个步骤,监听鼠标的点击频率。
如图6所示,本发明中数据存储模块具体实现方式如下:
(1)获得需要存储数据;
(2)将模块得到的数据存入数据库。
如图7所示,本发明中数据分析部分的判断流程分为如下两个环节:名单初步比对,进程状态分类。首先将采集到的进程名与系统进程白名单相比对,得到初步状态的判断。状态分类则进入更细化的分类判断之中:所占内存与标准活动内存相比较,线程数与标准线程数相比较,优先级判断活动类型,启动次数则在数据挖掘环节可以作为阶段活动统计信息呈现出来。针对位置进程主窗口句柄的情况,直接从键盘活动信息和鼠标使用频率上,比对不同类型进程的标准数据。
具体实现方式如下:
(1)数据分析部分包含了进程信息数据分析模块,键盘鼠标数据分析模块两个模块;
(2)数据采集模块得到的数据进入数据分析模块之后,根据数据类型的不同,数据分别进如进程数据分析模块和键盘鼠标数据分析模块;
(3)进程数据分析模块的优先级高于键盘鼠标数据分析模块,因此只要在进程数据分析模块判断失败的条件下才会启动键盘鼠标数据分析模块;
(4)判断成功之后(即计算得到的匹配误差度小于预定值之后),会为目标进程打上标签以表明其种类;
(5)标签按照范围包括了第一级大类标签和第二级更具体的标签tag。其中第一级标签包含了工作,娱乐两类。第二级的标签则将会细致地分为文档、编程等工作类任务,或者社交网络、影视欣赏、电玩等娱乐类任务;
(6)如果判断失败,系统将会将数据特征匹配误差度最低的前三组结果输出到用户自定义模块中,以达到提出合理建议的友好人机交互体验。用户自定义属于数据展示模块的功能。
如图8所示,本发明中数据即时展示模块通过对即时获取的系统特殊状态(如进程占用CPU百分比过大、鼠标键盘敲击频率过大等),自动弹出系统对用户使用计算机工作状态的提示。
具体实现方式如下:
(1)从数据库中读取当前用户系统状态;
(2)对数据进行分析,如发现某进程占用CPU百分比大于20%,鼠标敲击频率大于6次/s,键盘敲击相同键次数大于20次/min,则条件判断成立;
(3)若条件成立则对用户弹出相应即时数据(当前CPU占用折线图以及相应敲击频率)展示以及建议(“建议杀掉相应进程”或者“猜测用户在使用游戏,建议停止频繁的相同操作”)。若不成立则继续读取用户系统状态。
如图9所示,本发明中定时工作日志推送模块通过对系统时间的读取判断是否应该自动生成并推送工作日志。日志内容包括:A.用户当天使用时间最长的应用程序的排名;B.用户当天使用的占CPU百分比最大的应用程序;C.对使用过的应用程序的类型判断结果(可由用户选择准确或者不准确);D.用户当天工作中提到的词汇中的关键词;E..留出的笔记模式供用户填写。
具体实现方式如下:
(1)用户设定自动生成日志的时间(精确到小时);
(2)模块读取当前时间;
(3)判断是否是用户设定的时间;
(4)如果是则生成日志内容(日志内容如上述);
(5)弹出日志。
本发明未详细阐述的部分属于本领域公知技术。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (7)

1.一种基于数据采集与关键字挖掘的自动日志生成系统,其特征在于包括:数据采集部分、数据分析部分、数据展示部分;所述数据采集部分包括键盘监听模块、剪贴板监听模块、鼠标监听模块、进程监听模块和数据存储模块;所述数据分析部分包括进程数据分析模块、鼠标键盘分析模块;数据展示部分包括数据即时展示模块和定时工作日志推送模块;
键盘监听模块,实现监听用户使用键盘的信息;用户按下的每个键位都会监听并记录下来,监听得到的信息将会以字符串的形式记录下来,此信息将会送往数据存储模块;
剪贴板监听模块,实现监听用户使用Windows操作系统剪贴板的情况;当剪贴板中的数据发生变化时,将会对变化后的数据记录下来,数据将会送往数据存储模块;
鼠标监听模块,实现对鼠标的使用信息监听并记录;记录鼠标的点击频率,每间隔一段时间将会对鼠标的点击次数进行一次统计,以文字的形式记录下来,记录的数据将会送往数据存储模块;
进程监听模块,实现对Windows操作系统进程的使用情况进行记录,包括进程号、进程名、占内存大小,起始时间、占CPU百分比;过一段时间进行刷新,将记录数据送至数据存储模块;
数据存储模块,实现数据存储功能,以数据库的形式展示;存储收集到的系统数据,对这些数据进行一些基础的管理以及保存的工作,数据存储模块中的数据将会在需要的时候被送到数据分析部分以及数据展示部分中的各模块;
进程数据分析模块,对采集并存储到数据存储模块的进程信息进行数据挖掘分析;将采集到的进程名与本自动日志生成系统预存在进程分析模块中的进程白名单相比对,得到第一级状态分类判断结果,然后状态分类则进入更细化高级的分类判断之中:包括所占内存与标准活动内存相比较,线程数与标准线程数相比较,优先级判断活动类型,启动次数则在数据挖掘环节作为阶段活动统计信息呈现出来;
鼠标键盘数据分析模块,对采集并存储到数据库的鼠标、键盘、剪贴板信息进行数据挖掘分析,针对位置进程主窗口句柄的情况,直接从键盘活动信息和鼠标使用频率上,比对不同类型进程的标准数据,将数据送至数据即时展示模块;
数据即时展示模块,通过读取数据库中分析出的结果,实现将进程数据分析模块和鼠标键盘分析模块得出的分析结果利用图表方式直接呈现给用户;将进程信息做成表格,将键盘、鼠标的相关记录做成图表,剪贴板得出的高频词汇,即出现频率>10次,若均未超过10次则选取次数最高的5个词汇进行输出,定时推送的日志信息以.txt格式保存至本地。
2.根据权利要求1所述的基于数据采集与关键字挖掘的自动日志生成系统,其特征在于:所述键盘监听模块实现过程:
(1)建立一个键盘监听适配器KeyAdapter,并且定义一个布尔型的变量flag来记录shift键是否被按下,如果被按下,flag的值为true,否则为false;初始时flag的值为false;
(2)对键盘进行监听,如果键盘上的键被按下,KeyAdapter获得一个相应的键盘事件KeyEvent e,通过e的属性keycode可以获得当前按下的键盘键位所对应的一个整型的值,记录在整型变量key中;
(3)对key的值进行解析,如果key的值和shift键对应的keycode值相等,那么将flag的值置为true表明shift键被按下;对于key的其他值:只有一种可能性,即是否按下shift键不会改变计算机收到的信号,将相应的键的名称记录下来;有两种可能性的键位,查看当前shift键是否被按下,再做出相应的判断,获得当前被按下的键;
(4)如果键盘上的键被松开,则获得相应的键盘事件e1,如果松开的键对应的一个keycode整型值等于shift键对应的值,那么将flag的值置为false表明shift键被松开;
(5)将获得的对应信息存储到数据存储模块中;
(6)重复循环(2)到(5)的步骤。
3.根据权利要求1所述的基于数据采集与关键字挖掘的自动日志生成系统,其特征在于:所述剪贴板监听模块实现过程:
(1)获得系统剪贴板;
(2)定义一个ClipboardOwner对象,用来监听剪贴板的所有者是否发生变化,间接的监听剪贴板的内容是否发生变化;
(3)如果发生变化,将当前剪贴板中的字符串内容存储到数据库中;
(4)重复(2)、(3)两个步骤,监听剪贴板。
4.根据权利要求1所述的基于数据采集与关键字挖掘的自动日志生成系统,其特征在于:所述鼠标监听模块的实现过程:
(1)添加一个鼠标监听器MouseAdapter,监听鼠标事件MouseEvent;
(2)新建一个线程,以十秒为单位,在十秒之内记录鼠标被点击的次数,以此作为鼠标的点击频率;
(3)将鼠标的点击频率存入数据库中;
(4)重复(2)、(3)两个步骤,监听鼠标的点击频率。
5.根据权利要求1所述的基于数据采集与关键字挖掘的自动日志生成系统,其特征在于:所述进程监听模块实现过程:
(1)建立一个存放进程编号的数组Pids[];
(2)利用Sigar.getProcList(),获得当前所有进程号,存入数组;
(3)利用进程号数组Pids和Sigar中的getInfo获得进程相关信息;
(4)将相关信息按照进程名为主码存入数据库中;
(5)每隔5s重复步骤(2)~(4)。
6.根据权利要求1所述的基于数据采集与关键字挖掘的自动日志生成系统,其特征在于:所述数据分析模块实现过程:
(1)数据采集模块得到的数据进入数据分析模块之后,根据数据类型的不同,分别进入进程数据分析模块和键盘鼠标数据分析模块;
(2)进程数据分析模块的优先级高于键盘鼠标数据分析模块,只要在进程数据分析模块判断失败的条件下才会启动键盘鼠标数据分析模块;
(3)判断成功之后,即计算得到的匹配误差度小于预定值之后会为目标进程打上标签以表明其种类;
(4)标签按照范围包括了第一级大类标签和第二级更具体的标签tag,其中第一级标签包含了工作,娱乐两类;第二级的标签则将会细致地分为文档、编程工作类任务,或者社交网络、影视欣赏、电玩娱乐类任务;
(5)如果判断失败,系统将会将数据特征匹配误差度最低的前三组结果输出到用户自定义模块中,以达到提出合理建议的友好人机交互体验,用户自定义属于数据展示模块的功能。
7.一种基于数据采集与关键字挖掘的自动日志生成方法,其特征在于实现步骤如下:
(1)用户启动系统,鼠标监听模块、键盘监听模块、剪贴板监听模块、进程监听模块同时启动;
(2)启动系统后(1)中提到的五个模块分别进行系统数据的收集,A.鼠标监听模块负责监听用户对于鼠标的操作,记录鼠标的点击频率,每间隔一段时间将会对鼠标的点击次数进行一次统计,以文字的形式记录下来,记录的数据将会送往数据存储模块;B.键盘监听模块负责监听用户对键盘的操作,按下的每个键位都会监听并记录下来,监听得到的信息将会以字符串的形式记录下来,此信息将会送往数据存储模块;C.剪贴板监听模块负责对用户剪贴板的使用进行监听,当剪贴板中的数据发生变化时,将会对变化后的数据记录下来,数据将会送往数据存储模块;D.进程监听模块监听系统进程的信息,监听进程占CPU百分比以及起始时间和结束时间,按照进程名称记录下来,送往数据存储模块;
(3)判断用户使用进程所占CPU百分比以及鼠标、键盘点击频率,如果符合数据即时展示模块所要求的条件,则弹出即时展示窗口;
(4)判断当前系统时间,如果符合用户设定的弹出工作日志时间,则按照定时工作日志推送模块所要求生成工作日志,并且弹出工作日志窗口。
CN201310132246XA 2013-04-16 2013-04-16 一种基于数据采集与关键字挖掘的自动日志生成系统及方法 Pending CN103309794A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310132246XA CN103309794A (zh) 2013-04-16 2013-04-16 一种基于数据采集与关键字挖掘的自动日志生成系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310132246XA CN103309794A (zh) 2013-04-16 2013-04-16 一种基于数据采集与关键字挖掘的自动日志生成系统及方法

Publications (1)

Publication Number Publication Date
CN103309794A true CN103309794A (zh) 2013-09-18

Family

ID=49135041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310132246XA Pending CN103309794A (zh) 2013-04-16 2013-04-16 一种基于数据采集与关键字挖掘的自动日志生成系统及方法

Country Status (1)

Country Link
CN (1) CN103309794A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105549556A (zh) * 2015-12-17 2016-05-04 东北大学 一种用于工业过程实时监控的数据采集传输系统及方法
CN105607985A (zh) * 2015-09-29 2016-05-25 中国船舶重工集团公司第七0九研究所 基于Qt图形界面软件的操作日志记录方法及系统
CN106096410A (zh) * 2016-06-02 2016-11-09 北京金山安全软件有限公司 一种进程控制方法及用户终端
CN110488775A (zh) * 2019-07-15 2019-11-22 上海展湾信息科技有限公司 设备状态判定及产量节拍统计系统及方法
CN113590109A (zh) * 2021-07-06 2021-11-02 北京亚鸿世纪科技发展有限公司 浏览器开发环境在集成开发时高可用性的web前端工具
CN113626143A (zh) * 2021-07-15 2021-11-09 麒麟软件有限公司 一种基于用户行为监控的虚拟机调优方法
CN115454784A (zh) * 2022-11-09 2022-12-09 成都成电金盘健康数据技术有限公司 一种基于键盘鼠标活动记录的用户行为分析系统和方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019894A1 (en) * 2002-07-23 2004-01-29 Microsoft Corporation Managing a distributed computing system
CN102708040A (zh) * 2012-05-04 2012-10-03 深圳市腾邦国际票务股份有限公司 数据管理方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019894A1 (en) * 2002-07-23 2004-01-29 Microsoft Corporation Managing a distributed computing system
CN102708040A (zh) * 2012-05-04 2012-10-03 深圳市腾邦国际票务股份有限公司 数据管理方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
27814185: "电脑监控软件", 《BAIKE.BAIDU.COM_HISTORY_41379636》 *
于扬等: "计算机安全监控系统的关键技术研究", 《计算机工程》 *
钱慎一: "《Java程序设计使用教程》", 31 August 2011 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607985A (zh) * 2015-09-29 2016-05-25 中国船舶重工集团公司第七0九研究所 基于Qt图形界面软件的操作日志记录方法及系统
CN105607985B (zh) * 2015-09-29 2018-02-06 中国船舶重工集团公司第七0九研究所 基于Qt图形界面软件的操作日志记录方法及系统
CN105549556A (zh) * 2015-12-17 2016-05-04 东北大学 一种用于工业过程实时监控的数据采集传输系统及方法
CN105549556B (zh) * 2015-12-17 2018-06-26 东北大学 一种用于工业过程实时监控的数据采集传输系统及方法
CN106096410A (zh) * 2016-06-02 2016-11-09 北京金山安全软件有限公司 一种进程控制方法及用户终端
CN106096410B (zh) * 2016-06-02 2019-04-05 珠海豹趣科技有限公司 一种进程控制方法及用户终端
CN110488775A (zh) * 2019-07-15 2019-11-22 上海展湾信息科技有限公司 设备状态判定及产量节拍统计系统及方法
CN113590109A (zh) * 2021-07-06 2021-11-02 北京亚鸿世纪科技发展有限公司 浏览器开发环境在集成开发时高可用性的web前端工具
CN113626143A (zh) * 2021-07-15 2021-11-09 麒麟软件有限公司 一种基于用户行为监控的虚拟机调优方法
CN113626143B (zh) * 2021-07-15 2024-05-28 麒麟软件有限公司 一种基于用户行为监控的虚拟机调优方法
CN115454784A (zh) * 2022-11-09 2022-12-09 成都成电金盘健康数据技术有限公司 一种基于键盘鼠标活动记录的用户行为分析系统和方法

Similar Documents

Publication Publication Date Title
CN103309794A (zh) 一种基于数据采集与关键字挖掘的自动日志生成系统及方法
US20200183656A1 (en) Systems and methods for discovering automatable tasks
US10761687B2 (en) User interface that facilitates node pinning for monitoring and analysis of performance in a computing environment
US10205643B2 (en) Systems and methods for monitoring and analyzing performance in a computer system with severity-state sorting
US10469344B2 (en) Systems and methods for monitoring and analyzing performance in a computer system with state distribution ring
US10515469B2 (en) Proactive monitoring tree providing pinned performance information associated with a selected node
CN100476819C (zh) 一种基于Web的数据挖掘系统及其控制方法
US6963826B2 (en) Performance optimizer system and method
CN102915335B (zh) 基于用户操作记录和资源内容的信息关联方法
CN103294815A (zh) 基于关键字分类并有多种呈现方式的搜索引擎装置与方法
CN111881224A (zh) 一种多维数据分析方法及系统
US20130121580A1 (en) Analysis of service delivery processes based on interrogation of work assisted devices
US11601453B2 (en) Methods and systems for establishing semantic equivalence in access sequences using sentence embeddings
CN101923557A (zh) 数据分析系统及方法
US20220318319A1 (en) Focus Events
Li et al. Direct candidates generation: A novel algorithm for discovering complete share-frequent itemsets
CN104636240B (zh) 一种信息报表的获取方法及终端
CN103838754A (zh) 信息搜索装置及方法
CN115935944A (zh) 一种跨平台的标准文件树形结构生成方法与展示控件
CN102426570B (zh) 示出统计图中影响因素的方法和设备
Bailis et al. Macrobase: Analytic monitoring for the internet of things
US20220365861A1 (en) Automated actions based on ranked work events
Meng et al. IT troubleshooting with drift analysis in the DevOps era
US20110145656A1 (en) Analyzing A Distributed Computer System
US10509691B2 (en) Tracking the mental acuity of an electronic device user

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130918