【问题标题】:Track system restart跟踪系统重启
【发布时间】:2011-06-27 19:18:56
【问题描述】:

我编写了一个作为软件一部分的 windows 服务,我在 windows server 2003 和 2008 上都部署了该服务,客户联系我抱怨说,当他们重新启动服务器时,他们一直在重新启动,这发生在两台机器上不同的客户端,重新启动具有最后一个良好配置的服务器,并且服务器已启动,我连接到其中一台服务器并运行进程监视器,我启用启动日志记录然后再次安装我的服务,问题再次出现,最后启动系统良好的配置工作,查看启动日志显示服务正常工作,没有什么奇怪的,我决定安装虚拟机并尝试重复操作,当我这样做时,我发现虚拟机,然后到达登录管理器几秒钟后它重新启动,它一直这样做,直到我以最后一次良好的配置启动机器,没有机会登录和运行进程监视器,有什么建议如何跟踪这个问题?任何 sysinternals 工具都可以提供帮助吗?

提前致谢,

【问题讨论】:

    标签: process monitor sysinternals


    【解决方案1】:

    其他人可能会建议一些好的工具,但如果都失败了,你可以做的是在你的服务中编写一个函数,将一个字符串参数附加到某个文本文件,然后在每个(或每个nth) tge 服务启动代码行。然后重复你的测试。重新启动后,检查文件,它会准确地告诉您是哪一行导致计算机重新启动。您可以检查代码以查找原因或在此处发布违规代码,人们可能会更好地帮助您。

    【讨论】:

    • 是的,我明白你在说什么,但是我的服务成功退出并且启动过程继续,我的服务在启动时尝试连接到某个套接字服务器并且它失败了,并基于它清理起来退出,我可以看到发生的一切。所以对服务毫无疑问。
    • 不查看启动日志或代码,很难判断,但您可以尝试以下其他操作:1) 转到服务的属性并确保它未设置为重新启动计算机第一次出现故障 2) 检查启动日志,禁用服务,然后启用服务以了解任何差异 3) 将服务更改为“手动”从自动启动启动,然后在计算机启动后尝试手动启动以查看是否在错误信息或日志方面有任何线索 4)如果全部失败,您可以注释大部分代码,然后逐步取消注释代码直到问题发生
    • 感谢 devsh,是的,我明白了,但正如我所说,我运行了进程监视器,我的服务运行并尝试连接到套接字服务器,然后成功退出,与服务代码无关服务器重新启动,我一直在进程监视器中跟踪操作,但似乎没有什么异常,Windows 登录出现几秒钟然后它重新启动没有机会记录和运行进程监视器,但我正在寻找的是远程附加进程监视器之类的方法几秒钟,但是,如果出现故障,它应该出现在事件查看器中
    猜你喜欢
    • 2011-04-20
    • 1970-01-01
    • 2012-04-03
    • 2019-01-04
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多