Merge-SPLogFile-不返回任何记录

时间:2014-04-26 08:09:06

标签: powershell sharepoint sharepoint-2013 cmdlets

感谢您花时间尝试任何帮助我!

正如标题所示,我无法让Merge-SPLogFile cmdlet返回任何结果!

我发现在SharePoint日志中查找错误消息是一个非常耗时且费力的过程 - 对PowerShell来说相对较新我最近才偶然发现了cmdlet。知道这可以节省多少时间,我很高兴能够实现它。

我从以下代码开始:

Add-PSSnapin Microsoft.SharePoint.Powershell
$correlationId = "C826869C-4A8E-10E2-6C5E-58A1C87EB651"
Merge-SPLogFile –Path “C:\Users\Administrator\Desktop\SPLog.log” –Correlation $correlationId -Overwrite

这给了我警告 - "警告:Cmdlet没有返回日志文件中的任何记录。检查您的时间范围或过滤器。"

当然,我将错误输入到我的搜索引擎中,当-Correlation参数不是大写时,似乎其他人也有同样的问题。我试过大写和小写但无济于事。我能够在日志中手动查找GUID,因此我知道它存在。

当我用这种技术运气不好时,我想我会尝试使用不同的参数进行过滤(按时间):

Add-PSSnapin Microsoft.SharePoint.Powershell
[int] $HowFarBack = 15
[int] $howFarBackInMinutes = (-1) * $HowFarBack
[datetime] $startDateTime = [System.DateTime]::Now.AddMinutes($howFarBackInMinutes)
write-host $startDateTime
Merge-SPLogFile -Path 'C:\Users\Administrator\Desktop\SPLog.log' -Overwrite -StartTime $startDateTime

我得到完全相同的错误。为了排除我的论点不正确,我试着不给它一个过滤器:

Add-PSSnapin Microsoft.SharePoint.Powershell
Merge-SPLogFile -Path 'C:\Users\Administrator\Desktop\SPLog.log' -Overwrite

我仍然得到 - "警告:Cmdlet没有在日志文件中返回任何记录。检查您的时间范围或过滤器。"这些日志都存在于默认情况下" LOG" 15个蜂巢内的文件夹。我还没有将任何日志记录设置更改为默认设置。

我在SharePoint 2013 Foundation上运行。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我的问题是,我的SharePoint场没有激活诊断日志记录。

如何启用诊断日志记录

  1. 转到管理中心(通常为http://YOUR_SHAREPOINT:10000/)(您安装SharePoint的服务器上的开始菜单中还有一个快捷方式)

  2. 转到"监控"

  3. "报告"单击"配置诊断日志记录"

  4. enter image description here

    1. 如果出现错误,请选择要合并的类别。我刚刚在这里选择了所有类别。然后单击"确定"页面底部的按钮。

      (5.重现错误并再次使用SP Shell合并日志文件)