このプロジェクトについて

Dashflareは、Cloudflareの背後で動作するウェブサイト 모니터링するためのプライバシー重視のオープンソース分析プラットフォームです。従来のクライアントサイド追跡スクリプトの代わりに、Cloudflare Edge Worker経由でデータを収集し、軽量でクッキーフリーを実現します。 アーキテクチャ システムは3つのコンポーネントで構成されます。 1. Cloudflare Edge Worker — ネットワークエッジでページビューイベントをインターセプトして処理します。ターゲットサイトの変更不要。Cloudflare Routes経由でメインドメインから `.workers.dev` ワーカーサブドメインにリクエストが転送されます。 2. Grafana Loki — イベントログを永続化レイヤーとして保存。 3. Grafana — 収集された分析データのダッシュボードと可視化を提供。 機能 - プライバシー重視: クッキーなし、個人データ保存なし。セッションは秘密鍵由来のハッシュフィンガープリントで識別。 - 地理情報: 国レベルの検出は標準で対応。ipgeolocationapi.comとの連携でより詳細な地理データを追加可能。 - セルフホスト型デプロイ: Docker Compose構成により、開発/本番環境でGrafanaとLokiをローカル起動。 - Cloudflareネイティブ: Cloudflare利用サイトを想定した設計。Wrangler CLI経由でデプロイ。 インストール `docker-compose up` で最小限の環境を起動。Grafanaは `http://localhost:3000/` でアクセス可能(デフォルト認証情報は `admin/admin`、初回ログイン時変更を促されます)。 主要な環境変数は `LOKI_HOST`(LokiインスタンスURL、IPではなくドメイン必須)、`DOMAIN`(ルート自動生成用メインドメイン)、`FINGERPRINT`(セッションハッシュ用ランダムキー)、必要に応じて `IPINFO`(ipgeolocationapi.com経由で拡張地理情報を有効化)。 Edge WorkerデプロイにはWranglerが必要 (`npm install -g @cloudflare/wrangler`) し、Cloudflareアカウントに対して認証します。`make wrangler` でテンプレートから `wrangler.toml` を生成後、`wrangler publish` で公開します。 Lokiへのアクセスに関する注意点 Cloudflare Edge Workerはドメイン名の80または443ポートエンドポイントにのみ到達可能です。Lokiが標準以外のポートで実行される場合、リバースプロキシBehindに配置するかサブドメイン経由で直接公開する必要があります。ローカル開発ではngrok等のサービスで転送し、エッジから到達可能にします。 ダッシュボード 起動後、Grafanaに訪問者メトリクス、地理的分布、その他のWebサイトパフォーマンス指標を表示する事前設定済み分析ダッシュボードが表示されます。