このトピックでは、webトラッキング機能を使用してログを収集し、収集したログをSimple Log Serviceに送信する方法について説明します。 このトピックでは、webトラッキング機能を使用して収集したログをクエリおよび分析する方法についても説明します。
背景情報
重要なメールを送信するときに、読み取り領収書タグをメールに追加できます。 これにより、受信者が電子メールを読んだときに領収書を受け取ることができます。 レシート読み取り機能は、次のシナリオで広く使用されています。
リーフレットが受信者に送信された後、受信者がリーフレットを読むかどうかを確認します。
プロモーションwebページをクリックするユーザーの数を確認します。
モバイルアプリでプロモーションイベントページのページビュー (PV) を分析します。
従来のソリューションは、WebサイトとWebマスター向けに開発されています。 これらのソリューションは、次の理由により、上記のシナリオのデータ収集または分析には適用されません。
従来のソリューションは、パーソナライズされた要件を満たしません。 ユーザーの行動データはモバイルデバイスでは生成されません。 データは、個人化された操作に特有のパラメータを含む。 パラメータは、ソース、チャネル、環境、および挙動パラメータを含む。
従来の解決策は、開発が困難かつ高価である。 データを収集および分析するには、クラウドホスト、パブリックIPアドレス、開発データの受信に使用するサーバー、およびメッセージ指向のミドルウェアを購入する必要があります。 高いサービス可用性を確保するには、相互バックアップを設定する必要があります。 さらに、使用する分析サービスを開発してテストする必要があります。
従来のソリューションは使いにくいです。 使用する分析サービスにデータが送信された後、エンジニアはデータをクレンジングし、使用できるデータベースにデータをインポートする必要があります。 その後、ビジネスオペレーションのデータを生成できます。
従来のソリューションは、オートスケーリングやユーザーリソース使用量の推定をサポートしていません。 したがって、大きなリソースプールを確保しておく必要があります。
このため、目的のユーザーにコンテンツを配信する場合は、ユーザーの行動データを効率的に収集して分析する必要があります。
Simple Log Serviceは、上記のシナリオのwebトラッキング、JavaScript、およびトラッキングピクセルSDKを提供します。 SDKを使用して、軽量の追跡ソリューションに基づいてデータを収集できます。 これにより、追跡ポイントとデータを1分以内に報告できます。
特徴
このトピックで提供されるソリューションは、Simple Log Serviceに基づいています。 Simple Log Serviceはエンドツーエンドのデータログサービスであり、データ収集や処理システムに投資することなく、ログデータの収集、消費、出荷、クエリ、分析を行うことができます。 Simple Log Serviceは、O&Mと運用の効率を向上させます。 Simple Log Serviceは、次の機能を提供します。
LogHub: この機能を使用すると、リアルタイムでログデータを収集して使用できます。 LogHubは、Blink、Flink、Spark Streaming、Storm、およびKeplerと統合できます。
LogShipper: この機能により、データを送信できます。 LogShipperは、MaxCompute、E-MapReduce、Object Storage Service (OSS) 、およびFunction Computeと統合できます。
LogSearchと分析: この機能を使用すると、ログデータをリアルタイムでクエリおよび分析できます。 LogSearchとAnalyticsは、DataV、Grafana、Zipkin、およびTableauと統合できます。
Simple Log Serviceによるデータ収集の利点
Simple Log Serviceは、サーバー、モバイルデバイス、および組み込みデバイスからデータを収集するための30種類以上のデータ収集方法を提供します。 Simple Log Serviceは、さまざまなプログラミング言語向けのソリューションも提供します。
Logtail: x86サーバーのログ収集エージェント
SDK: モバイルAndroidおよびiOSデバイス用のSDK
Producer Library: CPUやメモリが限られているスマートデバイスやデバイス用のライブラリ
Webトラッキングは軽量なコレクションソリューションです。 このソリューションを使用する場合、HTTP GETリクエストを開始することによってのみ、Simple Log Service Logstoreにデータを送信できます。 このソリューションは、静的webページ、オンライン広告、プロモーションドキュメント、モバイルデバイスなどのソースからデータを収集するために検証が必要ないシナリオに適しています。 次の図は、webトラッキング機能の利点を示しています。
Web追跡プロセス
Webトラッキングは、トラッキングピクセルとも呼ばれ、HTMLイメージタグです。 webトラッキングでは、0ピクセルの画像をHTMLページに埋め込むことができ、その画像はデフォルトでユーザーには表示されません。 ページにアクセスしてイメージが読み込まれると、GETリクエストが開始され、関連するパラメーターがサーバーに渡されます。 詳細については、「webトラッキングを使用したログの収集」をご参照ください。
シナリオ
新機能、プロモーションイベント、ゲーム、記事など、生成した新しいコンテンツを、できるだけ早い機会にユーザーに送信したいと考えています。 これは、ユーザーを引き付けるための最初で最も重要なステップです。
たとえば、会社は多額のお金を費やし、10,000広告を配布してゲームを宣伝しました。 2,000の広告はユーザーによってロードされ、広告の総数の20% を占めています。 800ユーザーはロードされた広告を見ました。 ゲームをダウンロードし、アカウントを作成し、ゲームを試したユーザーはほとんどいません。
プロモーションの効果をリアルタイムで監視できれば、より効率的にゲームを宣伝できます。 プロモーションの目標を達成するには、次のチャンネルを使用できます。
内部メッセージ、公式ブログ、ホームページのバナー
テキストメッセージ、メール、リーフレット
Sina Weibo、DingTalkユーザーグループ、WeChat公式アカウント、Zhihuフォーラム、TouTiaoなどの新しいメディア
手順
webトラッキング機能を有効にします。
Simple Log Serviceでmyclickという名前のLogstoreを作成し、Logstoreのwebトラッキング機能を有効にします。
webトラッキングタグを作成します。
1001という名前の記事の各プロモーションチャネルに識別子を追加します。 次に、imgという名前のwebトラッキングタグを作成します。
内部メッセージ (mailDec)
<img src="http://example.cn-hangzhou.log.aliyuncs.com/logstores/myclick/track_ua.gif?APIVersion=0.6.0&from=mailDec&article=1001" alt="" title="">
公式ウェブサイト (aliyunDoc)
<img src="http://example.cn-hangzhou.log.aliyuncs.com/logstores/myclick/track_ua.gif?APIVersion=0.6.0&from=aliyundoc&article=1001" alt="" title="">
メール (メール)
<img src="http://example.cn-hangzhou.log.aliyuncs.com/logstores/myclick/track_ua.gif?APIVersion=0.6.0&from=email&article=1001" alt="" title="">
より多くのチャネルをfromパラメータに追加したり、URLにパラメータを追加してパラメータの値を収集することができます。
プロモーションコンテンツにimgタグを追加し、コンテンツをリリースします。
ログを分析します。
トラッキングポイントに基づいてログを収集した後、Simple Log ServiceのLogSearch/Analytics機能を使用して、大量のログデータをリアルタイムでクエリおよび分析できます。 詳細については、「LogSearch/Analytics」をご参照ください。 Simple Log Serviceは、組み込みのダッシュボードにログ分析結果を表示し、DataV、Grafana、およびTableauに接続してログ分析結果を視覚化できます。 詳細については、「ダッシュボードの作成」、「DataVによるSimple Log Serviceへの接続」、および「GrafanaによるSimple Log Serviceへの接続」をご参照ください。
収集されたログデータを次の図に示します。 検索ボックスにキーワードを入力して、ログをクエリできます。
検索文の後に分析文を入力して、ログデータを分析し、分析結果を秒単位で視覚化することもできます。
クエリ文を作成します。
次の例では、クエリ文を作成してページクリックとPVを取得する方法について説明します。 詳細については、「ログ分析の概要」をご参照ください。
現在の合計トラフィックとPVを照会するには、次のステートメントを実行します。
* | select count(1) as c
PVのトレンドを1時間ごとにクエリするには、次のステートメントを実行します。
* | select count(1) as c, date_trunc('hour',from_unixtime(__time__)) as time group by time order by time desc limit 100000
各チャネルのPVの比率を照会するには、次のステートメントを実行します。
* | select count(1) as c, f group by f desc
PVを起動するデバイスを照会するには、次のステートメントを実行します。
* | select count_if(ua like '%Mac%') as mac, count_if(ua like '%Windows%') as win, count_if(ua like '%iPhone%') as ios, count_if(ua like '%Android%') as android
PVが開始される地理的位置を照会するには、次のステートメントを実行します。
* | select ip_to_province(__source__) as province、count(1) as c group by province order by c desc limit 100
収集されたデータをリアルタイムで視覚化するようにダッシュボードを設定します。