System Activity入門 よくある質問と回答を紹介します!

※ 本投稿は Looker Advent Caledar 2022 12/8分の記事です。

こんにちは!12月に入っていきなり寒くなって驚いています。記事を見ていただいた方、暖かくしてお過ごしください〜!

今回はSystem Activity について入門記事を書きます。これから使用を検討している方への参考や、すでに使い倒している方のおさらいになれば幸いです。

Lookerでは、通称internal DBと呼ばれているアプリケーションデータベース内に、ユーザー、コンテンツ、クエリ履歴などの情報を保存しています。情報によっていくつかのテーブルがあり、System ActivityのExplore/Dashboardを使用するとそれらのテーブルにクエリを発行し情報を閲覧することができます。

System Activityをうまく使用すると監視や測定にとても役に立つので、是非この機に使用してみてください。

この記事はLookerのユーザー様からよくいただく質問に回答する形式で記載していこうと思います。

質問1

  • LookMLを編集してSystem ActivityのExploreにカラムを追加したい。

回答

  • System ActivityのLookMLは編集できない

    • System ActvitiyにはLookMLモデルがあるのですが、これはビルドインモデルとなっておりユーザーからは編集できません。すなわち、LookMLを編集してカラムを追加したり、キャッシュポリシーを変更したり派生テーブルを作成することはできません。

    • カスタムフィールド(Custom Measure, Custom Dimension, 表計算)、Merged Resultsは使用できます。独自にフィールドを追加したり簡単な計算を行いたい場合はこれらの機能を使用してみてください。

質問2

  • System Activityのデータが更新されていない気がする。

  • System Activityのデータを配信するスケジュールを設定したが、最新のデータが配信されない。

回答

  • キャッシュに注意

    • System ActivityではビルドインLookMLモデル内でキャッシュの設定がされており、質問1の回答に記載の通り、System ActicityのLookMLモデルはユーザー様から編集できないため、キャッシュポリシーの変更は不可能です。詳しくはこちらをご覧ください。

    • 現状の仕様では、下記のテーブルには12時間のキャッシュが設定されているようです。そのほかは1時間です。

      • content_usage

      • dashboard

      • event_attribute

      • history

      • look

      • pdt_event_log

      • scheduled_plan

      • user

    • キャッシュではなくリアルタイムの結果を閲覧する方法

      • Explore / Look / Dashboard

        • Lookerインスタンス上でExplore/dasboardを実行する際にClear Cache and Refreshを選択して実行してください。

      • アラート・スケジュール

        • アラートやスケジュールは、実行時にクエリの有効なキャッシュがある場合は、DBにクエリを投げずキャッシュされた結果を配信します。つまり、スケジュール実行のタイミングによっては最新のデータを取得してこない場合があります。例えば30分おきにスケジュールを飛ばす場合、キャッシュポリシーが1時間のSystem Actiity Exploreでは、前回のスケジュール配信で実行したクエリのキャッシュが残っていることがあるため、前回と同じ結果が配信される場合があると思います。

        • 回避策として、Lookerのアラートやスケジューラー機能を使用せず、Lookerの提供するAPIを使用してスクリプトを作成いただき、システムアクティティのクエリの結果をキャッシュなしで取得し、結果を使用して通知処理を実行するスクリプトを組むと良いと思います。例えばAPIのRun Queryエンドポイントをcache=falseのパラメーターを指定して実行するとキャッシュを参照しないクエリの結果が取得できます。この結果をもとに処理を作成するイメージです。APIでのクエリの実行につきましてはこちらのクラスメソッド様の記事が分かりやすかったので参考になればと思い共有させていただきます。

質問3

  • System Activityの各Explore、フィールドの定義がわからない

回答

  • 各Exploreで何ができるかはこちらに記載があります。具体的なExploreのサンプルリンクもあるので使用してみてください。

  • フィールドの定義は、Explore上でフィールド名にマウスオーバーした時に表示されるiマークをクリックすると表示されます。

質問4

  • System Activityが見れない

回答

  • 正しい権限が付与されていない可能性があります。Adminユーザー及びsee_system_activityの権限が付与されているユーザーがSystem Activityにアクセスできます。

質問5

  • よく使うSystem ActivityのExploreを教えてください。

回答

  • XXを表示するにはどうすればよいか?とご質問いただくことの多いExploreを紹介します。リンクの部分をお使いのインスタンス名に置き換えてご活用ください。

スケジュール関連

  • 実行途中で完了していないスケジュールjobを表示します。

116fda76-73c7-4f1a-b9d5-0b99346fb31e.png
https://<インスタンス名>.looker.com/explore/system__activity/scheduled_plan?fields=scheduled_plan.id,scheduled_plan.name,scheduled_job.id,scheduled_job.created_time,scheduled_job.status&f[scheduled_job.created_time]=NOT+NULL&f[scheduled_job_stage.completed_time]=NULL&f[scheduled_job.status]=&sorts=scheduled_job.created_time+desc&limit=500&vis=%7B%7D&filter_config=%7B%22scheduled_job.created_time%22%3A%5B%7B%22type%22%3A%22%21null%22%2C%22values%22%3A%5B%7B%22constant%22%3A%2260%22%2C%22unit%22%3A%22sec%22%7D%2C%7B%7D%5D%2C%22id%22%3A0%2C%22error%22%3Afalse%7D%5D%2C%22scheduled_job_stage.completed_time%22%3A%5B%7B%22type%22%3A%22null%22%2C%22values%22%3A%5B%7B%22constant%22%3A%2260%22%2C%22unit%22%3A%22sec%22%7D%2C%7B%7D%5D%2C%22id%22%3A1%2C%22error%22%3Afalse%7D%5D%2C%22scheduled_job.status%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22%22%7D%2C%7B%7D%5D%2C%22id%22%3A2%2C%22error%22%3Afalse%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded
  • エラー終了したスケジュールjobを表示します。
b1971e8e-769e-4ae2-b164-277aff1db61c.png
https://<インスタンス名>.looker.com/explore/system__activity/scheduled_plan?fields=scheduled_plan.id,scheduled_plan.name,scheduled_job.id,scheduled_job.created_time,scheduled_job.status,scheduled_job.status_detail&f[scheduled_job.created_time]=NOT+NULL&f[scheduled_job.status]=failure&sorts=scheduled_job.created_time+desc&limit=500&vis=%7B%7D&filter_config=%7B%22scheduled_job.created_time%22%3A%5B%7B%22type%22%3A%22%21null%22%2C%22values%22%3A%5B%7B%22constant%22%3A%2260%22%2C%22unit%22%3A%22sec%22%7D%2C%7B%7D%5D%2C%22id%22%3A0%2C%22error%22%3Afalse%7D%5D%2C%22scheduled_job.status%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22failure%22%7D%2C%7B%7D%5D%2C%22id%22%3A2%2C%22error%22%3Afalse%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded

ダウンロード関連

  • Renderを必要としないダウンロード(excel, csv, txt, jsonなど)の履歴を表示します。

00818a43-16d7-41a3-8041-99cbfac4e5db.jpg
https://<インスタンス名>.looker.com/explore/system__activity/event_attribute?fields=event.created_time,user.name,event_attribute.event_id,event_attribute.name,event_attribute.value&f[event.category]=query&f[event.name]=%22export_query%22&sorts=event.created_time+desc&limit=5000&vis=%7B%7D&filter_config=%7B%22event.category%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22query%22%7D%2C%7B%7D%5D%2C%22id%22%3A0%2C%22error%22%3Afalse%7D%5D%2C%22event.name%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22export_query%22%7D%2C%7B%7D%5D%2C%22id%22%3A4%2C%22error%22%3Afalse%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded
  • Renderを必要とするダウンロード(PDF, png)の履歴を表示します。

08a6720c-226c-41be-a6ca-d18695eed094.jpg
https://<インスタンス名>.looker.com/explore/system__activity/event_attribute?fields=event.created_time,user.name,event_attribute.event_id,event_attribute.name,event_attribute.value&f[event.category]=render&f[event.name]=&sorts=event.created_time+desc&limit=5000&vis=%7B%7D&filter_config=%7B%22event.category%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22render%22%7D%2C%7B%7D%5D%2C%22id%22%3A0%2C%22error%22%3Afalse%7D%5D%2C%22event.name%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22%22%7D%2C%7B%7D%5D%2C%22id%22%3A4%2C%22error%22%3Afalse%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded

クエリ関連

  • クエリ履歴を表示します。Admin > Queriesでは直近のクエリのみ表示されますが、このExploreを使えばもう少し遡って表示できます。

ac97fc10-4a05-4640-b721-c8cc440b3af3.jpg
https://<インスタンス名>.looker.com/explore/system__activity/history?fields=history.created_time,history.id,history.source,dashboard.id,look.id,user.name,history.connection_name,history.status,query.model,query.view,query.link&sorts=history.created_time+desc&limit=500&vis=%7B%22show_view_names%22%3Afalse%2C%22show_row_numbers%22%3Atrue%2C%22transpose%22%3Afalse%2C%22truncate_text%22%3Atrue%2C%22hide_totals%22%3Afalse%2C%22hide_row_totals%22%3Afalse%2C%22size_to_fit%22%3Atrue%2C%22table_theme%22%3A%22white%22%2C%22limit_displayed_rows%22%3Afalse%2C%22enable_conditional_formatting%22%3Afalse%2C%22header_text_alignment%22%3A%22left%22%2C%22header_font_size%22%3A12%2C%22rows_font_size%22%3A12%2C%22conditional_formatting_include_totals%22%3Afalse%2C%22conditional_formatting_include_nulls%22%3Afalse%2C%22type%22%3A%22looker_grid%22%2C%22defaults_version%22%3A1%7D&filter_config=%7B%7D&dynamic_fields=%5B%5D&origin=share-expanded
  • クエリがキャッシュを参照したかしていないか

    • こちらに詳しく記載があるので是非ご覧ください。

  • Dashboardやクエリのパフォーマンス

    • こちらに詳しく記載があるので是非ご覧ください。

PDT関連

  • PDTのRegeneratorがトリガーしているか表示します。設定した間隔(デフォルトでは5分)で実行されていれば問題ないです。Regeneratorに関する説明はこちらをご覧ください。

feeca7bc-9265-4958-a38b-23c9f1304ca3.jpg
https://<インスタンス名>.looker.com/explore/system__activity/pdt_event_log?fields=pdt_event_log.created_time,pdt_event_log.connection,pdt_event_log.action,pdt_event_log.pdt_trigger_failures,pdt_event_log.action_data&f[pdt_event_log.action]=%22datagroup_triggers+begin%22&sorts=pdt_event_log.created_time+desc&limit=500&vis=%7B%7D&filter_config=%7B%22pdt_event_log.action%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22datagroup_triggers+begin%22%7D%2C%7B%7D%5D%2C%22id%22%3A1%2C%22error%22%3Afalse%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded

ユーザー関連

  • ログイン状況を監視できます。Lookerをあまり使用していないユーザーを見つけてライセンスを効率的に管理するのに役に立ちそうです。

5fa052c0-7a4c-480a-9a42-92f763839c0c.jpg
https://<インスタンス名>.looker.com/explore/system__activity/user?fields=user.id,user_facts.last_ui_login_time,user_facts.last_api_login_time,user_facts.last_ui_login_credential_type,user.name&f[user.is_disabled]=No&sorts=user.id&limit=500&query_timezone=America%2FNew_York&vis=%7B%7D&filter_config=%7B%22user.is_disabled%22%3A%5B%7B%22type%22%3A%22is%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22No%22%7D%2C%7B%7D%5D%2C%22id%22%3A2%2C%22error%22%3Afalse%7D%5D%7D&origin=share-expanded


 

以上です。今回こちらの記事で紹介しているもの以外にもたくさん使用方法があるので、是非ご活用ください!

4 0 422