Filesystem monitoring
Project description
Supported Platforms
Linux 2.6 (inotify)
Windows (ReadDirectoryChangesW with I/O completion ports)
Any other platform (polling)
Installation
$ python setup.py install
Introduction
The fsmonitor module provides live filesystem monitoring. It can be used to monitor for events such as file creation, deletion, modification and so on:
from fsmonitor import FSMonitor
The FSMonitor class manages filesystem watches and is used to receive events. Call the add_dir_watch() method to add a directory watch to the monitor:
m = FSMonitor() watch = m.add_dir_watch("/dir/to/watch")
Once a watch has been added, you can call read_events() to read a list of filesystem events. This is a blocking call and in some cases it might return an empty list, so it needs to be re-called repeatedly to get more events:
while True: for evt in m.read_events(): print evt.action_name, evt.name
The FSMonitorThread class can be used to receive events asynchronously with a callback. The callback will be called from another thread so it is responsible for thread-safety. If a callback is not specified, the thread will collect events in a list which can be read by calling read_events().
More Details
See the example code in the examples directory.
Contact Details
Please send any comments or questions to: luke@iogopro.co.uk
Please report bugs on the github issue tracker.
– Luke McCarthy
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file fsmonitor-0.1.tar.gz
.
File metadata
- Download URL: fsmonitor-0.1.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
397fc47e339ce8aaa6f7a27fe376d4e614579038ff9c61bf28c6733fb1d0c5cd
|
|
MD5 |
46c2fc01401bd6c79cf9eafef33db8c2
|
|
BLAKE2b-256 |
311562befc5ae5117fd4e6b7dfb367e992226080d6d206d27dd2212c03300b2d
|