3

最近我在 NSSM 的帮助下配置了两个独立的服务。对于两者,stdoutstderr都在stdout文件中输出,因此即使有错误消息, stderr文件也始终为空。

服务本身按预期工作。
它们最初是通过 CLI 使用以下命令配置的:

nssm install servicename "C:\service\path\file.exe"
nssm set servicename AppDirectory "C:\service\path"

nssm set servicename AppStdout "C:\service\logs\stdout.log"
nssm set servicename AppStderr "C:\service\logs\stderr.log"

nssm set servicename AppStdoutCreationDisposition 4
nssm set servicename AppStderrCreationDisposition 4

nssm set servicename AppRotateFiles 1
nssm set servicename AppRotateOnline 1
nssm set servicename AppRotateSeconds 0
nssm set servicename AppRotateBytes 50000

nssm set servicename Start SERVICE_AUTO_START
nssm start servicename

打开 NSSM GUI 显示一切都按预期进行了配置。

这似乎是 NSSM 中的某种错误。有解决办法吗?还是我错过了什么?

4

1 回答 1

2

这可能不是您的问题的解决方案,但在我的情况下,问题来自该服务仅记录到标准输出,而不是将输出流分离到标准输出和标准错误。也许值得检查一下。

对我来说,NSSM 现在可以正确记录到 stdout 和 stderr 了。

于 2019-07-08T08:23:27.647 回答