Filenotify is a binary tools for monitoring filesystem modification and store event in influxdb.
- You can download binary from this link : filenotify.tar.gz
- You can download compilable sources : filenotify-src.tar.gz
Use Make to build and install the binarny
libtoolize
autoreconf
automake --add-missing
./configure
make && sudo make install
With filenotify daemon, you can store file's presence status in influxdb (and time) to build Grafana dashboard. The goal is to visualise file in directory whitout accessing to server, and keep file modification timestamp.
Filenotify can watch directory and bounce each receive file to an other server. This is usefull when final server is behind a firewall.
graph TB
subgraph "Intranet"
FileBoucer[File Bouncer DMZ] --> BuisnessServer[Buisness Server]
end
subgraph "Internet"
RemoteFileSender -. Firewall .-> FileBoucer
end
TODO : Filenotify can watch directory and call clamav on each file writing.
bin/filenotify -c filenotify.config -d
Filenotify will listen kernel's inotify event to do some stuff when file creating or deleting. He can store event in influxdb database or log it in a logfile. But he can also lauch a shell script.
graph TB
SubGraph1 --> SubGraph1Flow
subgraph "InfluxDB"
SubGraph1Flow(Http interface)
SubGraph1Flow --> Database
end
subgraph "FileNotify"
kernel[Inotify Kernel Event] --> daemon[Filenotify daemon]
daemon --> SubGraph1[Module influxdb]
daemon --> mlog[Module log]
mlog --> log[logfile]
daemon --> mexec[Module exec]
mexec --> bash[Bash command]
end
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.