【问题标题】:Low Disk Space Alert, send email Windows 2003 Server PerfMon Alert [closed]磁盘空间不足警报,发送电子邮件 Windows 2003 Server PerfMon 警报 [关闭]
【发布时间】:2008-11-18 19:18:36
【问题描述】:

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

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

【问题讨论】:

  • 与编程无关。

标签: windows-server-2003 alerts


【解决方案1】:

可能是您的程序没有命令行参数吗? 我在http://support.microsoft.com/kb/324752/en-us上找到了以下内容@

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

注意您必须至少选择一个命令行参数,否则程序将无法运行。 (无论您选择什么程序都是如此。)

如果您的 C# 应用程序中有异常处理/日志记录,您有什么办法吗?你有什么收获吗?

您能否将您的 C# 应用程序调用放在一个批处理文件中并从警报开始?如果您添加类似

的内容
echo %date% %time% > log.txt

在批处理文件的开头,您可以查看它是否已启动。

【讨论】:

  • 谢谢,这是命令行参数。我必须记得阅读细则。现在效果很好。非常感谢!
【解决方案2】:

您是否在警报属性中设置了 Run As 字段?如果没有,您的程序将作为 LocalService 运行,它没有网络访问权限(除其他外)。

尝试将其设置为您能够验证程序是否正常运行的用户帐户。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    • 2021-11-11
    • 2017-10-26
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    相关资源
    最近更新 更多