@@ -98,4 +98,39 @@ public enum FeatureFlag: Int {
9898 /// Hides products onboarding development.
9999 ///
100100 case productsOnboarding
101+
102+ // MARK: - Performance Monitoring
103+ //
104+ // These flags are not transient. That is, they are not here to help us rollout a feature,
105+ // but to serve a safety switches to granularly turn off performance monitoring if it looks
106+ // like we are consuming too many events.
107+
108+ /// Whether to enable performance monitoring.
109+ ///
110+ case performanceMonitoring
111+
112+ /// Whether to enable performance monitoring for Core Data operations.
113+ ///
114+ /// - Note: The app will ignore this if `performanceMonitoring` is `false`
115+ case performanceMonitoringCoreData
116+
117+ /// Whether to enable performance monitoring for file IO operations.
118+ ///
119+ /// - Note: The app will ignore this if `performanceMonitoring` is `false`
120+ case performanceMonitoringFileIO
121+
122+ /// Whether to enable performance monitoring for networking operations.
123+ ///
124+ /// - Note: The app will ignore this if `performanceMonitoring` is `false`
125+ case performanceMonitoringNetworking
126+
127+ /// Whether to enable performance monitoring for user interaction events.
128+ ///
129+ /// - Note: The app will ignore this if `performanceMonitoring` is `false`
130+ case performanceMonitoringUserInteraction
131+
132+ /// Whether to enable performance monitoring for `UIViewController` life-cycle events.
133+ ///
134+ /// - Note: The app will ignore this if `performanceMonitoring` is `false`.
135+ case performanceMonitoringViewController
101136}
0 commit comments