Ideas about FTP monitoring

You can monitor a IIS FTP site with the Internet Information Services (IIS) Management Pack. But that management pack only monitor the FTP from the server side. I received a couple of questions how to monitor a FTP from the client side. You can do that with a vbscript, but if you are not that into scripting you can solve it like this:

You can setup a port check. TCP Port check easy to add with the monitoring wizard under management pack templates.

You can also create a FTP.EXE script that logon to your FTP server and perform a number of commands. ftp.exe is a built-in FTP tool in Windows. If you run it with the -s: parameter you can specify a script. You can also use the -d parameter to turn on debug and then the dump the result to a logfile with >>ftpcheck.log. That logfile you can check with a rule or monitor from Ops Mgr. Example

ftp.exe -d -s:ftpscript.ftp >>ftp_log.log

You can run the complete command from a Timed Commands/Execute a command rule. You can then create a Alert Generating Rules/Event Based/Generic Text Log (Alert) rule to monitor that ftp_log.log file. In this post you can read how to setup a rule to check a logfile. Your ftpscript.ftp file can look like this

open 10.1.1.1
loginname
Password
binary
send contoso-test-file.txt
get contoso-test-file.txt
bye

As you can see, it is normal FTP commands inside that file. If you want to only test download a file from a FTP and dont want to check the ftp_log.txt file, you can check when the downloaded file was last updated, according to this post. You can also use this script to search your logfile for words, and generate events.