print() は禁止。Logger(os.log)を使用する。
共通設定
private let logger = Logger(
subsystem: Bundle.main.bundleIdentifier ?? "StudyStopwatch",
category: "[クラス名]"
)
カテゴリ一覧
| カテゴリ | 使用箇所 |
TimerViewModel | タイマー永続化・復元 |
LiveActivityService | Activity start/update/end |
WidgetSyncService | Widget データ同期 |
SubscriptionManager | StoreKit 課金 |
NotificationService | ローカル通知 |
InstagramShareService | シェア機能 |
AppUpdateService | App Store API |
InterstitialAdManager | 全画面広告 |
ログレベル
| レベル | 用途 |
.info | 通常イベント(タイマー開始・停止、セッション保存) |
.warning | 異常だが継続可(Live Activity orphaned、AppGroup nil) |
.error | 機能継続不可(StoreKit verify失敗、SwiftData save失敗) |
プライバシー対応
StoreKitトランザクションID、志望校名、メールアドレス等はログに出さない。
識別子(科目ID、セッションID)は privacy: .public。
変更履歴
| バージョン | 日付 | 変更内容 |
|---|
| 1.0 | 2026-05-09 | 初版作成 |