Visitors (Web Analytics)
外部依存なしで包括的なサイト訪問者履歴を記録・表示する、強力なDrupalネイティブのWeb解析ツールです。
visitors
インストール
composer require 'drupal/visitors:8.x-2.32'
概要
VisitorsはDrupal向けにネイティブで構築された包括的なWeb解析ソリューションです。Google Analyticsなどの外部サービスに依存せず、サイト管理者にユーザー行動、サイトパフォーマンス、トラフィックパターンに関する詳細なインサイトを提供します。
このモジュールは、ページビュー、セッション、ユーザーエンゲージメント、デバイス情報、地理的位置、リファラーデータ、ブラウザ機能を追跡します。訪問、行動、流入、パフォーマンス指標をカバーするViewsベースのダッシュボードを通じて広範なレポート機能を提供します。レポートは日付範囲でフィルタリングでき、Chartsモジュールによる可視化を含みます。
主な機能には、Entityビューカウンター、ボット検出、スパムリファラーブロック、検索エンジントラフィック識別、ソーシャルネットワークリファラー追跡、AIアシスタントボット検出があります。プライバシー制御により、ユーザーは権限に基づいて追跡のオプトイン・オプトアウトが可能です。
Features
- ページビュー、ユーザーセッション、タイムスタンプ、パフォーマンス指標を含む包括的なデータ収集ですべてのサイト訪問を追跡
- オプションのMaxMind統合による精度向上を含む地理的位置追跡(大陸、国、地域、都市)を提供
- デバイスタイプ、ブランド、モデル、画面解像度、ブラウザ機能を含むデバイス情報を検出・記録
- ブラウザ名、バージョン、エンジン、オペレーティングシステム、インストール済みプラグイン(Flash、Java、PDFなど)を含むブラウザソフトウェアを識別
- セッション時間、訪問あたりのページビュー、直帰率、リピーター状況を含むユーザーエンゲージメント指標を追跡
- 検索エンジン(200以上)、ソーシャルネットワーク(150以上)、AIアシスタントの自動分類付きでリファラー情報を記録
- 2,300以上のスパムドメインの事前読み込みデータベースによるスパムリファラーブロックを含む
- Nodeおよび他のコンテンツEntityタイプに対して、本日のビュー数、合計ビュー数、最終閲覧タイムスタンプ付きのEntityビューカウンターを提供
- カスタムレポート構築用の50以上のカスタムフィールド、フィルター、ソートを備えた広範なViews統合を提供
- ネットワーク、サーバー、転送、DOM処理、ページ読み込み合計時間を表示するパフォーマンスレポートを表示
- パス、ユーザーロール、その他のDrupal条件による追跡制御のための条件ベースの表示設定をサポート
- 設定可能な権限に基づくユーザーごとの追跡オプトイン・オプトアウトを許可
- 通常の訪問とボットトラフィック両方に対する設定可能なクリーンアップによる自動ログ保持を提供
- 以前のモジュールバージョンからのデータ移行用Drushコマンドを含む
Use Cases
プライバシー準拠のWeb解析
Google AnalyticsのGDPRフレンドリーな代替としてVisitorsを使用します。すべてのデータはサードパーティの追跡なしでサーバーにローカルに保存されます。プライバシー規制に準拠するためにユーザーオプトアウト設定とデータ保持ポリシーを構成します。
コンテンツパフォーマンス監視
どのページとコンテンツアイテムが最もトラフィックを受けているかを追跡します。人気コンテンツBlockを使用してホームページでトレンドコンテンツを紹介します。入口ページと出口ページを分析してコンテンツフローを最適化します。
オーディエンス分析
地理的、デバイス、ソフトウェアレポートを通じてオーディエンスを理解します。訪問者が使用している国、ブラウザ、デバイスを特定し、それに応じてサイト体験を最適化します。
ボットトラフィック監視
サイトを訪問するAIアシスタントボット(ChatGPT、Claudeなど)と検索エンジンクローラーを追跡します。人間の訪問者データを維持しながらデータベースサイズを管理するために、ボットトラフィック用の個別の保持ポリシーを構成します。
パフォーマンス最適化
ネットワーク時間、サーバー応答、DOM処理、合計読み込み時間を含むページ読み込みパフォーマンス指標を監視します。時間別、日別、週別のパフォーマンストレンドを分析してパフォーマンスボトルネックを特定します。
マーケティングキャンペーン分析
ソーシャルネットワーク(150以上のプラットフォーム)と検索エンジン(200以上対応)からのトラフィックを追跡します。リファラーデータを分析して、どのマーケティングチャネルが最もエンゲージメントを促進しているかを理解します。
スパム対策
モジュールには2,300以上の既知のスパムリファラードメインのデータベースが含まれており、分析から自動的にフィルタリングされ、クリーンで正確なトラフィックデータを確保します。
ユーザーエンゲージメント追跡
セッション時間、訪問あたりのページ数、直帰率、リピーター率、訪問間隔などの指標を通じてユーザーエンゲージメントを分析します。このデータを使用してコンテンツ戦略を改善します。
Tips
- データベースの肥大化を防ぐために、早い段階で適切なログ保持ポリシーを設定してください - 年間比較のために13ヶ月が推奨されます。
- ボットトラフィックを分析する必要がない場合は、ボット保持に「ログに記録しない」オプションを使用すると、データベースサイズが大幅に削減されます。
- よりクリーンな公開トラフィックデータのために、管理パスと認証済みユーザーの訪問を除外する表示条件を構成してください。
- 正確な地理データのためにMaxMindモジュールをインストールしてください - それがないと位置追跡は制限されます。
- Views統合を使用してカスタムレポートを作成し、ダッシュボードに訪問者統計を埋め込みます。
- 「Visitorsにアクセス」権限は慎重に付与してください - レポートには機密性のあるユーザー行動データが含まれる可能性があります。
- 人気コンテンツBlockは、トレンドコンテンツを紹介しエンゲージメントを高める素晴らしい方法です。
- [node:total-count]などのEntityTokenをコンテンツで使用して、ビュー数を動的に表示できます。
Technical Details
Admin Pages 17
/admin/config/system/visitors
追跡動作、ログ保持、Entityカウンター、表示条件を含むVisitorsモジュールのすべての側面を設定します。
/admin/visitors
訪問、行動、流入カテゴリに整理されたすべての訪問者分析レポートへのアクセスを提供するメインダッシュボードです。
/admin/visitors/visit/hits
タイムスタンプ、パス、リファラー、ユーザー、セッション情報を含む最近のページ訪問を表示します。日付範囲フィルタリングを含みます。
/admin/visitors/visit/location
大陸、国、地域、都市、ブラウザ言語を表示する訪問者の地理的分布です。ドリルダウン機能付き。
/admin/visitors/visit/device
デバイスタイプ(デスクトップ、モバイル、タブレット)、ブランド、モデル、画面解像度を含むデバイス分析です。
/admin/visitors/visit/software
OSバージョン、ブラウザバージョン、ブラウザエンジン、デバイス構成、ブラウザプラグインを含むブラウザとオペレーティングシステムの統計です。
/admin/visitors/visit/times
時間別(サーバー時間とローカル時間)、曜日別、月の日別、月別トレンドによる訪問を表示する時間ベースの分析です。
/admin/visitors/visit/users
登録ユーザーのアクティビティと訪問パターンを表示するユーザー固有の分析です。
/admin/visitors/behavior/host
ホスト名/ドメイン別にグループ化されたページ数統計を表示します。
/admin/visitors/behavior/path
サイト上で最も頻繁に訪問されたページ/パスをヒット数とパーセンテージ分布で表示します。
/admin/visitors/behavior/path-entry
訪問者が最初にサイトに入るランディングページを、入口頻度とトレンドで表示します。
/admin/visitors/behavior/path-exit
訪問者がサイトを離れる出口ページを表示し、潜在的な問題箇所の特定に役立ちます。
/admin/visitors/behavior/engagement
訪問時間分布、訪問あたりのページ数、訪問頻度、前回訪問からの経過時間を含むエンゲージメント指標です。
/admin/visitors/behavior/performance
ネットワーク時間、サーバー時間、転送時間、DOM処理、合計読み込み時間を含むページ読み込みパフォーマンス指標です。週次、日次、時間別ビューで利用可能です。
/admin/visitors/acquisition/ai
ChatGPT、Claude、Gemini、Copilot、Perplexityなどを含むAIアシスタントとボットからのトラフィックです。
/admin/visitors/acquisition/social
Facebook、Twitter、LinkedIn、Instagram、TikTok、その他150以上のプラットフォームを含むソーシャルネットワークからのトラフィックです。
/node/{node}/visitors
個々のコンテンツアイテムのトラフィックとリファラーを表示するNode固有の訪問者分析です。
権限 3
Hooks 9
hook_cron
設定された保持期間に基づいて古い訪問者ログのスケジュールクリーンアップを実行します。
hook_page_attachments
追跡が有効で表示条件が満たされている場合に、追跡JavaScriptライブラリをページにアタッチします。
hook_form_user_form_alter
適切な権限を持つユーザーのユーザーアカウントフォームにオプトイン/オプトアウト追跡設定を追加します。
hook_node_links_alter
「view visitors counter」権限を持つユーザーにNodeコンテンツのビュー数を表示します。
hook_entity_delete
Entityが削除されたときに訪問者カウンターデータをクリーンアップします。
hook_ranking
検索結果のランキング要因としてビュー数を提供します。
hook_views_data
広範なフィールド、フィルター、ソート、リレーションシップ定義を持つ訪問者データテーブルをViewsに公開します。
hook_token_info
Entityビュー統計用のToken(total-count、day-count、last-view)を提供します。
hook_tokens
訪問者統計Tokenの置換値を生成します。
Drush Commands 1
drush visitors:upgrade
8.x-2.xバージョンから3.0.xデータ構造にデータをアップグレードします。古いテーブル形式から新しいvisits/eventsアーキテクチャに訪問レコードを移行します。
Troubleshooting 5
/admin/config/system/visitors で追跡が有効になっていることを確認してください。表示条件をチェックして、パスとロールが除外されていないことを確認してください。追跡エンドポイントにアクセスできるようにCronが実行されていることを確認してください。
正確な地理位置情報のためにMaxMindモジュールをインストール・設定してください。それがない場合、位置データはブラウザ言語に依存し、限定的になる可能性があります。
/admin/config/system/visitors でログ保持設定を構成してください。通常の訪問とボットトラフィック両方に適切な保持期間を設定してください。古いレコードをクリーンアップするためにCronが定期的に実行されていることを確認してください。
ChartsモジュールがChart.jsサブモジュール(charts_chartjs)とともにインストールされていることを確認してください。インストール後にDrupalキャッシュをクリアしてください。
設定で「Entityビューをカウント」を有効にし、Entityタイプで「node」が選択されていることを確認してください。適切なロールに「コンテンツのヒット数を表示」権限を付与してください。
Security Notes 5
- すべての追跡データはDrupalデータベースにローカルに保存されます - サードパーティにデータは送信されません。
- ユーザーIPアドレスはログに記録されます - プライバシーへの影響を考慮し、適切な保持期間を構成してください。
- 「Visitorsにアクセス」権限は詳細なユーザー行動データへのアクセスを許可します - 慎重に割り当ててください。
- GDPRなどのプライバシー規制に準拠するためにユーザーオプトアウト機能を有効にしてください。
- スパムリファラーブロックは、分析を汚染する可能性のあるリファラースパム攻撃から保護するのに役立ちます。