If it's for log files on Linux I just use the tail command in a bash script.
Very simple. I won't even bother writing something in FPC for this.
#!/bin/bash
tail -F -n+1 \
/var/log/logfile1.log \
/var/log/logfile2.log \
| while read line ; do
if [[ "$line" == *"text_i_want_to_monitor"* ]]; then
# do something
fi
done
And I have that running in a systemd service (enabled with systemctl etc).
Do note... that if you are going to build something and you have the file open, you need to make sure you can handle a log rotation (where the files are renamed). If you have your file open, it will keep reading the old file, not the new. Above in my script this is handled by the -F option. It will 'follow' the name of the file (not file-handle) and retry on failure.