Adding additional KPIs, adding required documentation
[ric-app/mc.git] / mc-core / mc / queries / dc_conn_stats.gsql
1 DEFINE{query_name 'dc_connect';
2         max_lfta_disorder '1'; max_hfta_disorder '1';
3 }
4 PARAM{ window uint; }
5 select timestamp_ms as timestamp,
6         UINT(id_MeNB_UE_X2AP_ID) as eUE_ID,
7         UINT(id_SgNB_UE_X2AP_ID) as gUE_ID,
8         1 as event_type
9 from RECONCOMPLETE.reconfig_success
10 where schemaId=101
11 ;
12
13 DEFINE{query_name 'dc_terminate';
14         max_lfta_disorder '1'; max_hfta_disorder '1';
15 }
16 PARAM{ window uint; }
17 select timestamp_ms as timestamp,
18         UINT(id_Old_eNB_UE_X2AP_ID) as eUE_ID,
19         id_SgNB_UE_X2AP_ID as gUE_ID,
20         0 as event_type
21 from CONRELEASE.dc_release
22 where schemaId=201
23 ;
24
25 DEFINE{query_name 'dc_events';}
26 PARAM{ window uint; }
27 merge p1.timestamp : p2.timestamp
28 from dc_connect p1, dc_terminate p2
29 ;
30
31
32 DEFINE{ query_name 'mc_connected_ues'; 
33         max_lfta_disorder '1'; max_hfta_disorder '1';
34 }
35 PARAM{ window uint; }
36 SELECT TB, UE_ID,
37         ((TB+1)*$window-LAST(timestamp))/1000.0 as connected_time
38 FROM dc_events
39 GROUP BY timestamp / $window as TB, gUE_ID as UE_ID
40 HAVING LAST(event_type) = 1
41 CLOSING_WHEN LAST(event_type) = 0
42 ;
43
44 DEFINE{ query_name 'mc_connected_cnt'; 
45         max_lfta_disorder '1'; max_hfta_disorder '1';
46 }
47 PARAM{ window uint; }
48 SELECT ($window*(TB+1))/1000 as TS, 
49                 $window/1000.0 as measurementInterval, // standard_name
50       COUNT(*) as count_connected_ue
51 FROM mc_connected_ues
52 GROUP BY TB
53 ;
54
55 DEFINE{ query_name 'mc_disconnected_ues'; 
56         max_lfta_disorder '1'; max_hfta_disorder '1';
57 }
58 PARAM{ window uint; }
59 SELECT TB_1000, UE_ID, 
60         UINT((LAST(timestamp) - FIRST(timestamp))) as connected_time
61 FROM dc_events
62 GROUP BY timestamp / 1000  as TB_1000, gUE_ID as UE_ID
63 HAVING LAST(event_type) = 0
64 CLOSING_WHEN LAST(event_type) = 0
65 ;
66
67
68 DEFINE{ query_name 'mc_connection_stats'; 
69         max_lfta_disorder '1'; max_hfta_disorder '1';
70 }
71 PARAM{ window uint; }
72 SELECT ($window*(TB+1))/1000 as TS, 
73         $window/1000.0 as measurementInterval, // standard_name
74         MIN(connected_time)/1000.0 as min_connected_time,
75         MAX(connected_time)/1000.0 as max_connected_time,
76         AVG(connected_time)/1000.0 as avg_connected_time,
77         quantile_of(connected_time, .05)/1000.0 as pctl_05_connected_time,
78         quantile_of(connected_time, .95)/1000.0 as pctl_95_connected_time,
79         sqrt(
80                 sum((connected_time/1000.0)*(connected_time/1000.0)) - sum(connected_time/1000.0)*sum(connected_time/1000.0)/count(*)
81         ) / count(*) as stddev_connected_time
82 FROM mc_disconnected_ues
83 GROUP BY (TB_1000 * 1000) / $window as TB
84 ;
85
86
87 DEFINE{ query_name 'mc_connects_cnt'; 
88         max_lfta_disorder '1'; max_hfta_disorder '1';
89 }
90 PARAM{ window uint; }
91 SELECT ($window*(TB+1))/1000 as TS,
92         $window/1000.0 as measurementInterval, // standard_name
93         COUNT(*) as count_ue_connects
94 FROM dc_events
95 WHERE event_type = 1
96 GROUP BY timestamp / $window as TB
97 ;
98
99 DEFINE{ query_name 'mc_disconnects_cnt'; 
100         max_lfta_disorder '1'; max_hfta_disorder '1';
101 }
102 PARAM{ window uint; }
103 SELECT ($window*(TB+1))/1000 as TS, 
104          $window/1000.0 as measurementInterval, // standard_name
105          COUNT(*) as count_ue_disconnects
106 FROM dc_events
107 WHERE event_type = 0
108 GROUP BY timestamp / $window as TB
109 ;
110
111 DEFINE{ query_name 'mc_unique_ues'; 
112         max_lfta_disorder '1'; max_hfta_disorder '1';
113 }
114 PARAM{ window uint; }
115 SELECT TB, UE_ID
116 FROM dc_events
117 GROUP BY timestamp / $window as TB, gUE_ID as UE_ID
118 ;
119
120 DEFINE{ query_name 'mc_unique_ue_cnt'; 
121         max_lfta_disorder '1'; max_hfta_disorder '1';
122 }
123 PARAM{ window uint; } 
124 SELECT ($window*(TB+1))/1000 as TS, 
125          $window/1000.0 as measurementInterval, // standard_name
126          COUNT(*) as count_unique_ue
127 FROM mc_unique_ues
128 GROUP BY TB
129
130
131