@@ -89,25 +89,26 @@ type RootObject struct {
8989
9090// GlobalStats runtime stats used to render the dashboard
9191type GlobalStats struct {
92- BackendTotalRequests int64 `json:"backendTotalRequests"`
93- RequestsOk int64 `json:"requestsOk"`
94- RequestsErrored int64 `json:"requestsErrored"`
95- BackendRequestsOk int64 `json:"backendRequestsOk"`
96- BackendRequestsErrored int64 `json:"backendRequestsErrored"`
97- SdksTotalRequests int64 `json:"sdksTotalRequests"`
98- LoggedErrors int64 `json:"loggedErrors"`
99- LoggedMessages []string `json:"loggedMessages"`
100- FeatureFlags []SplitSummary `json:"featureFlags"`
101- Segments []SegmentSummary `json:"segments"`
102- LargeSegments []LargeSegmentSummary `json:"largesegments"`
103- Latencies []ChartJSData `json:"latencies"`
104- BackendLatencies []ChartJSData `json:"backendLatencies"`
105- ImpressionsQueueSize int64 `json:"impressionsQueueSize"`
106- ImpressionsLambda float64 `json:"impressionsLambda"`
107- EventsQueueSize int64 `json:"eventsQueueSize"`
108- EventsLambda float64 `json:"eventsLambda"`
109- Uptime int64 `json:"uptime"`
110- FlagSets []FlagSetsSummary `json:"flagSets"`
92+ BackendTotalRequests int64 `json:"backendTotalRequests"`
93+ RequestsOk int64 `json:"requestsOk"`
94+ RequestsErrored int64 `json:"requestsErrored"`
95+ BackendRequestsOk int64 `json:"backendRequestsOk"`
96+ BackendRequestsErrored int64 `json:"backendRequestsErrored"`
97+ SdksTotalRequests int64 `json:"sdksTotalRequests"`
98+ LoggedErrors int64 `json:"loggedErrors"`
99+ LoggedMessages []string `json:"loggedMessages"`
100+ FeatureFlags []SplitSummary `json:"featureFlags"`
101+ Segments []SegmentSummary `json:"segments"`
102+ LargeSegments []LargeSegmentSummary `json:"largesegments"`
103+ RuleBasedSegments []RuleBasedSegmentSummary `json:"rulebasedsegments"`
104+ Latencies []ChartJSData `json:"latencies"`
105+ BackendLatencies []ChartJSData `json:"backendLatencies"`
106+ ImpressionsQueueSize int64 `json:"impressionsQueueSize"`
107+ ImpressionsLambda float64 `json:"impressionsLambda"`
108+ EventsQueueSize int64 `json:"eventsQueueSize"`
109+ EventsLambda float64 `json:"eventsLambda"`
110+ Uptime int64 `json:"uptime"`
111+ FlagSets []FlagSetsSummary `json:"flagSets"`
111112}
112113
113114// SplitSummary encapsulates a minimalistic view of feature flag properties to be presented in the dashboard
@@ -137,6 +138,20 @@ type LargeSegmentSummary struct {
137138 LastModified string `json:"cn"`
138139}
139140
141+ type RuleBasedSegmentSummary struct {
142+ Name string `json:"name"`
143+ Active bool `json:"active"`
144+ ExcludedKeys []string `json:"excludedKeys"`
145+ ExcluededSegments []ExcluededSegments `json:"excludedSegments"`
146+ LastModified string `json:"cn"`
147+ ChangeNumber int64 `json:"changeNumber"`
148+ }
149+
150+ type ExcluededSegments struct {
151+ Name string `json:"name"`
152+ Type string `json:"type"`
153+ }
154+
140155// SegmentKeySummary encapsulates basic information associated to the key in proxy mode
141156// (fields other than name are empty when running as producer
142157type SegmentKeySummary struct {
0 commit comments