sampledoc

File Monitor Development

Bcfg2 depends heavily on file activity monitoring (FAM) to reload data from disk when it changes. A number of FAM backends are supported (documented thoroughly below), but you may wish to develop additional backends. For instance, the current best FAM backend on Linux is INotify, but if you are running a non-Linux system that lacks INotify support you may wish to write a backend for your OS (e.g., a kqueue backend for BSD-based Bcfg2 servers). This page documents the FAM API and the existing FAM backends.

Event Codes

Five event codes are generally understood:

Event Description
exists Produced when a monitor is added to a file or directory that exists, and produced for all files or directories inside a directory that is monitored (non-recursively).
endExist Produced immediately after exists. No plugins should process this event meaningfully, so FAM backends do not need to produce it.
created Produced when a file is created inside a monitored directory.
changed Produced when a monitored file, or a file inside a monitored directory, is changed.
deleted Produced when a monitored file, or a file inside a monitored directory, is deleted.

Basics

Existing FAM Backends

Pseudo

Gamin

Inotify

Table Of Contents

Previous topic

Documentation

Next topic

bcfg2-lint Plugin Development

This Page