はじめに
しくみ製作所のkitazumiです。 社内で行われている発表会にて、「GoogleAnalyticsを使用せずにwebサイトの滞在時間や作業時間を計測できるアプリ」を発表させていただきました。
なぜ作ったか
まずは、なぜGoogleAnalyticsを使わないのか?という部分についてです。
社内システムなどのクローズな環境で運用されるケースでは、システム内部のデータはもちろんのことアクセスログなどの付随するデータも、自社管理外のサーバーに置くことはセキュリティリスクがあります。よってGoogleAnalyticsが使用できない環境での計測を行えるようにしたかったからです。
もう一つの理由として、こちらが本題になりますがなぜ計測を行うか?という部分についてです。
計測を行うことにより、以下のような効果が期待できます。
- 業務プロセスの効率化
- どの機能やツールをよく利用しているかの把握。機能に対して強化・改善を行える。
- 新機能の開発や改善の方針立案
- PV数や滞在時間を計測することで求められている機能や改善点を把握する事ができる。
これらを考慮して改善点の提案ができるようになることが最大の価値となってきます。
できること
こちらが今回作成したアプリケーション Probe になります。
既存のRailsアプリケーションに組み込むことが可能です。
操作を行った時間を記録を利用して、特定の操作間の時間差を計算することによりユーザーが「この操作からこの操作までにかかった時間」を計測することができます。
計測したい操作にプロセス名とSTARTとFINISHのタグを埋め込むことにより、タグ間の時間の計測ができるようになっています。
計測した時間はProbeのダッシュボードに一覧表示され、検索・並び替えを行うことができます。
技術的な部分
詳細部分はGithubのリポジトリを見ていただければと思います。
アクセスログ・タグの記録にはオープンソースのWeb解析プラットフォーム Matomo を使用しています。
Matomoの記録したタグを集計し、計測対象のアプリケーションのデータベースと接続することによりProbeの表示を実現しています。
Matomoの既存の機能は全て使用できるので、PV数などのアクセス解析はMatomoダッシュボードの方から行えるようになっています。
おわりに
計測と言ってもさまざまな方法があり、今回作成したものも1つの手段にしかすぎません。
最終的な目的はプロダクトの改善になるかと思うので、この部分を忘れないようにしていきたいです。