Environment: SP2010 Enterprise, SQL2008R2, VS2012, full server access
A while ago I created a massive amount of alerts using a c# console app I made in VS. The app ran on the server using SP administrative credentials. Lo and behold all the alerts now have the server name in their links, therefore the alert links are broken for all external users. I have come to learn this is the result of A) Having the server name as the default zone URL, and B) Creating the alerts through said default zone.
I found a possible solution here using the AlertFixup PS cmdlet, but the situation it was designed for is slightly different. It's meant for sites whose URLs have changed, whereas in my case it has not, I just want to change it to a different zone. Additionally I ran a -whatif on it and it ultimately reported 49 alerts it could fix even though it iterated through several thousand of them (after some examination I discovered that only 49 of them could fit in the command prompt window at any given time) so my other question here is can that cmdlet handle the volume of alerts that I need to fix?
Sum-up: Is the AlertFixup cmdlet applicable to this situation (just changing the URL to whatever I want)? If necessary to make the AlertFixup work, is it safe to just change the default zone of the web app to the external URL and then run AlertFixup? Can it handle a huge volume of alerts? Is there another way to easily modify all the existing alerts to fix the URLs (perhaps with an SPAlert property)?