サービス・ピンのレビューガイドライン

このページには、Analytics Instrumentationのレビューのための入門的な資料が含まれており、Service Ping関連のレビューに特化しています。より広範なアドバイスやコードレビューの一般的なベストプラクティスについては、コードレビューガイドを参照してください。

レビュアー向けリソース

レビュープロセス

マージリクエスト((MR) )が以下のサービス Ping ファイルのいずれかに触れた場合、アナリティクス インストゥルメントのレビューをお勧めします:

ロールとプロセス

マージリクエスト作成者は次のことを行う必要があります。

  • Analytics Instrumentation レビューが必要かどうかを決定します。変更が Analytics Instrumentation ドメインに関連せず、通常のバックエンドの変更である場合は、Analytics Instrumentation レビューをスキップしてラベルを削除できます。
  • Analytics Instrumentation レビューが必要な場合は、ラベル~analytics instrumentation~analytics instrumentation::review pending を追加します。
  • Analytics Instrumentationチームメンバーが作成したマージリクエストの場合:
    • ~backend~analytics instrumentation の両方のレビューを別の Analytics Instrumentation チームメンバーに割り当てます。
    • メンテナーのレビューをAnalytics Instrumentationグループ以外の人に割り当てます。
  • Analytics Instrumentation チームのエンジニアをレビューに割り当てます。
  • メトリックの YAML 定義に正しい属性を設定します:
    • product_section,product_stageproduct_group
    • メトリクスの明確な説明。
  • ガイドラインに従って変更履歴を追加してください。

Analytics Instrumentationのレビュアーは以下のことを行ってください。

  • マージリクエストのファーストパスレビューを行い、作成者に改善を提案します。
  • Service Ping JSON ペイロード内のメトリックの場所を確認します。
  • データベースに基づくメトリクスについては、~database ラベルを追加し、データベースのレビューを依頼します。
  • クエリの変更があるデータベース・メトリクスには、~Data Warehouse::Impact Check を追加します。クエリの変更は、データ・オペレーションに影響する可能性があります。
  • Redis HLL (HyperLogLog) を使用したトラッキングの場合:
  • メトリクスのYAML定義について:
    • メトリックのdescription を確認してください。
    • メトリックのkey_path を確認してください。
    • product_section,product_stage,product_group フィールドをチェックします。ステージファイルを読んでください。
    • ファイルの場所をチェック。時間枠と、ファイルがee の下にあるべきかどうかを検討。
    • 階層をチェック。
  • メトリクスが変更または削除された場合:MR の作成者が Customer Success Ops チーム (@csops-team)、Analytics Engineers (@gitlab-data/analytics-engineers)、Product Analysts (@gitlab-data/product-analysts) に通知したことを確認します。@ は、MR のイシューのコメントでこれらのグループに言及し、これらのグループすべてが削除を承認していることを確認します。
  • key_path を新しいメトリックの key_path に置き換えて、Gitlab::Usage::ServicePingReport.for(output: :all_metrics_values).dig(*'key_path'.split('.')) を実行して、新しいメトリックが Service Ping ペイロードで利用可能であることを確認してください。
  • メトリクス・インストルメンテーション
    • 可能であれば、新しいメトリクスにメトリクス・インスツルメンテーションを使用することをお勧めします。
  • MR を承認し、MR のラベルを~"analytics instrumentation::approved" に変更します。

ディストリビューションのレビュー

Danger botは、変更されたAnalytics Instrumentationファイルのリストを追加し、ドラフトではないマージリクエストについて@gitlab-org/analytics-section/analytics-instrumentation/engineers グループにpingを送信します。

Analytics Instrumentation エンジニアのいずれかを Analytics Instrumentation レビューに割り当てることができます。