diff options
Diffstat (limited to 'config/metrics/schema/base.json')
-rw-r--r-- | config/metrics/schema/base.json | 170 |
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" + } + } +} |