Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'config/metrics/schema/base.json')
-rw-r--r--config/metrics/schema/base.json170
1 files changed, 170 insertions, 0 deletions
diff --git a/config/metrics/schema/base.json b/config/metrics/schema/base.json
new file mode 100644
index 00000000000..5f571566651
--- /dev/null
+++ b/config/metrics/schema/base.json
@@ -0,0 +1,170 @@
+{
+ "type": "object",
+ "required": [
+ "key_path",
+ "description",
+ "value_type",
+ "status",
+ "product_group",
+ "product_section",
+ "product_stage",
+ "time_frame",
+ "data_source",
+ "distribution",
+ "tier",
+ "data_category",
+ "milestone"
+ ],
+ "properties": {
+ "key_path": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "product_section": {
+ "type": [
+ "string"
+ ]
+ },
+ "product_stage": {
+ "type": [
+ "string"
+ ]
+ },
+ "product_group": {
+ "type": "string",
+ "pattern": "^$|^([a-z]+_)*[a-z]+$"
+ },
+ "value_type": {
+ "type": "string",
+ "enum": [
+ "string",
+ "number",
+ "boolean",
+ "object"
+ ]
+ },
+ "status": {
+ "type": [
+ "string"
+ ],
+ "enum": [
+ "active",
+ "removed",
+ "broken"
+ ]
+ },
+ "milestone": {
+ "type": [
+ "string"
+ ],
+ "pattern": "^<?[0-9]+\\.[0-9]+$"
+ },
+ "milestone_removed": {
+ "type": [
+ "string"
+ ],
+ "pattern": "^<?[0-9]+\\.[0-9]+$"
+ },
+ "introduced_by_url": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "removed_by_url": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "repair_issue_url": {
+ "type": [
+ "string"
+ ]
+ },
+ "options": {
+ "type": "object"
+ },
+ "time_frame": {
+ "type": "string",
+ "enum": [
+ "7d",
+ "28d",
+ "all",
+ "none"
+ ]
+ },
+ "data_source": {
+ "type": "string",
+ "enum": [
+ "database",
+ "redis",
+ "redis_hll",
+ "prometheus",
+ "system",
+ "license",
+ "internal_events"
+ ]
+ },
+ "data_category": {
+ "type": "string",
+ "enum": [
+ "Operational",
+ "Optional",
+ "Subscription",
+ "Standard",
+ "operational",
+ "optional",
+ "subscription",
+ "standard"
+ ]
+ },
+ "instrumentation_class": {
+ "type": "string",
+ "pattern": "^(([A-Z][a-z]+)+::)*(([A-Z]+[a-z]+)+)$"
+ },
+ "distribution": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "ee",
+ "ce"
+ ]
+ }
+ },
+ "performance_indicator_type": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "gmau",
+ "smau",
+ "paid_gmau",
+ "umau",
+ "customer_health_score"
+ ]
+ }
+ },
+ "tier": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "free",
+ "starter",
+ "premium",
+ "ultimate",
+ "bronze",
+ "silver",
+ "gold"
+ ]
+ }
+ },
+ "value_json_schema": {
+ "type": "string"
+ }
+ }
+}