You can use a custom user monitor with the internal dispatcher. Consider a case where you need to track the health of a server based on the presence of a file on the server. The following diagram illustrates this scenario.
Figure 1. Using a user monitor with the internal dispatcher
Internal dispatcher
A possible solution is to use a Perl script that initiates an FTP session with the server and checks for the presence of the file. You can then create a user monitor that uses the Perl script. The NetScaler appliance includes such a Perl script (nsftp.pl), in the /nsconfig/monitors/ directory.
You can use a user monitor with an external dispatcher. Consider a case where you must track the health of a server based on the state of an SMTP service on another server. This scenario is illustrated in the following diagram.
Figure 2. Using a user monitor with an external dispatcher
External dispatcher
A possible solution would be to create a Perl script that checks the state of the SMTP service on the server. You can then create a user monitor that uses the Perl script.