低磁盘空间警报,发送电子邮件Windows 2003服务器PerfMon警报

问题描述:

我想设置一个警报,让我知道通过电子邮件(SMTP)时,其中一个服务器上的可用磁盘空间小于指定的值。为此,我使用PerfMon警报,如MSFT Technet所述。我有警报工作并写入系统日志,但是当我尝试将其设置为“运行程序”时,它失败。日志警报触发但程序失败。低磁盘空间警报,发送电子邮件Windows 2003服务器PerfMon警报

我正在使用的程序是我写的发送smtp电子邮件的小型C#应用程序。我已经测试了独立于此服务器的应用程序,手动运行它并且工作正常,没有任何用户交互(控制台应用程序)。但是,当它设置为通过警报触发器运行时,它会失败。

感谢, 布莱恩

+0

不涉及编程。 – leppie 2008-12-01 12:51:32

难道说你有你的程序中没有命令行参数? 我发现http://support.microsoft.com/kb/324752/en-us

当警报发生以下,该服务将创建一个进程并运行指定的命令文件。该服务还会将您定义的任何命令行参数复制到用于运行该文件的命令行。单击命令行参数,然后单击以选中相应的复选框以包含程序运行时所需的参数。

注意您必须至少选择一个命令行参数,否则程序将无法运行。 (不管你选择什么程序,这都是真的。)

如果你的C#应用​​程序中的异常处理/日志记录有问题吗?你有什么收获吗?

你可以把你的C#应用​​程序调用放在批处理文件中并从alert中启动它吗?如果你添加类似

echo %date% %time% > log.txt 

在批处理文件的开始处,你可以看到它是否开始。

+0

谢谢,这是命令行参数。我必须记得仔细阅读。现在效果很好。非常感谢! – user32474 2008-11-19 18:27:31

你设置运行方式场的警报属性?如果没有,您的程序将作为LocalService运行,该服务不具有网络访问权限(等等)。

尝试将其设置为您可以验证您的程序正常工作的用户帐户。