Process Monitor监控目录 - 监控文件被哪个进程操作了。

转载请注明: 用Process Monitor监控目录 | 薤叶芸香's blog http://plumgo.cc/trace-folder-using-process-monitor/

利用之前Windows API知识,可以实现目录监控的功能,实际上我也实现了,但是如文中所述,当指定目录下操作过多时,会损失部分通知。多少算多呢,解压一个eclipse开发环境的压缩包到监控目录下,相当于短时间内在目标文件夹中创建了数千个文件,结果几乎任何信息都没收到,所以,原本的程序在这种情况下局限性还是很明显的。

考虑到监控性能改进,还可以使用:

1.分析Change Journal的办法,前提是系统开启了这个功能;

2.写Windows文件驱动,据说是个痛苦的过程;

重新研究自己的需求,发现其实这种大量文件操作情境,都可以在可控的情况下进行,只要能够搭建一个环境,利用特定的工具监控这个过程就可以,我猜一定有这样的工具。果然,找到了Process Monitor,这个工具非常强大,可以监控Windows系统的注册表、进程、文件系统、网络等各方面的信息,具体的用法不妨看看帮助,不复杂。

下面说说我如何用它来监控目录。

工具启动后会监控系统所有的活动,大部分信息都不需要,所以需要设置过滤器,此工具的灵活性都体现于此。

默认标题

工具默认自带了一些过滤条件,看到:主语+谓语+宾语,构成条件句,包含或者不包含,可以通过下拉列表随意选择内容进行组合,简单而强大。

要监控某个目录下的情况,首先,选择只显示文件系统的信息,

只监控文件系统变化

然后,设定需要监控目录的条件,

定义过滤条件

本来只要加上Path条件就可以了,但信息还是太多,还需要进一步过滤,其中:

WriteFile:表示写操作,依照文件大小可能产生多条;

ReadFile:表示读操作,一次读会产生很多条;

SetAllocationInformationFile:改写文件时触发;

SetEndOfFileInformationFile:改写文件时触发;

SetRenameInformationFile:重命名时触发;

SetDispositionInformationFile:删除文件时触发。

 

OK,有这些操作的排列组合,就可以监控某个目录下文件的创建、修改、删除、访问操作了。保存日志为文件,以便日后分析。

阅读更多
文章标签: windows 性能
个人分类: win32-tool
想对作者说点什么? 我来说一句

文件操作监控

2015年08月15日 3.96MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭