ホームページ >バックエンド開発 >Golang >Google Analytics を使用して Beego の Web サイトデータをカウントする

Google Analytics を使用して Beego の Web サイトデータをカウントする

王林
王林オリジナル
2023-06-22 09:19:221618ブラウズ

インターネットの急速な発展に伴い、Web アプリケーションの使用がますます一般的になり、Web アプリケーションの使用状況をどのように監視および分析するかが開発者や Web サイト運営者の焦点になっています。 Google Analytics は、Web サイト訪問者の行動を追跡および分析できる強力な Web サイト分析ツールです。この記事では、Beego で Google Analytics を使用して Web サイトのデータを収集する方法を紹介します。

1. Google Analytics アカウントの登録

まず、Google Analytics 公式 Web サイトで Google Analytics アカウントを登録する必要があります。登録が成功したら、Web サイトの訪問を追跡するために使用される新しいトラッキング ID を作成する必要があります。

2. Google Analytics SDK をダウンロードしてインストールします

Beego で Google Analytics を使用するには、Google Analytics SDK を使用する必要があります。 Google Analytics SDK は、GitHub または公式 Web サイトからダウンロードできます。ダウンロードが完了したら、SDK をプロジェクトのベンダー ディレクトリにコピーします。

3. Beego での Google Analytics の設定

Beego で Google Analytics を設定するには、関連する設定を app.conf 設定ファイルに追加する必要があります。具体的な設定項目は以下の通りです。

# Google Analytics配置
google_analytics_enabled = true
google_analytics_id = "UA-XXXXXXXX-X"

このうち、google_analytics_enabledはGoogle Analyticsを有効にするかどうかを示し、google_analytics_idはGoogle Analyticsの登録時に作成されるトラッキングIDです。 。

4. Beego での Google アナリティクスの実装

Beego で Google アナリティクスを使用するには、コントローラーに対応するコードを実装する必要があります。具体的な実装プロセスは次のとおりです。

  1. Google Analytics ライブラリのインポート

Google Analytics ライブラリをコントローラにインポートします:

import (
    "github.com/kpango/glg"
    "github.com/satori/go.uuid"
    "google.golang.org/api/analytics/v3"
)

ライブラリの後インポートされている場合は、それを使用できます。 Google Analytics が提供するインターフェースは、データの統計を実行します。

  1. Google Analytics コード ロジックの実装

Google Analytics コード ロジックをコントローラーの Init 関数に実装します。コード ロジックは次のとおりです:

// 初始化Google Analytics客户端
cfg, err := google.ConfigFromJSON(jsonKey, analytics.AnalyticsReadonlyScope)
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}
client := getClient(ctx, cfg)

// 通过Google Analytics API获取跟踪信息
analyticsService, err := analytics.New(client)
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

uuid, err := uuid.NewV4()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

referer := utils.GetReferer(ctx)
userAgent := utils.GetUserAgent(ctx)

pageview := &analytics.Pageview{
    Hostname:  ctx.Input.Domain(),
    Path:      ctx.Request.RequestURI,
    Referer:   referer,
    UserAgent: userAgent,
}

// 发送跟踪信息
_, err = analyticsService.Data.Ga.Get(
    fmt.Sprintf("ga:%s", beego.AppConfig.String("google_analytics_id")),
    startTime.Format(dateGoFormat),
    endTime.Format(dateGoFormat),
    "ga:uniquePageviews",
).
    Filters(fmt.Sprintf("ga:eventLabel==%s", uuid.String())).
    Do()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

_, err = analyticsService.Data.Realtime.Get(
    fmt.Sprintf("ga:%s", beego.AppConfig.String("google_analytics_id")),
    "rt:activeUsers",
).
    Filters(fmt.Sprintf("ga:eventLabel==%s", uuid.String())).
    Do()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

_, err = analyticsService.Management.Webproperties.Get(
    "~all",
    fmt.Sprintf("ga:%s", beego.AppConfig.String("google_analytics_id")),
).
    Do()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

_, err = analyticsService.RealtimeData.Ga.Send(
    fmt.Sprintf("ga:%s", beego.AppConfig.String("google_analytics_id")),
    &analytics.GaData{
        Rows: [][]*analytics.GaDataColumn{
            {
                {Value: uuid.String()},
                {Value: referer},
                {Value: userAgent},
            },
        },
    },
).
    Do()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

_, err = analyticsService.Data.Ga.Post(
    fmt.Sprintf("ga:%s", beego.AppConfig.String("google_analytics_id")),
    startTime.Format(dateGoFormat),
    endTime.Format(dateGoFormat),
    "ga:eventLabel,ga:eventCategory",
    analytics.PostBody{
        Rows: [][]string{
            []string{uuid.String(), "Beego Application"},
        },
    },
).
    Do()
if err != nil {
    glg.Error("[Google Analytics] ", err)
    return
}

上記のコードでは、まず Google Analytics クライアントを初期化し、次に Google Analytics が提供するインターフェースを通じて、Web サイトの訪問、訪問者のアクティビティなどの Web サイト追跡情報を取得します。最後に、Google Analytics API を使用して追跡情報を送信します。

5. Beego アプリケーションの起動

上記の手順を完了すると、Beego アプリケーションを起動して Web サイトにアクセスできます。訪問が完了したら、Google Analytics アカウントにログインして、Web サイト訪問データを表示できます。

概要

この記事では、Beego で Google Analytics を使用して Web サイト データを収集する方法を紹介します。これには、Google Analytics アカウントの登録、Google Analytics SDK のダウンロードとインストール、Beego での Google Analytics の設定、およびGoogle Analytics およびその他の関連手順を実装します。 Google Analytics を使用すると、開発者や Web サイト運営者が Web サイトの訪問状況を把握できるようになり、Web サイトが最適化され、ユーザー エクスペリエンスが向上します。

以上がGoogle Analytics を使用して Beego の Web サイトデータをカウントするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。