fc2ブログ
プロフィール

けい

Author:けい
公開したWebサービス・アプリ一覧はこちら

※2014年12月、私が個人で開発したWebサービス・アプリへの
累計アクセス数は8億を超えました。
負荷対策頑張ります。日々精進していきます!!


■■■ 業務経歴 ■■■
社会人1年目:携帯電話開発。画面周りを1年間
2年目 :海外向け携帯電話ミドルウェア開発
     ブラウザとプロトコルスタック周り
2年目後半~:携帯電話の通信専用チップ開発
3年目:カーナビ。画面周りの開発
3年目後半~:BDビデオカメラ
     組み込みLinux カーネルと
     ドライバの開発。
4年目12月:プロジェクト途中で退社
~ここまではC、またはC++で開発~

~ここからJavaがメインの開発~
4年目1月:Web系の会社に転職
       ~4ヶ月間の研修
5年目5月:製造業向け生産管理システム開発
6年目9月:証券会社向けシステム開発
7年目10月~携帯電話向けコミックサイトの運用・開発
8年目12月:プロジェクト途中で退社

~ここからPHPがメインの開発~
8年目1月~仲介手数料が無料の不動産屋の社内SEに転職
交渉しほぼ完全に裁量労働が可能な立場になる。
業務内容はシステム全般ですが、
最近はSEO対策の作業が多いです。
現在14年目 まだ、しばらくはこの会社に居るつもりです。

あと、全ての記事がリンクフリーです。

最近の記事

過去ログ

全ての記事を表示する

全ての記事を表示する

カテゴリー

FC2カウンター

RSSフィード

Google AnalyticsでIPアドレスを表示できるタグ「analyticsIP」を公開

Google AnalyticsでIPアドレスを表示する方法。
現在進行形で不正クリックとかされていて、急いでいる方の為にやり方だけ先に書きます。

-- 2014年4月26日追記 ユニバーサルアナリティクス(2014年以降にアナリティクスタグを発行した方)は
-- 修正箇所が異なりますので、本ページを読んだ上でこちらの方法でタグを修正して下さい。


<!-- ①「analyticsIP」読み込み処理。アナリティクス解析タグの上に設置すること -->
<script type="text/javascript" src="//www.analyticsip.net/getIP/public_html/ra/script.php"></script><noscript><p><img src="//www.analyticsip.net/getIP/public_html/ra/track.php" alt="" width="1" height="1" /></p></noscript>

<!-- ②使用しているアナリティクスタグに1行追加 -->
<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-1268739-2']);

// 追加箇所ここから(必ず「_trackPageview」よりも上に追加して下さい)
_gaq.push(['_setCustomVar',1,'IP' , trackCommonMethod.getIP() ,1]);
// 追加箇所ここまで


_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>


以上。
上記のようにタグを変更するとアナリティクスのカスタム変数(値1)で
IPを表示することが可能です。

ip_20130128001446.jpg


解説
①の「analyticsIP」タグでクッキーの発行とIPアドレス、現在時刻、アクセス先URLの取得などを行なっています。
②で①で取得したIPアドレスをアナリティクスに渡しています。


上記サンプルではIPアドレスのみを取得していますが、
クッキー(のID)、現在時刻、URLもそれぞれ以下の関数を使用することにより取得可能です。

IP: trackCommonMethod.getIP()
クッキー: trackCommonMethod.getCookie()
現在時刻: trackCommonMethod.getAccessTime()
URL: trackCommonMethod.getRequestURI()

必要な箇所をコピペして使用して下さい。

// IP カスタム変数(値1)
_gaq.push(['_setCustomVar',1,'IP' , trackCommonMethod.getIP() ,1]);
// クッキー カスタム変数(値2)
_gaq.push(['_setCustomVar',2,'Cookie' , trackCommonMethod.getCookie() ,1]);
// 現在時刻 カスタム変数(値3)
_gaq.push(['_setCustomVar',3,'Time' , trackCommonMethod.getAccessTime() ,3]);
// URL カスタム変数(値4)
_gaq.push(['_setCustomVar',4,'URL' , trackCommonMethod.getRequestURI() ,3]);




使用条件
今のところ特にありませんが無保証です。


開発の経緯
ほとんどの会社が広告やSEOの成果をグーグルアナリティクス(以下GAと記載)で確認していると思うのですが、
GAではIPアドレスを調べることができません。
IPアドレスの表示は難しいプログラムではないのですが、Web上では困っている人が多いようなので
多分、エンジニアがあんまり興味が無い類の技術なのだと思います。

予想ですがエンジニアならばアクセスログから追うことができる為にIP表示は不要であり
経営に関わる人達や広告会社はGAの仕様と、プログラムの難易度を知らないので、
「できない」という情報だけが拡散してしまったのかなと思います。

作ってみたので、お試しで使ってみて良いと思ったら使い続けても良いですし、
外部サイトのタグを入れたくないということであれば
誰かにプログラムを依頼すればいいと思います。



便利な使い方とか詳細な仕様とか
ここまで読んで、IPアドレスはわかるけれど、クッキーとか、現在時刻、URLって何に使うの?と思った方、
もしくはどうやって使おうかと考えている人はかなりセンスがいい人だと思います。
想定している用途は不正クリック対策です。

例えば広告媒体の管理画面では「誰が」何回クリックしたか?ということはわかりません。
アナリティクスも同様に「誰が」何回クリックしたか?ということは調べることができません。

競合する会社は暇な時間などにクリックを繰り返すので、
どのユーザーもしくは会社がどんなキーワードで月に何回クリックしているか?ということを
知ることは重要です。
特に固定IPでは無い会社やモバイルを使用するクリックなどは、IPベースで調査を行ったとしても
端末の特定や集計が難しい状況でした。

ところがクッキーベースで出力すると、クッキーを削除しない限り
追うことが可能になります。
さすがにプロの不正クリック業者には通用しない手段だとは思いますが、
私の会社の過去の不正クリックだけで言えば、不正クリックはほとんどが素人のライバル業者なので
十分効果を出すことができます。

そして習慣のようにクリックしている人達が、
会社や固定IPの場所からクリックを繰り返したりすれば、
過去の不正クリックを含めて法的な圧力をかけることも可能になります。



実際のタグの応用例
ユニークユーザーの動線分析
(ほぼ)生アクセスログの表示


現在時刻の仕様
戻り値のフォーマットは「yyyyMMdd_hhmm_ss」
例:2013年1月28日1時9分6秒ならば「20130128_0109_06」
また時刻はアクセスしてきたユーザーのPCの時刻ではなく、サーバー側の時刻を使用しているため
海外ユーザーからのアクセスでも時差なく表示されます。


クッキーの仕様
クッキーは有効期限1年間のクッキーを各ブラウザごとに発行します。
既にクッキーが存在すれば期限の更新だけを行います。



URLの仕様
URLエンコードされたURLを戻します。
よって / (スラッシュ)が「%2F」などになっています。
URLデコードしながら見て下さい。


謝辞
本機能を短期間で開発できたのは
Research Artisan Liteの素晴らしいコードを大部分流用できたからです。
開発者のossi様は、現在は後継サービスである
Research Artisan Pro - リサーチアルチザンプロ」を格安で提供しています。
アクセス解析に興味が御座いましたら、こちらのサービスも是非一度検討願えればと思います。


更新履歴
-- 2014-04-26 --
ユニバーサルアナリティクスでのIP、cookie取得方法を追記

-- 2013-11-08 --
タグのドメインの変更を行いました。
旧タグのドメインは「u-tw.com」、新タグのドメインは「analyticsip.net」となっております。

旧タグでは今後、新たな負荷対策は行いませんので、
新タグへの変更を推奨致します。

変更理由は中々使って下さる方が多いようなので、
より負荷を考慮した設計で応答速度を安定させたかった為です。

スポンサーサイト



コメント(2)   2013.01.28    [ Myカテゴリ:アクセス解析 ]

コメント

けいさんのscript.phpとtrack.phpを大変有難く利用させていただいております。
参考にして、IPアドレスを取得しましたが、取得したIPアドレスが、
例)1234567890.1234567890
と、すべて10桁+10桁の形式で表示されます。また他の方法でIPアドレスを取得すると、同じ日・同じ時間でページを踏んだ人のIPアドレスが
例)192.123.456.789
と、こちらではよく見る形式で表示され一致しません。前者のようになるのはそういう仕様なのでしょうか?
2020.10.30 11:58 URLAkasakaHayata#- - 編集
念の為、挙動を確認してみたのですが、
当方では一般的な形式でIPアドレスが取得できておりました。

これ以上の調査はこちら側では難しいです。
URLを教えて頂ければタグの設置状況を
確認することはできます。
2020.11.02 19:07 URLけい#- - 編集

コメントの投稿













管理者にだけ表示を許可する

Template Designed By
ぐらいんだぁ