SharePoint サーバーの推奨事項および利用状況のイベントの種類を構成します。
適用対象:2016 2019 Subscription Edition SharePoint in Microsoft 365
使用状況イベントを使用すると、ユーザーがサイトでアイテムに対して行う操作を追跡できます。 これらのアイテムには、ドキュメント、サイト、またはカタログ アイテムがあります。 ユーザーがサイト上のアイテムと対話すると、SharePoint Server はこのアクションの使用状況イベントを生成します。 たとえば、カタログ アイテムが携帯電話から閲覧される頻度を監視する場合は、携帯電話からの閲覧操作を追跡します。
この記事では、カスタム使用状況イベントの種類の作成方法について説明します。また、使用状況イベントを記録するコードを追加して、それらのイベントを分析処理コンポーネントで処理できるようにする方法についても説明します。
使用状況イベントによって生成されるデータを使用して、サイトの推奨事項や人気のあるアイテムを表示できます。 この記事では、特定の使用状況イベントの種類の重要度を変更することで、推奨事項の表示方法に影響を与える方法についても説明します。 詳細については、「 SharePoint Server 2016 でのサイト間発行サイトの検索を計画する」の「使用状況分析、使用状況イベント、推奨事項を計画する」を参照してください。
人気の傾向レポートと、人気のあるアイテム レポートには、すべての種類の使用状況イベントの統計情報を表示できます。 詳細については、「SharePoint Server で利用状況レポートを表示する」を参照してください。
カスタム使用状況イベントの種類を作成する
SharePoint Server には、既定の使用イベントの種類が 3 つあります。 Microsoft PowerShell を使用して、最大 12 種類のカスタム使用状況イベントを作成できます。
カスタム使用状況イベントの種類を作成するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To get a site at the root site collection level:
$Site = Get-SPSite "http://localhost"
# To get a site below the root site collection level:
$Site = Get-SPSite "http://localhost/sites/<SiteName>"
# To create a custom usage event type:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$EventGuid = [Guid]::NewGuid()
$EventName = "<EventTypeName>"
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$newEventType = $tenantConfig.RegisterEventType($EventGuid, $EventName, "")
$tenantConfig.Update($SSP)
ここで、
<SiteName> は、カスタム使用状況イベントを作成するサイトの名前です。
<EventTypeName> は、作成する新しいカスタム使用状況イベントの種類 ( BuyEventType など) の名前です。
この手順では、使用状況イベントの種類を表すランダムな GUID を作成します。 この GUID は、「カスタム使用状況イベントを記録する」で説明するように、カスタム使用状況イベントを記録するコードを追加する際に使用します。
重要
カスタム使用状況イベントの種類がシステムで使用できるようになるには、最大で 3 時間かかることがあります。 ただし、プロセスを高速化するには、SharePoint タイマー サービスを再起動することもできます。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
カスタム使用状況イベントを記録する
「カスタム使用状況イベントの種類を作成する」の説明に従って、 カスタム使用状況イベントの種類を作成したら、ページが読み込まれたり、ユーザーがリンクやボタンをクリックしたときなど、イベントが発生する場所にコードを追加する必要があります。 その後、このデータは分析処理コンポーネントに送信され、そこで記録および処理されます。
発行サイトにカタログ コンテンツを表示するクロスサイト発行を使用している場合は、インデックス付きアイテムの URL に使用状況イベントを記録し、一部のサイト設定をオーバーライドする必要があります。 たとえば、発行サイトで発行したオーサリング サイトにカタログがある場合、ユーザーが発行サイトのカタログ アイテムと対話するときに、この使用状況イベントをオーサリング サイトのアイテムに記録する必要があります。 さらに、使用状況イベントを記録するために追加するコードは、発行サイトの SiteId と WebId をオーバーライドし、オーサリング サイトの SiteId と WebId に置き換える必要があります。
カスタム使用状況イベントを記録するコードを追加するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view GUIDs for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
- HTML エディターで、カスタム使用状況イベントが記録されるファイル (コンテンツ検索 Web パーツの表示テンプレートなど) を開き、次のコードを追加します。
window.Log<CustomUsageEventType>ToEventStore = function(url)
{
ExecuteOrDelayUntilScriptLoaded(function()
{
var spClientContext = SP.ClientContext.get_current();
var eventGuid = new SP.Guid("<GUID>");
SP.Analytics.AnalyticsUsageEntry.logAnalyticsAppEvent(spClientContext, eventGuid, url);
spClientContext.executeQueryAsync(null, Function.createDelegate(this, function(sender, e){ alert("Failed to log event for item: " + document.URL + " due to: " + e.get_message()) }));
}, "SP.js");
}
CustomUsageEventType
はカスタム イベントの名前です。たとえば、 BuyEventType です。GUID
は、使用状況イベントの種類 ( 4e605543-63cf-4b5f-aab6-99a10b8fb257 など) の数値 ID です。
- HTML エディターで、カスタム使用状況イベントを参照するファイルを開き、次のコードを追加します。
# The example below shows how a custom usage event type is referred to when a button is clicked:
<button onclick="Log<CustomUsageEventType>ToEventStore('<URL>')"></button>
ここで、
<CustomUsageEventType> は、カスタム イベントの種類の名前です。
<URL> は、使用状況イベントを記録する必要があるアイテムの完全な URL です (たとえば、
https://contoso.com/faq
)。
カスタム使用状況イベントを記録し、サイト設定をオーバーライドするコードを追加するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view GUIDs for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
- HTML エディターで、カスタム使用状況イベントが記録されるファイル (コンテンツ検索 Web パーツの表示テンプレートなど) を開きます。 次の例は、現在の SiteId、WebId、および UserId を上書きするコードを追加する方法を示しています。
window.Log<CustomUsageEventType>ToEventStore = function(url, siteIdGuid, webIdGuid, spUser)
{
ExecuteOrDelayUntilScriptLoaded(function()
{
var spClientContext = SP.ClientContext.get_current();
var eventGuid = new SP.Guid("<GUID>");
SP.Analytics.AnalyticsUsageEntry.logAnalyticsAppEvent2(spClientContext, eventGuid, url, webIdGuid, siteIdGuid, spUser);
spClientContext.executeQueryAsync(null, Function.createDelegate(this, function(sender, e){ alert("Failed to log event for item: " + document.URL + " due to: " + e.get_message()) }));
}, "SP.js");
}
ここで、
<CustomUsageEventType> は、カスタム イベントの種類 ( BuyEventType など) の名前です。
<GUID> は、使用状況イベントの種類 ( 4e605543-63cf-4b5f-aab6-99a10b8fb257 など) の数値 ID です。
- HTML エディターで、カスタム使用状況イベントの種類を参照するファイルを開き、次のコードを追加します。
# The example below shows how a custom usage event type is referred to when the "Buy!" button is clicked:
<button onclick="Log<CustomUsageEventType>ToEventStore('<URL>', new SP.Guid('{<SiteId GUID>}'), new SP.Guid('{<WebId GUID>}'), '<UserName>')">Buy!</button>
ここで、
<CustomUsageEventType> は、カスタム イベントの種類 (BuyEventType など) の名前です。
<URL> は、管理プロパティ OriginalPath 内の URL です。
<SiteId GUID> は、オーサリング サイトの SiteId GUID です。 SiteId GUID を取得する方法については、「サイトの SiteId GUID および WebId GUID を取得する」をご覧ください。
<WebId GUID> は、オーサリング サイトの WebId GUID です。 WebId GUID を取得する方法については、「サイトの SiteId GUID および WebId GUID を取得する」をご覧ください。
<UserName> は、匿名ユーザーが存在するサイトでユーザーの識別に使用する Cookie ID を指定できます。
既定の使用状況イベントを記録する
既定の使用状況イベントの種類 (ビューなど) を参照するコードを追加する場合は、イベントが発生する場所にコードを追加する必要があります。
発行サイトのカタログ コンテンツを表示するクロスサイト発行を使用している場合は、インデックス付きアイテムの URL に使用状況イベントを記録し、一部のサイト設定をオーバーライドする必要があります。 たとえば、発行サイトで発行したオーサリング サイトにカタログがある場合、ユーザーが発行サイトのカタログ アイテムと対話するときに、この使用状況イベントをオーサリング サイトのアイテムに記録する必要があります。 さらに、使用状況イベントを記録するために追加するコードは、発行サイトの SiteId と WebId をオーバーライドし、オーサリング サイトの SiteId と WebId に置き換える必要があります。
既定の使用状況イベントを記録するコードを追加するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
- HTML エディターで、カスタム使用状況イベントが記録されるファイル (コンテンツ検索 Web パーツの表示テンプレートなど) を開き、次のコードを追加します。
window.Log<DefaultUsageEventType>ToEventStore = function(url)
{
ExecuteOrDelayUntilScriptLoaded(function()
{
var spClientContext = SP.ClientContext.get_current();
SP.Analytics.AnalyticsUsageEntry.logAnalyticsEvent(spClientContext, <EventTypeId>, url);
spClientContext.executeQueryAsync(null, Function.createDelegate(this, function(sender, e){ alert("Failed to log event for item: " + document.URL + " due to: " + e.get_message()) }));
}, "SP.js");
}
ここで、
<DefaultUsageEventType> は、既定の使用状況イベントの種類 ( Views など) の名前です。
<EventTypeId> は、使用状況イベントの種類 ( 1 など) の数値 ID です。
- HTML エディターで、既定の使用状況イベントを参照するファイルを開き、次のコードを追加します。
# The example below shows how a default usage event type is referred to on a page load:
<body onload="Log<DefaultUsageEventType>ToEventStore('<URL>')">
ここで、
<DefaultUsageEventType> は、既定の使用状況イベントの種類 ( Views など) の名前です。
<URL> は、使用状況イベントを記録する必要があるアイテムの完全な URL です (たとえば、
https://contoso.com/careers
)。
- ファイルを保存します。
既定の使用状況イベントを記録し、サイト設定をオーバーライドするコードを追加するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
- HTML エディターで、カスタム使用状況イベントが記録されるファイル (コンテンツ検索 Web パーツの表示テンプレートなど) を開きます。 次の例は、現在の SiteId、WebId、UserId をオーバーライドする方法を示しています。
window.Log<DefaultUsageEventType>ToEventStore = function(url, siteIdGuid, webIdGuid, spUser)
{
ExecuteOrDelayUntilScriptLoaded(function()
{
var spClientContext = SP.ClientContext.get_current();
SP.Analytics.AnalyticsUsageEntry.logAnalyticsEvent(spClientContext, <EventTypeId>, url, webIdGuid, siteIdGuid, spUser);
spClientContext.executeQueryAsync(null, Function.createDelegate(this, function(sender, e){ alert("Failed to log event for item: " + document.URL + " due to: " + e.get_message()) }));
}, "SP.js");
}
ここで、
<DefaultUsageEventType> は、既定のイベントの種類 ( Views など) の名前です。
<EventTypeId> は、使用状況イベントの種類 ( 1 など) の数値 ID です。
- HTML エディターで、既定の種類の使用状況イベントを参照するファイルを開き、次のコードを追加します。
# The example below shows how a default usage event type is referred to on a page load:
<body onload="Log<DefaultUsageEventType>ToEventStore('<URL>', new SP.Guid('{<SiteId GUID>}'), new SP.Guid('{<WebId GUID>}'), '<UserName>')">
ここで、
<DefaultUsageEventType> は、既定のイベントの種類 ( Views など) の名前です。
<URL> は、管理プロパティ OriginalPath の URL です。
<SiteId GUID> は、オーサリング サイトの SiteId GUID です。 SiteId GUID を取得する方法については、「サイトの SiteId GUID および WebId GUID を取得する」をご覧ください。
<WebId GUID> は、オーサリング サイトの WebId GUID です。 WebId GUID を取得する方法については、「サイトの SiteId GUID および WebId GUID を取得する」をご覧ください。
<UserName> は、匿名ユーザーが存在するサイトでユーザーの識別に使用する Cookie ID などを指定できます。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
使用状況イベントの種類の重要度レベルを変更する
使用状況イベントの種類プロパティ RecommendationWeight は、使用状況イベントの種類の重要度レベルを表す数値で、推奨計算で使用される他の使用状況イベントの種類との比較で示されます。 使用状況イベントの既定の種類 Views では、 RecommendationWeight 値にあらかじめ 1 が構成されています。 使用状況イベントの他の既定の種類 Recommendations displayed と Recommendations clicked、およびすべてのカスタム使用状況イベントの種類では、 RecommendationWeight 値は 0 です。 推奨計算で使用される使用状況イベントの種類の重要度を上げるには、 RecommendationWeight パラメーターの値を変更します。 重要度レベルの最大値は 10 です。
使用状況イベントの種類の重要度を変更するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
# To get a usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
# To change the importance level of a usage event type:
$event.RecommendationWeight = <RecommendationWeightNumber>
$tenantConfig.Update($SSP)
# To verify the changed importance level for the usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
$event
ここで、
<EventTypeId> は、重みを変更する使用状況イベントの種類 ( 256 など) の数値 ID です。
<RecommendationWeightNumber> は、ユーザー イベントの種類 ( 4 など) に適用する重要度のレベルです。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
使用状況イベントの種類の "最近" 期間を変更する
使用状況イベントの種類プロパティ RecentPopularityTimeframe は、人気のあるアイテム レポートの "最近" 期間を定義する数値です。 [最も人気のあるアイテム] レポートには、ライブラリまたはリスト内のすべてのアイテムに対して、使用状況イベントの種類ごとに最も人気のあるアイテムが表示されます (たとえば、ライブラリやリストで最も表示されるアイテム)。 このレポートは、" 最近" または " 過去すべてEver過去すべて過去すべて過去すべて" の期間で並べ替えることができます。 既定では、"最近" 期間は、使用状況イベントごとに直前の 14 日間に設定されています。 この値は、1 日から 14 日間の期間に変更できます。
使用状況イベントの種類の [最近の期間] を変更するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
# To get a usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
# To change the Recent time span for a usage event type:
$event.RecentPopularityTimeFrame = <TimeFrame>
$tenantConfig.Update($SSP)
# To verify the changed Recent time frame for the usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
$event
ここで、
<EventTypeId> は、 最近 の時間枠 ( 256 など) を変更する使用状況イベントの種類の数値 ID です。
<TimeFrame> は、ユーザー イベントの種類 (7 など) に適用する新しい最近の時間枠です。
注:
"最近" 期間の変更は、利用状況分析タイマー ジョブの実行後でないと反映されません。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
匿名ユーザーの使用状況イベントの記録を有効および無効にする
アカウントに接続せずにサイトのコンテンツを参照するユーザーは、匿名ユーザーと呼ばれます。 匿名ユーザーの記録に対しては、イベントの種類 "Views" のみが有効になります。 既定では、匿名ユーザーに対してカスタム使用状況イベントの記録は無効になります。
匿名ユーザーの使用状況イベントのログ記録を有効にするには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に問い合わせてアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
# To get a usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
# To enable the logging of anonymous users:
$event.Options = [Microsoft.Office.Server.Search.Analytics.EventOptions]::AllowAnonymousWrite
$tenantConfig.Update($SSP)
# To verify that the logging of anonymous users has been enabled, i.e. that the Options property is set to AllowAnonymousWrite:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
$event
ここで、
- <EventTypeId> は、匿名ユーザーのログ記録に対して有効にする使用状況イベントの種類 ( 256 など) の数値 ID です。
匿名ユーザーの使用状況イベントのログ記録を無効にするには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To view EventTypeId for all usage event types:
$SSP = Get-SPEnterpriseSearchServiceApplicationProxy
$SSP.GetAnalyticsEventTypeDefinitions([Guid]::Empty, 3) | ft
# To get a usage event type:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
$event = $tenantConfig.EventTypeDefinitions | where-object { $_.EventTypeId -eq <EventTypeId> }
# To disable the logging of anonymous users:
$event.Options = [Microsoft.Office.Server.Search.Analytics.EventOptions]::None
$tenantConfig.Update($SSP)
# To verify that logging of anonymous users has been disabled, i.e. that the Options property is set to None:
$tenantConfig = $SSP.GetAnalyticsTenantConfiguration([Guid]::Empty)
ここで、
<EventTypeId> は、匿名ユーザーのログ記録で無効にする使用状況イベントの種類の数値 ID です ( 例: 256)。
注:
既定の使用状況イベントの種類 Views では、匿名ユーザーのログ記録を無効にすることはできません。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
サイトの SiteId GUID および WebId GUID を取得する
以下の PowerShell コマンドを使用して、サイトの SiteId GUID および WebId GUID を取得することができます。
サイトの SiteId GUID と WebId GUID を取得するには
- 次のメンバーシップがあることを確認します。
SQL Server インスタンスにおける securityadmin 固定サーバー ロール。
更新するすべてのデータベースに対する db_owner 固定データベース ロール。
PowerShell コマンドレットを実行しているサーバー上の管理者グループ。
上に示した最小要件を満たすために必要なメンバーシップを追加します。
管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。
注:
アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
PowerShell コマンド プロンプトで、次のコマンドを入力します。
# To get the SiteId GUID and the WebId GUID for a root site collection:
$site = Get-SPSite "<RootSiteURL>"
$web = $site.RootWeb
$site.id
$web.id
# To get the WebId GUID for a site below the root site collection:
$site = Get-SPSite "<RootSiteURL>"
$web = $site.OpenWeb("<SubSiteLocation>")
$web.id
ここで、
<RootSiteURL> は、SiteId GUID と WebId GUID を取得するルート サイトの URL です (たとえば、
https://contoso.com/sites/catalog
)。<SubSiteLocation> は、ルート サイトの URL に続く、サブサイトへの URL パスの残りの部分です。 たとえば、ルート サイト URL が
https://contoso.com/sites/catalog
され、サブサイト URL がhttps://contoso.com/sites/catalog/products
されている場合は、このプレースホルダーの 製品 を入力します。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。
関連項目
概念
SharePoint Server で利用状況レポートを表示する