Mr. Davis,
As I said earlier, the action itself is working as expected. It is passing the correct data (the entire text) to the batch script, and I can see that coming to the batch script by looking at the log file that I am creating. For some reason though, the perl script is not getting called at all.
Again, just to be clear: I can see the entire message passed to my batch script, something like:
"9/8/14 9:40:45 AM CDT Introscope Enterprise Manager (L4DWEPAP760:10.100.6.26) reported: The Alert myHRAMEX_Heap Bytes in Use opened a caution alert with a target of 650000000: SuperDomain/BTS_ITOperations-Linux_Unix_PROD|l8repa28|JBoss|A828_MyHR-AMEX_CL1_M4|GC Heap:Bytes In Use = 681776856"
So this part is working as expected. When I run the batch script manually (from a command prompt separate from introscope calling it), and pass it the above argument string, everything works as expected. The perl script is called etc. When the batch script is called via introscope though, the perl script is never called (but the test log I added at the end of my script is called, so I know that a) the bat script is being called and b) the correct data is being passed to it.
As I said in my original post, this is a weird one. I've spent the past day or two trying to troubleshoot and figure out whats going on. Also as I said, this works perfectly fine in our 8.2 environment using the exact same scripts (batch and perl). I'm pretty much stumped at this point.