Skip to content

[RUN ALL RSPEC] [RUN AS-IF-FOSS] Resolve "Filter usage_data payload considering metric category"

What does this MR do?

It adds new service that is responsible for filtering Service (aka Usage) Ping payload based on instance settings. This service is not yet put to use anywhere, that would be objective of follow up MR

Filtering rules are as follows:

  1. If single users consent is required User.single_user&.requires_usage_stats_consent? == true send no data
  2. For a free user, when License.current is blank when usage ping enabled send: Standard, Subscription, Optional, and Operational metrics
  3. For a free user, when License.current is blank when usage ping is disabled don't send any data
  4. For a customer, when License.current is not blank. When usage ping enabled and operational data enabled(License.current.usage_ping? ==. true) send: Standard, Subscription, Optional, and Operational metrics
  5. For a customer, when License.current is not blank. When usage ping enabled and operational data disabled(License.current.usage_ping? == false) send: Standard, Subscription, and Optional metrics
  6. For a customer, when License.current is not blank. When usage ping disabled and operational data enabled(License.current.usage_ping? ==. true) send: Standard, Subscription, and Operational metrics
  7. For a customer, when License.current is not blank. When usage ping disabled and operational data disabled(License.current.usage_ping? == false) don't send any data.

Screenshots (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Related to #333681 (closed)

Edited by Mikołaj Wawrzyniak

Merge request reports