3

以下を実行して現在のクロールを取得し、そこから最後にクロールが完了した日付を特定できます。

# Get the Search App from Sharepoint
$searchApp = Get-SPEnterpriseSearchServiceApplication "My Search Service"
Get-SPEnterpriseSearchCrawlContentSource -SearchApplication $searchapp 

$contentsource = Get-SPEnterpriseSearchCrawlContentSource "MyCrawl" -SearchApplication $searchApp
$contentsource.CrawlCompleted

しかし、クロールが完了したのはこれが最後です。最後のフルクロールの日付が必要です。

クロール履歴で情報を確認できます。しかし、クロール履歴を取得しようとすると ( http://blogs.msdn.com/b/carloshm/archive/2009/03/31/how-to-programmatically-export-the-crawl-history-to-aを参照) -csv-file-in-powershell.aspx ) 以下を使用して、実際に操作できるオブジェクト (私が知る限り、その 1 つの大きな文字列コンテナー) を取得していないようで、ID でいっぱいです。

 $s = new-Object Microsoft.SharePoint.SPSite("http://portal");
 $c = [Microsoft.Office.Server.Search.Administration.SearchContext]::GetContext($s);
 $h = new-Object Microsoft.Office.Server.Search.Administration.CrawlHistory($c) 

クロール履歴を表すオブジェクトを取得して、クロール名と Type = full でフィルタリングできるようにしたいと考えていました。

私は周りを検索しましたが、どこにも答えが見つかりません。(CrawlHistory クラスは非推奨になっていることにも注意してください)。

考えや提案はありますか?

4

1 に答える 1