Bisakah Anda menguji google analytics pada alamat localhost?

279

Saya harus menguji akun GA baru saya di mesin lokal saya.

Apakah ini akan berfungsi hanya dengan menyalin cuplikan standar yang disediakan oleh Google ke halaman?

Saya tidak ingin menghabiskan 24 jam menunggu untuk melihat apakah itu akan berhasil atau tidak.

edwardmlyte
sumber

Jawaban:

345

Pertanyaan ini masih berlaku hingga hari ini, namun teknologinya telah berubah. Pelacak Urchin lama sudah usang dan usang. Kode pelacakan Google Analytics asinkron yang baru menggunakan kode yang sedikit berbeda untuk mencapai hasil yang sama.

Google Analytics Classic - Sintaks Asinkron - ga.js

Sintaksis saat ini untuk mengatur domain pelacakan menjadi tidak ada di google analytics terlihat seperti ini:

_gaq.push(['_setDomainName', 'none']);

Google analytics kemudian akan menjalankan permintaan pelacak _utm.gif di localhost. Anda dapat memverifikasi ini dengan membuka alat pengembang di browser favorit Anda dan menonton permintaan jaringan selama pemuatan halaman. Jika berfungsi, Anda akan melihat permintaan _utm.gif di daftar permintaan jaringan.

Diperbarui 2013 untuk Universal Analytics - analytics.js

Google merilis versi baru analitik yang disebut "Universal Analytics" (akhir 2012 atau awal 2013). Saat saya menulis, program ini masih dalam BETA sehingga kode di atas masih disarankan untuk sebagian besar pengguna dengan instalasi Google Analytics yang ada.

Namun, untuk perkembangan baru menggunakan analytics.jskode baru , Google Analytics, Konfigurasi Lanjutan - Dokumentasi Pelacakan Web menunjukkan bahwa kami dapat menguji Universal Analytics di localhost dengan kode baru ini:

ga('create', 'UA-XXXX-Y', {
  'cookieDomain': 'none'
});

Periksa dokumentasi tertaut untuk detail lebih lanjut tentang konfigurasi lanjutan Universal Analytics.

Perbarui 2019

Tag Situs Global - gtag.jsdan Universal Analytics - analytics.jsakan mendeteksi localhostsecara otomatis. Anda tidak perlu melakukan perubahan apa pun pada konfigurasi.

Jika gtag.js mendeteksi bahwa Anda menjalankan server secara lokal (mis. localhost), Ia secara otomatis menyetel cookie_domainke 'none'.

- developers.google.com

BenSwayne
sumber
5
Baru saja menyelamatkan saya banyak waktu. Terima kasih
atmd
4
Melengkapi jawaban Ben: Anda harus menambahkan baris ini setelah _gaq.push(['_setAccount', 'UA-XXXXXXX-XX']);dan sebelumnya _gaq.push(['_trackPageview']);. Lebih lanjut: tautan
dmmd
2
@JamesMcMahon Google Analytics tidak diversi oleh tahun. (Tidak ada yang namanya "2013 google analytics"). Mungkin Anda merujuk ke "Universal Analytics" yang saat ini dalam BETA?
BenSwayne
1
@JamesMcMahon, mencobanya hari ini (dengan Versi "Klasik", bukan beta "Universal Analytics"), dan berhasil.
Liran Brimer
21
Anda tidak lagi mengaturnya none. Dokumentasi mengatakan: "Selain itu, jika analytics.js mendeteksi bahwa Anda menjalankan server secara lokal (mis. Localhost), maka secara otomatis menetapkan cookieDomain menjadi 'tidak ada'."
mert
60

Diperbarui untuk 2014

Ini sekarang dapat dicapai dengan hanya mengatur domain none.

ga('create', 'UA-XXXX-Y', 'none');

Lihat: https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#localhost

brent
sumber
6
Parameter ketiga sebenarnya harus diatur ke 'none'bukan 'auto'.
Stephen M. Harris
Apakah ini berlaku untuk domain tingkat atas lainnya? Saya menguji perangkat lunak secara lokal dengan domain * .dev dan ini sepertinya juga tidak berfungsi.
Bradley
4
Juga, apakah ada yang tahu cara mengatur ini jika Anda mengonfigurasi GA melalui Google Pengelola Tag?
Bradley
Apakah pengaturan ini ke 'tidak ada' juga bekerja di lingkungan produksi?
vanzylv
9
Opsi 'auto'secara otomatis ditetapkan 'none'untuk Anda dalam suatu localhostlingkungan: Automatic cookie domain configuration sets the _ga cookie on the highest level domain it can. For example, if your website address is blog.example.co.uk, analytics.js will set the cookie domain to .example.co.uk. In addition, if analytics.js detects that you're running a server locally (e.g. localhost) it automatically sets the cookieDomain to 'none'. Lihat di sini
reinaldoluckman
15

Saya memiliki masalah yang sama, dan semua solusi tidak berhasil sampai saya melakukan dua hal:

Kode yang jelas:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXXX-X']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);   
_gaq.push(['_trackPageview']);

DAN

Saya menambahkan localhost FQDN lain - nama domain. Saya melakukan ini pada sistem Windows dengan mengedit:

C:\Windows\System32\drivers\etc\hosts

file, dan saya masukkan sebagai berikut:

127.0.0.1   my.domain.org

Kemudian saya pergi ke alamat http://my.domain.org/WebApp yang melayani halaman dengan menyertakan google analytics JS.

Jika Anda menggunakan unix, edit / etc / hosts untuk hasil yang sama.

Itu berpikir bahwa Google harus meletakkan konfigurasi Intranet di FAQ GA. Mereka hanya mengatakan bahwa Anda membutuhkan FQDA. Ya, benar, tetapi tidak bagi mereka untuk mengakses Anda, Anda hanya perlu memiliki atribut Host dalam permintaan HTTP.

Saya pikir alasan lain untuk FQDN adalah COOKIES! Cookie digunakan untuk melacak data dan jika Anda tidak memiliki FQDN, cookie tidak dapat diatur, dan kode JS berhenti dan tidak mendapatkan gif.

Uros Mesaric
sumber
15

Jawaban untuk 2019

Praktik terbaik adalah menyiapkan dua properti terpisah untuk pengembangan / pementasan Anda, dan server produksi Anda. Anda tidak ingin mencemari data Analytics Anda dengan pengujian, dan menyiapkan filter tidak menyenangkan jika Anda terpaksa melakukannya.

Karena itu, Google Analytics sekarang memiliki pelacakan waktu nyata , dan jika Anda ingin melacak Kampanye atau Transaksi, jeda sekitar 1 menit hingga data ditampilkan di halaman, selama Anda memilih hari ini.

Misalnya, Anda membuat Situs dan Uji Situs, dan masing-masing memiliki kode UA-XXXX-Y .

Dalam logika aplikasi Anda, tempat Anda menyajikan JavaScript analitik, periksa lingkungan Anda dan untuk produksi gunakan Situs Anda UA-XXXX-Y , dan untuk pementasan / pengembangan gunakan Uji Situs satu.

Anda dapat memiliki pengaturan ini sampai Anda mempelajari seluk beluk GA, dan kemudian menghapusnya, atau menyimpannya jika Anda perlu membuat perubahan konstan (yang akan Anda uji pada pengembangan / pementasan terlebih dahulu).

Sumber: pengalaman pribadi, berbagai artikel.

Mugur 'Bud' Chirica
sumber
Anda menyebutkan menggunakan dua tampilan berbeda. Jadi saya membuat entri baru di tab Buat Tampilan. Namun, itu tidak memberi Anda ID pelacakan baru. Saya malah harus membuat entri baru di Buat Properti yang menghasilkan ID pelacakan baru. Saya pikir inilah yang Anda maksudkan, tetapi Google menyebutkan hal-hal yang mirip dengan pilihan kata Anda dan menyebabkan kebingungan.
Breakpoint25
14

Sekarang jawaban untuk pertanyaan Anda adalah ya, itu hanya akan berfungsi dengan menyalin cuplikan standar. Menurut dokumentasi , sekarang snippet standar memiliki konfigurasi domain cookie otomatis: di ga('create', 'UA-XXXXX-Y', 'auto');mana domain cookie ditentukan secara otomatis.

Selain itu, jika analytics.js mendeteksi bahwa Anda menjalankan server secara lokal (mis. Localhost), maka secara otomatis mengatur cookieDomain menjadi 'tidak ada'.

mert
sumber
Saya memeriksa ini dan sepertinya cookie saya Domain diatur ke "localhost" bukannya tidak ada.
Shyamal Parikh
6

Setelah menghabiskan sekitar dua jam mencoba mencari solusi, saya menyadari bahwa saya memiliki adblocker yang memblokir panggilan ke GA. Begitu saya mematikannya, saya senang pergi.

Christoph Anderson
sumber
5

Alat yang lebih mudah untuk memantau tag pelacakan adalah dengan menggunakan ekstensi Chrome (mungkin tersedia, atau setara dengan browser lain) - Google Tag Assistant. Ini akan menunjukkan tag apa yang diaktifkan, masalah apa yang ditemukannya, dan bahkan memecahkan hal-hal seperti nilai eCommerce agar mudah dibaca. Juga berfungsi dengan Google Pengelola Tag, dan dapat menangani beberapa set tag pada halaman.

JezC
sumber
3

Saya hanya ingin menambahkan apa yang telah dikatakan sejauh ini, mungkin menghemat banyak sakit kepala, Anda tidak perlu menunggu 24 jam untuk melihat apakah itu berfungsi, ya total ikhtisar memakan waktu 24 jam, tetapi di tab Pelaporan, ada tautan di sebelah kiri ke hasil Real-Time dan itu akan menunjukkan jika ada orang yang mengunjungi situs Anda, juga saya tidak harus mengatur 'cookieDomain': 'none'agar berfungsi di localhost, pengaturan saya aktif 'auto'dan berfungsi dengan baik (saya menggunakan MVC 5), di atas itu saya telah menambahkan skrip di akhir tag kepala seperti yang dinyatakan google di halaman ini :

Rekatkan cuplikan Anda (tidak diubah, secara keseluruhan) ke setiap laman web yang ingin Anda lacak. Rekatkan segera sebelum </head>tag penutup .

di sini ada info lebih lanjut tentang cara memeriksa untuk melihat apakah analitik berfungsi dengan baik.

Deckard
sumber
3

Sebagai lanjutan dari jawaban Tuong Lu Kim:

Asumsi:

ga('create', 'UA-XXXXX-Y', 'auto');

... jika analytics.js mendeteksi bahwa Anda menjalankan server secara lokal (mis. localhost) maka secara otomatis menetapkan cookieDomain menjadi 'tidak ada'. ...

Kutipan dari:

Konfigurasi domain cookie otomatis menetapkan _ga cookie pada domain level tertinggi yang dapat dilakukannya. Misalnya, jika alamat situs web Anda adalah blog.example.co.uk, analytics.js akan menetapkan domain cookie ke .example.co.uk. Selain itu, jika analytics.js mendeteksi bahwa Anda menjalankan server secara lokal (mis. Localhost), maka secara otomatis mengatur cookieDomain menjadi 'tidak ada'.

Cuplikan pelacakan JavaScript yang disarankan menyetel string 'otomatis' untuk bidang cookieDomain:


Sumber: https://developers.google.com/analytics/devguides/collection/analyticsjs/cookies-user-id#automatic_cookie_domain_configuration

ourmaninamsterdam
sumber
2

Saya menemukan masalah ini baru-baru ini, dan saya merasa terbantu untuk menjelajahi dokumentasi baru oleh Google tentang debugging Analytics . Sebenarnya tidak peduli tentang pengiriman info pelacakan ke Google Analytics, saya hanya ingin memastikan bahwa acara berjalan dengan benar, dan alat debugging memberi saya info yang saya butuhkan. YMMV, saya menyadari tidak tepat menjawab pertanyaan.

AndrewSouthpaw
sumber
0

Bagi mereka yang menggunakan tag manager google untuk diintegrasikan dengan acara analitik google Anda dapat melakukan apa yang orang-orang sebutkan untuk mengatur flag cookies ke none dari GTM itu sendiri

masukkan deskripsi gambar di sini

buka GTM> variable> google analytics variable> dan atur tag cookies menjadi tidak ada

Hasan Daghash
sumber