技術ブログ
技術ブログ
2018年12月28日
このエントリーをはてなブックマークに追加

Integromatを使用してGoogle Analyticsから情報を取得しNew Relic Insightにデータをプッシュしてみよう!

今回はIntegromatを使用してGoogle Analyticsから情報を取得しNew Relic Insightにデータをプッシュしグラフに表示してみたいと思います。

New Relic Insightに関しては12月18日のセミナで弊社のスタッフから紹介をさせて頂きました。そのプレゼン時にGoogle Analyticsから取得した情報をInsightに反映させるというデモンストレーションを実施しました。このブログではGoogle Analyticsから情報を取得してNew Relic Insightにデータをプッシュしグラフに表示するというところまでIntegromatを使用して試してみたいと思います。

プログラムが書ければIntegromatを使用する必要ないのですがが、サーバを立てたりプログラム書くのに抵抗がある方もいらっしゃると思いますので、選択肢の一つとしてご紹介させていただきたいと思います。

個人的には今後BizDevOpsで技術以外の人がかかわってくる中、スピード感出しながら進めていこうと思ったときに共通スキルとして学習コストのかかるプログラム言語の習得を目標とするよりも、こういった簡易的に使える自動化ツールが役に立つ状況もあるのではないかなと思っています。万能な手法は存在せず、特定の状況において有効な手法があるだけだと思っているので、ケースバイケースで使い分けて頂ければと思います。

また、前回のセミナの資料は下記サイトから見れますのでご興味あれば見てください。セミナも月一程度で開催していますので興味のある方は参加いただければと思います。

<セミナの資料>
・リアルタイム分析プラットフォーム「Insight」を活用しよう!
・クライアントサイドのパフォーマンスを監視する!「New Relic Browser & Synthetics」
 

<参考資料>
あと、New Relic Insightにデータを表示させるあたりは弊社のチームメンバがブログ書いてたりしますのでこちらも参照ください。
・Google AnalyticsのデータをNew Relic Insightsに表示してみる
 

それでは本題に入りたいと思います。このページを見ている方の多くはIntegromatの基本的なオペレーションは理解していると思われますでの細かい部分は省きながら説明をします。

  1. 完成イメージ
    1. まず初めに完成したシナリオのイメージを見てみます。全体の処理の流れですがGoogle Analyticsからデータを取得し、そのデータをJSON形式に変換した後にHTTPでNew Relic Insightにデータをプッシュする、となっています。
    2. その結果表示されるInsightの画面は下記のようになります。
  2. Integromatの設定
    1. Google Analyticsモジュールの設定
      1. まずはSenarios→Create a new senarioより新しシナリオを作成し、最初のモジュールにGoogle Analyticsを選択してください。
      2. 次にGoogle Analyticsモジュールの選択をし、取得するデータを以下のようなイメージで選択し、最後にOKを押します(今回はグラフの表示を確認したいだけなので、項目は適当に選択しています)。
    2. JSONモジュールの設定
      1. Google Analyticsから取得したデータをJSON形式に変換します。これは、New Relic Insightにデータを渡す際にJSON形式でないといけない為なのですが、この辺りもIntegromatを使用して簡単に処理できるのでありがたいですね。まず、JSONモジュールの中からCreate JSONを選択してください。
      2. モジュールを選択してData structureを選択するのですが、まだ定義していないと思いますので、Addボタンを押し新たに定義します。
      3. Data structureの定義はJSONファイルを読み込ませで一気に作成することも出来ますし、itemを一つずつ追加して定義することも出来ます。Data structure nameフィールドに任意の名前を付けた後にSpecificationフィールドのAdd itemを選択してください。
      4. このitemのNameフィールドに任意の名前を入れて、Typeでデータのタイプを選びます。プルダウンを選択するとデータのタイプ(Array, Collection, Date, Text, Number, Boolean, Binary Data)が選択できますのでGoogle Analyticsから取得したデータに合わせたタイプを選択します。
      5. 今回私は以下のようなData structureを定義しました。
      6. 定義した後に下記のように設定します。eventTypeフィールドに記載する文字は後程New Relic Insightで選択するので識別しやすいものがよいと思います。sessionフィールドにはGoogle Analyticsから取得したデータを選択しています。
    3. HTTPモジュールの設定
      1. Integromatの最後の設定はHTTPモジュールを使ってJSON形式に変更したデータをNew Relic Insightにプッシュする処理です。HTTPモジュールを追加してACTIONSからMake a requestを選択します。
      2. モジュールの設定は下記のようになります。URLはhttps://insights-collector.newrelic.com/v1/accounts/account_id/eventsになります。MethodはPOSTを選択してBody typeをRaw、Content typeをJSONにしてRequest contentには先ほど作成したJSONのデータを選択します。あとはHTTP Headerを追加します。HTTP Headerの追加ではNameにX-Insert-Keyを指定しValueにAPI Keyを貼り付けます。account_idは皆様が利用している各環境のaccount_idを使用してください(New Relic のサービスURLのaccounts/の次に来る数字がaccount_idになります)。また、API Keyに関しては次の項で触れます。
  3. New Relic Insightの設定
    1. Integromatの次はNew Relic Insightの設定になります。大きくはAPI Keyの取得とデータの表示になります。これに関しては弊社のチームメンバが書いているブログが参考になると思いますのでそちらを参考にしてください。
      ・Google AnalyticsのデータをNew Relic Insightsに表示してみる

以上で設定は終了です。Integromatでシナリオを実行すればNew Relic Insightにデータが送信されグラフが表示されます。うまく動作していれば最初に紹介したようなグラフがNew Relic Insight上で確認できます。取得するデータやグラフ成形に関しては環境に応じてカスタマイズしてあげてください。New Relic InsightはNew Relic APMやNew Relic Infrastructureで取得したアプリケーションのパフォーマンスやサーバインフラの情報を統合して表示するだけではなく、ビジネス関連の情報も同時にダッシュボードに出力できることがわかりました。一つのダッシュボード上に様々な情報をまとめ組織横断で分析することでよりBizDevOpsが促進されるのではないかと考えます。

それではまた

このエントリーをはてなブックマークに追加

PROプランのすべての機能を
14日間無料でお試し

新規無料登録いただくとPROプランのすべての機能を
14日間無料でお試しいただけます。
クレジットカードなど決済情報の登録は不要です。

各プランの詳細はこちらからご確認ください。