Skip to content

位置ログ・ログイベントの保管期間を決めて自動削除を実装する #36

Description

@TinyKitten

背景

MobileApp のテレメトリを本番でオプトイン可能にするには、プライバシーポリシーの改定が必須(TrainLCD/MobileApp#6982docs/telemetry-production-optin-risk.md)。現行ポリシーは保管期間を「一定の期間」としか書いておらず、位置情報については「サーバー上に保管されることはありません」と書いてある。本番でテレメトリを受けるならどちらも実態に合わせて書き換える必要があり、ポリシーに書く日数を決められるのは基盤側

現状

  • location_logs / log_events / interaction_events は PostgreSQL に永続化されるが、削除の仕組みが見当たらない(retention / purge などで grep しても該当なし)。
  • つまり現状は無期限保管。

やりたいこと

  • テーブルごとの保持日数を決めて、期限切れ行を定期削除する
  • 保持日数は設定で変更できること
  • 削除がトランザクション量的に無理のない形で回ること(バッチ削除、インデックス)

検討点:

  • 位置ログとログ・インタラクションで保持日数を分けるか(locationFreeze*from/to は最大 90 日スパンを許容しているので、回帰チェック用途としては最低でもそれを下回らない値が要る)
  • 集計だけ残して生データを落とす選択肢(accuracyByLine は集計なので、生の座標を消しても成立しうる)

受け入れ条件

  • テーブルごとの保持日数が設定可能で、既定値が決まっている
  • 期限切れ行が自動で削除される(手動運用に依存しない)
  • 保持日数と削除対象が README か docs に書かれている(プライバシーポリシーの記載根拠になる

優先度

本番オプトインの前提条件。ポリシー改定の文面がこの値に依存する。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions