MSDEPLOY是否为审计目的生成一个操作日志?

我们刚刚遇到了一个情况,那就是某个人在错误的时间进行了错误的系统部署,但没有人知道是谁做的,或者什么时候做的。

我查看了目标Web服务器上的Windows事件日志,看不到来自MSDEPLOY的东西。 有没有某种日志? 即使是一个日志,只是说,“同步是由用户执行”?

如果没有日志,有什么我可以做的强制日志条目的某种? 例如,是否有写入事件日志条目的提供者,还是我可以用来写入文件的提供者? 我想我可以运行脚本来做某种forms的日志logging,但脚本可以包含在软件包中吗?

对不起所有的问题,但今天成为热门话题!


请注意,我想要在目标Web服务器上login。 无论是日志文件还是事件日志条目,但是出于审计目的,“John在某个时间部署了某些东西”。

我回顾了一会儿,尽我所知,MSDEPLOY不logging客户端的任何内容。 所有你可以做到的是将其输出redirect到一个文件 –

msdeploy.exe -verb:sync ... > logfile.log 

如果有人在自动构build和部署工具之外手动运行,那当然是不好的。

您可以在目标服务器上loggingMSDEPLOY活动(如果您正在使用Web Deploy服务进行部署),但如果您没有完整的RDP访问权限来获取日志,则可能不太方便。

我猜测MS看MSDEPLOY只是一个普通的工具,就像C#编译器在每次编译源代码时不会logging某处的东西一样。

总是有一些动机

详细指定信息详细级别将包含在操作的输出中。 默认情况下,包括警告,错误和致命的详细级别。 信息详细级别将返回在操作过程中触发的所有消息。

我不确定,但debugging也有一些效果在输出

注意:在使用PowerShell扩展的TFS构build中,我一直使用这种模式保存输出:

  iex "msdeploy ..." | Out-String | %{ $log.LogMessage($_)}