Sie sind auf Seite 1von 39

GSM Query training

1
Objectives of the course
After completing this course, the delegate will be able to:
a) select the most appropriate query for the type of analysis
b) design the query in the most efficient manner
c) use queries for both structured and ad-hoc analysis methods
This course steps through the different types of queries, teaching each method through
real world scenarios, from simple queries and building in complexity, to give engineers
the understanding and confidence to design their own queries from the minute the course
ends.
The examples in this course note should be followed, but it is not recommended that the
expressions are copied pasted into the !xpression "uilder, as hidden formatting
characters from #$ %ord may also be copied, causing errors in how the event runs.
Course Pre-Requisites
&elegates must have completed the 'latform Training before beginning this (uery
Training course. This course documentation provides screenshots based on "uild
).*+.**,-. with specific settings enabled in Tools / 'references !ach '0 should be set in
an identical manner. $ubsequent releases may include differences in averages or message
totals due to different features being introduced in the future.
Queries Definition
The Actix 'latform includes a sophisticated method of analysing drive-test and protocol
data, further than simply visualising the collected measurements on a map1chart1table.
(ueries are a method for combining collected measurements together, applying
thresholds and applying built-in functions to the measurements to highlight radio
problems, generate 2'3 statistics or investigate problems.
Query Types
(ueries are available in 4 different types, each with an increasing level of complexity:
- Filters
- Histograms
- Statistics
- Time-$eries 5called Binned Queries)
- #ulti-&imensional $tatistics 5called Crosstab Queries)
- !vent-Triggered %indow $tatistics 5called Event Queries).
3t is warmly suggested to save your queries any time you modify them. To ma6e them
available any time you start Analy7er, they need to be saved in the Actix 8ser &ata,
C:\Documents and Settings\All Users\Application Data\Actix\Anal!er\Queries.
Filters
These can be very simple, and be applied in combination to narrow down a problem to a
specific area.
2
3t is important to note that the filter is applied to each view, meaning that the underlying
raw data has not changed, but all maps, charts, tables etc now contain a filtered view,
regardless of which parameter is being viewed.
9or example, if a simple filter of :x;ev!ither < -=> d"m is applied to the following
chart in 9igure ,,
Figure 1: ServRxLevEither displayed on a chart.
only the values satisfying the filter will be returned, as you can see in 9igure >:
3
Figure 2: Filtered ServRxLevEither displayed on a chart.
Histograms
These can return the '&9 5count) histogram for any parameter or expression, either using
the ranges found in the logfile, or by specifying ranges or discrete values for the
histogram bars and can only be viewed in the histogram tab of the chart, table and
wor6boo6, as can be seen by the following brea6down of ?andover 3nterval times, 9igure
+.
4
Figure 3: Handover Interval histogra.
Statistics
These return the #ean, #ode, #edian, #aximum, #inimum, 0ount, $tandard &eviation
and @ariance of the parameter or expression used. These can only be viewed in the
$tatistics tab of the table and wor6boo6.
Binned Queries
These can be as simple or as complex as needed to be, but have the advantage of running
at every binned message point in the file, so they can be used to create a new time-series
dataset. As you are essentially creating a new time-series parameter, these can be viewed
on the map, time view chart, series tab of the table and wor6boo6.
?owever, these will be subAect to which ever binning method has been chosen, but it is
also possible to override the platform binning setting from inside the expression builder
window.
5
Figure !: Exaple o" #inned $uery.
Crosstab Queries
This type of query can be used to generate statistics against any dimension available. The
results will be across the whole file, so the results are not in the time-series domain
anymore, but any number of statistics can be returned, from a set of possible options such
as 0ount , 'ercent True , ;ast @alue or $um . These have their own visualisation tool the
$tatistics !xplorer, as you can see in 9igure .. ?ere you can see 4 statistic columns for
each unique $ite 3& row.
6
Figure %: &rossta' $uery displayed on the Statistics Explorer.
Event Queries
This type of query is essentially the same as a crosstab query with the difference being
that a trigger event is defined first, and an optional window before and after 5measured in
either time or number of messages) can be defined. 3t is within these windows that the
statistics are calculated.
Figure (: )ie *indo* echanis in the Event $ueries.
7
Introduction to the na!ysis Manager
The Analysis #anager is the central point for managing queries. 3t allows new queries to
be written, edited and deleted, existing queries to be imported and exported, and event
queries to be set to load-time. 3n 9igure -, you can see the 4 different types of queries it is
possible to create.
Figure +: ,nalysis -anager *indo*.
3t is also possible to view any of the existing queries already embedded into the solution
by selecting the second tab Existing Analses.
8
Figure .: Existing ,nalyses.
There are also other terms which will be used throughout this query training course
which, although new to begin with, will become common tools for creating and editing
queries, and they are the elements of the Expression Builder.
Figure /: Expression #uilder *indo*.
9
Configuration
3t is important to aid understanding of the query design that all '0s are set identically
during the training. This is to allow the course instructor to be able to explain any
problems as the course progresses. This section contains the settings needed for the
remainder of the course:
- The Analy7er 0lassic view will be used throughout the training course
- 0ellrefs file should be set to the )raining 0S- &ellre"s.txt file 5and restart
Analy7er)
- B'$ 3nterpolation should be disabled
- Time offsets from B#T should both be set to * 5switch and mobile)
- "inning should be set to message with the bin si7e of ,.
- $canner ;oad #ode should be set to ;oad all scanner data
- ;oad $peed &efault should be set to ;oad all
- B$# "ands 8sed should be set to =**, ,C** and ,=**
- B'$ Transformation should be set to &efault 5degrees)
- 3n the Tools / &isplay Thresholds window, ensure the values are set to the
defaults.
Para"eters #sed
%hile there are various features allowing users to search for, and save parameters as
9avourites, 9igure ,* can be used as a reference for the various parameters used in this
course.
10
Figure 11: 0S- ,ttri'utes.
Query Design
Coverage Holes and Bad Quality filters
;ogfile Demo &rive Test ,.dt,
Dame 0overage ?oles 9ilter and 'oor (uality
Aim To find areas in the networ6 which have bad :x;ev coverage 5idle and
dedicated mode) and "ad (uality
&efinition:
,) 0overage ?oles 9ilter: $erv:x;ev!ither < -=.
>) "ad (uality: $erv:x(ual$ub /E .
'rocedure:
,) 9rom Analy7er 0lassic view, load the logfile Demo &rive Test ,.dt,.
>) ;ocate the $erv:x;ev!ither parameter from the Attribute !xplorer 5under B$# /
&own;in6 #easurements grouping) and by right-clic6ing on it, display it on a
chart.
+) "y right-clic6ing on the handset stream name, select 0reate new filter .
11
Figure 11: &reate a 2e* Filter.
)) 0reate the filter with the title as above, and select the $erv:x;ev!ither parameter
using the attribute pic6er button 5 ). Fou will notice that the wi7ard
automatically puts the state5 ) function around the parameter name. This is
because not every message contains every parameter. $o to include it in a filter, it
will need to be held across messages which do not contain the :x;ev
measurements.
.) $electing the filter type to be strictly less than 5<) and enter the threshold
coverage level of -=.d"m, as in 9igure ,>.
Figure 12: 3e"inition o" the &overage Holes Filter.
4) 0lic6 G2 to apply the filter. The chart should be filtered to only show the values
below -=.d"m, as in 9igure ,+:
12
Figure 13: Filtered ServRxLevEither displayed on a chart.
-) Add the $erv:x(ual$ub parameter to the same chart by dragging it onto the chart
5from the B$# / &ownlin6 #easurements grouping). Dotice how this parameter
has also been filtered. 9ilters are applied to the %?G;! $T:!A# meaning that
when you display the best :x(ual value on a chart, you are only showing the
:x(ual values where the :x;ev is greater than -=.d"m.
13
Figure 1!: Filtered ServRxLevEither and ServRx$ualSu' displayed on a chart.
4nly &overage Holes Filter is applied.
C) Dow open Tools / Analysis #anager, select the 9ilter option and clic6 the Dew
button. This will open the 9ilter %i7ard.
=) Bive your new filter the title: 'oor (uality
,*) 8sing the Attribute 'ic6er as before, select $erv:x(ual$ub from the &own;in6
#easurements grouping.
,,) 0hoose the greater than or equal to 5/E) option, and enter . as the threshold.
,>) 0lic6 G2 to close the wi7ard, and G2 again to save your query into the
wor6space.
,+) :ight-clic6 on the handset stream name and follow the 9ilter sub-menu. The new
'oor (uality filter is not selected. This is because it was created from the Analysis
#anager, not from the right-clic6 menu of that stream.
,)) $elect your new filter and you will see the chart filtered even further to only show
areas where there is both :x;ev < -=. AD& :x(ual /E ..
,.) :ight-clic6 on the scanner stream name and follow the 9ilter sub-menu. $elect the
G: option, and you will see your chart change to loo6 li6e in 9igure ,.. This is
because you are now filtering for all areas where either :x;ev < -=. G: :x(ual
/E .. Fou have displayed the :x;ev and :x(ual on the chart, and are now
showing all areas where either of these > filters has been triggered.
14
Figure1%: Filtered ServRxLevEither and ServRx$ualSu' displayed on a chart.
&overage Holes Filterand #ad $uality are 'oth applied.
,4) &isable both the filters by de-selecting it in the filter list again. Dote:%hen filters
are enabled, they have the small tic6 displayed next to them. The important point
to remember about filters is that regardless of which parameter you use to filter
the device stream, all parameters you view on the map, chart, table etc. will also
be filtered. This is why it is best to use the attribute pic6er to choose your
parameter, because Actix Analy7er will automatically add the state5 ) function
around your filter parameter, to hold it across all other messages that do not
contain that parameter. $ee the Annex for a more detailed description of the
state5 ) function.
15
Figure 1(: Ho* to de5select the "ilters.
Coverage $o!es binned
;ogfile: Demo &rive Test ,.dt,
Dame: 0overage ?oles binned
Aim: To find areas in the networ6 which have bad server coverage.
&efinition: $erving 0ell :x;ev < -=. d"m
'rocedure:
,) 8nless it was opened in the previous exercise, open logfile Demo &rive Test,.dt,.
>) Gpen the Tools menu and select Analsis "anager. D": This can also be
performed by the hot6ey 0T:;-A
+) $elect the Binned Quer type and clic6 the Dew button.
)) Type the name 0overage ?oles binned into the Description field.
.) 0lic6 the left mouse button to place the cursor into the expression builder area
4) 3n the Attribute ;ist, scroll down to find the B$# grouping. Then, from inside the
&ownlin6 #easurements grouping, double-clic6 on: $erv:x;ev!ither
-) Fou will notice that there are a few :x;ev parameters available:
a. #$dle is only from idle mode measurements,
b. #Full and #Sub are only reported in dedicated mode dependent on
whether &TH is used in the uplin6,
c. without a suffix is used for Abis analysis as it intelligently selects the best
between I9ull or I$ub, and
d. #Eit%er which uses the I3dle while in idle mode and the I9ull while in
dedicated mode.
C) 0omplete the expression by typing the equality chec6: $erv:x;ev!ither < -=.
=) Fou will also notice that the 9ormat in the top-right corner has automatically
Aumped to B$# :x;ev. This is now incorrect, as we have Aust created a "oolean
expression an expression that can only evaluate to either 9A;$! or T:8!,
represented internally as * or ,.
16
,*) To change the format of the result to match the expression, it is possible to either
scroll through the list until you find it, or if you 6now another parameter with the
same units you can select it from the Attribute 'ic6er the rightpointing arrow. 3t is
also possible to type directly into the format box, and it will automatically index
the search on what you type. $elect the format box, and type b and o and you will
notice that you have already selected Boolean.
,,) 0lic6 G2 to close the "inned (uery builder, and G2 again to save your query
into the Analysis #anager.
,>) 3nside the handset stream in the %or6space !xplorer, you will be able to find your
new "inned (uery
Figure 1+: &overage Holes 'inned.
,+) &isplay the binned query on the map as in 9igure ,C:
17
Figure 1.: &overage Holes 'inned displayed on the ap.
This gives a good overall picture of where the problem lie, but it would be better
to only show the points where the holes existed. %e will now modify our query to
remove the yellow false points. :ight-clic6 on the query name in the %or6space
!xplorer:
18
Figure 1/: Ho* to edit the 6uery &overage Holes 'inned.
,)) #odify the expression to place an if5 ) function around it,:
if5$erv:x;ev!ither < -=., ,, D8;; )
,.) $ave the query again and re-display it on a map. Fou will notice that all the points
are now visible. $ome may have been hidden by false values previously.
19
Figure 21: -odi"ied &overage Holes 'inned displayed on the ap.
Do"inance % binned
;ogfile: Demo &rive Test ,.dt,
Dame: &ominance ,
Aim: To find areas where the server is wea6er than the strongest neighbour.
&efinition: 9or every point in the map, show the areas where the $erv:x;ev$ub is
wea6er than any D"or:x;ev.
'rocedure:
,) 0reate a new binned query and enter the title &ominance ,.
>) 0lic6 inside the expression builder panel to move the cursor and scroll down
inside the functions list on the right-hand side until arrayIcount is found.
+) &ouble-clic6 on arrayIcount and you will notice that it has been added to the
expression builder with placeholders for the various elements of the function. This
function needs a parameter, a test and a constant expression:
arrayIcount5 <<attributeJK// , <<operation// , <<expr// )
Dotice how you are prompted for an array-parameter by the square braces.
)) %ith the <<attribute// part still highlighted, scroll down inside the attribute list
inside the B$# / Deighbor 0ell 3nfo grouping and double-clic6 on the parameter:
Dbor:x;ev
20
.) Dow select the operation mar6er in the middle of the function and type / and
select the expression mar6er at the end of the function and type -4* .
4) Four expression should loo6 li6e this:
arra#count&'bor(x)ev*+ , - , ./01
-) Gnce you have saved your query, display it on the map, as in 9igure >*.
Figure 21: 3oinance 1 displayed on the ap.
C) !dit your query and change the format to 0ount , and your results should be as
follows. The important thing to note is that the results are still the same, but the
formatting of the results is much more meaningful.
21
Figure 21: -odi"ied 3oinance 1 displayed on the ap.
=) Dow we have displayed the count of scanned values above -4* d"m, edit your
query to repeat the addition of the if5 ) statement from the earlier example and
tighten the definition to only show the areas where there is pilot pollution
according to the original aim of the query.
Figure 21: Re5-odi"ied 3oinance 1 displayed on the ap.
22
Interference &er 'CC$ binned
;ogfile: Demo &rive Test ,.dt,
Dame: 3nterference binned
Aim: To find 0ell "00? s in areas with good coverage but poor quality
&efinition: 9or every point in the map, show the "00? where the $erv:x;ev$ub was
better than -C. d"m and $erv:x(ual$ub was worse than +.
This query should be completed without chec6ing bac6 at the previous examples. 3t can
be compiled by brea6ing the problem down into it s constituent parts:
- chec6 $erv:x;ev$ub was / -C.
- chec6 $erv:x(ual$ub was /E )
- at message points where this is true, return the $erving 0ell A:90D value.
9or this query, use the strongest $erv"00? 5from the B$# / $erving 0ell 'arameters
grouping) value to return the A:90D.
Figure 22: Inter"erence per #&&H 'inned displayed on the ap.
3n 9igure >>, the map legend results show that most of the interference is affecting
channels: .C=, 4** and 4*C.
23
Coverage Is!and na!ysis histogra"
;ogfile: Demo &rive Test ,.dt,
Dame: 0overage 3sland ?istogram
Aim: To display the distribution of the Timing Advance for quic6 coverage island
Analysis.
&efinition: $how the counts of $ervTimingAdvanceActual from * to 4+.
'rocedure:
,) 'ress 0T:;-A to display the Analysis #anager.
>) &ouble-clic6 the ?istogram (uery icon to open the ?istogram %i7ard.
+) Type the title 0overage 3sland ?ist
)) 9rom the Attribute 'ic6er, select: $ervTimingAdvanceActual from the B$# /
&edicated :adio ;in6 grouping.
Figure 23: &overage Island Histogra 3e"inition.
Fou will notice that the state5 ) function has not been added this time. This is
because we are performing more of a statistical analysis of only the TA values
themselves, and do not require the value to be held across subsequent messages.
.) $elect the >nd option of histogram types manually specifying discrete values.
4) $et the minimum value to be *, and select the 3nclusive chec6box.
-) $et the maximum value to be 4+, and select the 3nclusive chec6box.
C) Type 4) as the number of columns to generate and clic6 2enerate, as shown in
9igure >).
24
Figure 2!: Generate "unction.
=) Fou will see your 4) ranges appear in the box above.
,*) 0lic6 G2 to end the wi7ard, and G2 to save you query.
,,) 9rom the (uery section in the %or6space !xplorer, open the ?istogram grouping,
right-clic6 on your new histogram and display on a table.
,>) 0hange the view to the ?istogram tab in the middle, and you will see your results
displayed.
25
Figure 2%: Histogra results displayed on a ta'le.
Dote: To improve the efficiency of this query, edit the query, and select the 9ilter button.
"uild the following filter:
$ervTimingAdvanceActual /E *
This will only trigger the query on message points where there are values for the TA. 3t
will not affect the results, but the query will be more efficient in terms of speed and
memory usage.
(i"ing dvance statistic
;ogfile: Demo &rive Test ,.dt,
Dame: Timing Advance statistic
Aim: To display statistical values of the parameter.
26
&efinition &isplay the #ean, #ode, #edian, #aximum, #inimum, 0ount, $tandard
&eviation and @ariance of $ervTimingAdvanceActual.
'rocedure:
,) 'ress 0T:;-A to display the Analysis #anager.
>) &ouble-clic6 the $tatistic (uery icon to open the $tatistic %i7ard.
+) Type the title Timing Advance statistic.
)) 9rom the Attribute 'ic6er, select: $ervTimingAdvanceActual from the B$# /
&edicated :adio ;in6 grouping.
Figure 2(: Statistic *i7ard.
.) 2eep the default option of not excluding any data from the calculation. This
option could be used if the engineer wishes to remove spurious results that affect
averages adversely.
4) $elect G2 to exit the wi7ard and G2 to save your query.
-) 9rom the %or6space !xplorer, open your query into a %or6boo6.
27
Figure 2+: )iing ,dvance statistic results in a *or8'oo8.
Dote: it has been created into a sheet called $tatistic 9ormatted &ata. All statistics will be
added to this sheet. $imilar sheets are created for histograms, time series binned queries
and crosstab1event queries.
MS na!ysis Statistics crosstab query
;ogfile: Demo &rive Test >.dt,
Dame: 9ile and #$ statistics
Aim: To generate statistics for logfile.
&efinition: Benerate file statistics for each file, using #$ parameters collected during the
calls.
This set of examples will build up a large crosstab query to return overview information
for the logfile and data such as
Dumber of 0all $etup failures
Dumber of 0all $etup G6
Dumber of &ropped 0alls
Dumber of 0all 0ompleted
Dumber of ?G G2
Dumber of ?G failures
Total &riven &istance.
To define the initial query, we will define a set of file statistics such as the start end
time, and file-si7e, and relate these to the filename. This can be reworded as:
28
Return statistics )* y + , &er fi!e -
This statement has > parts: the statistics 5H, F L) and the dimension 59ile). $o our
crosstab query is built up from these basic obAects a dimension and a set of statistics. The
dimension will be used to create a set of unique rows, and the columns will contain the
statistics results.
'rocedure:
,) ;oad file Demo &rive Test >.dt,
>) Gpen the Analysis #anager and select the 0rosstab query wi7ard.
+) !nter the title of 9ile and #$ statistics
)) 0hoose the dimension of 9ileDame from the Attribute 'ic6er 5inside 3ndependent
/ 9ile 3nfo).
Dote: the title shows 5last valid value). This shows that the state5 ) function has
been added around your dimension to ma6e sure that the 9ileDame attribute is
held across the whole file. This means that you can as6 for any statistics from any
;ayer + or proprietary message, and they will still be calculated for the filename.
Figure 2.: &rossta' 6uery *i7ard.
.) 0lic6 on the 'e3 Statistic button to add a new statistic.
4) Bive to the statistic the title 9ile $i7e, as shown in 9igure >=.
29
Figure 2/: Statistic *i7ard.
-) !ach statistic can ta6e one of a number of pre-defined types, but for this case, we
will be using the )ast 4alid #ethod to return the most recent value.
C) 0hoose the 9ile$i7e parameter from Attribute 'ic6er 5inside 3ndependent / 9ile
3nfo).
=) 0lic6 G2 to save the statistic, G2 to exit the 0rosstab wi7ard and G2 to save the
query.
,*) 9rom the Demo &rive Test > file, right-clic6 on the new 0rosstab query and
display on the $tatistics !xplorer. 3n 9igure +*, you can see the filename
dimension as the unique row and the 9ile $i7e column as the statistic.
Figure 31: File and -S Statistics displayed in the Statistics Explorer.
30
,,) The file si7e units are still bytes, so edit the query and select the 9ile $i7e statistic.
,>) 0lic6 the !dit $tatistic button, and then clic6 !dit to open the !xpression "uilder
for the expression.
,+) &ivide the 9ile$i7e by ,*>), and set the format to 2ilobytes .
,)) $ave the modification and select the query again in the $tatistics !xplorer. Four
filesi7e will now be formatted in 2b.
,.) Add > new statistics: #ean $erv:x;ev$ub, and #ean ;in. $erv:x;ev$ub. These
should be both using the same parameter from the B$# / &ownlin6
#easurements grouping. The #ethods to be used are "ean, and "ean &linear1
respectively.
Dote: The "ean statistic simply averages using the arithmetic mean of all valid
values. "ean &linear1 value converts the values into the %att scale, performs the
average and then converts the values bac6 into d"m scale.
,4) Four $tatistics !xplorer should now display the following results.
Figure 31: -odi"ied File and -S Statistics displayed in the Statistics Explorer.
,-) Dow add the following statistics on your own 5see $tep ,C over the page for the
9ormat to use in each case):
Figure 32: 3e"inition o" the other statistics.
31
Name Method Expression Format Filter
9ile $i7e ;ast @alue 9ile$i7eM,*>) 2ilobytes
$tart file ;ast @alue reltime>abstime5abstime5)) TimeGf&ay message5)
EE *
!nd file ;ast value reltime>abstime5abstime5)) TimeGf&ay
Avg :x
;ev
#ean
;inear
$erv:x;ev$ub B$# :x;ev
Avg :x
(ual
#ean
5:x(ual)
$erv:x(ual$ub B$# :x(ual
Dumber of
0all $etup
failures
0ount !ventGutgoing0all9ail 0ount
Dumber of
0all $etup
G2
0ount !ventGutgoing0allG2 0ount
Total
&rops
0ount !vent0all&ropped 0ount
Dumber of
0all
0ompleted
0ount !vent0all0ompleted 0ount
?andover
G2
0ount !vent?andoverG2 0ount
?andover
fail
0ount !vent?andover9ail 0ount
?G
&uration
Time 5ms)
#ean ?andover&uration Time
)a'le 1: Statistics to add to the 6uery.
Dro&&ed Ca!! na!ysis event
;ogfile: Demo &rive Test ,.dt, and Demo &rive Test >.dt,, superstreamed on Time.
Dame: #$ &ropped 0all $tats
Aim: To analy7e each dropped call to report possible diagnosis
&efinition: 0reate event query triggered on dropped call event, to analyse TA, and
&ominance etc.
This event query will concentrate around the !vent0all&ropped events in the files. %e
will create , window this time, . seconds before the drop. %e will use the definition of
dominance already covered in an earlier example, and the distance away from the cell
using the Timing Advance.
These will give us a good diagnosis of possible contributors to the drop.
32
'rocedure:
,) !nsure that you have the two Demo files superstreamed on Timestamps.
>) 0reate an event query which triggers on the B$# EventCallDropped event,
+) 0reate a Time window, .*** ms before after the trigger.
)) &o not choose a discriminator but clic6 the 'ext - button.
.) #odify the default dimension !ventTime: change the actual expression to
reltime5abstime& event#time&1 67000 1 and the 9ormat to 8ime9:Da.
Figure 3!: -odi"ication o" the 3iension Event)ie.
4) 0reate the following statistics:
Name Method Expression Format
Avg :x;ev #ean $erv:x;ev$ub B$# :x;ev
Avg :x
(ual
#ean
5:x(ual)
$erv:x(ual$ub B$# :x(ual
#ost freq
TA
#ode $ervTimingAdvanceActual B$# Timing Advance
3nterference 'ercent True $erv:x(ual$ub /E ) AD&
$erv:x;ev$ub /E -C.
'ercentage
&ominance 'ercent True arrayIcount5Dbor:x;evJK , / , 'ercentage
33
$erv:x;ev$ub)/*
;ast "00? ;ast @alue state5$erv"00?) B$# A:90D
;ast 03 ;ast @alue state5$erv03) B$# 03
)a'le 2: Statistics to add to the 6uery.
-) &isplay the results in the $tatistics !xplorer:
Figure 3%: -S 3ropped &all Stats displayed in the Statistics Explorer.
Re&ort (e"&!ates
Single File Report Template
;ogfile: Demo &rive Test ,.dt,
Dame: $ingle 9ile :eport Template
Aim: To create a report template that will return 2'3s from one file.
&efinition: 0reate a report template from existing parameters and queries which can be
run on any file. This will return the total number of dropped calls, a histogram of the
?andover &uration, maximum TA, mean 5linear) of :x;ev and total distance travelled
for the whole file.
'rocedure:
,) !nsure you have the above Demo file loaded.
>) 9irst we loo6 at the requirements for the report. These can be separated into
existing parameters and those we need to generate through queries.
34
Existing ;<$s 5in 9ile and #$ statistics query and in Timing Advance statistic)
#ean 5linear) level from the serving cell
Total distance travelled for the whole file
&ropped call total
#aximum Timing Advance
'e3 ;<$s
?andover &uration histogram.
The ?andoff &uration may already be a parameter, so it could be possible to add
this to a wor6boo6 to obtain the automatic histogram view of the data, but we are
trying to create a generic report template to be run on other files. To use the
automatic view, the legends will be controlled through the format group of the
parameter and may filter out ranges not found in the file. 9or this reason, we need
to force the number of ranges used in the histogram through a query.
+) &isplay File and "S statistics =uer on wor6boo6.
)) &isplay 8iming Advance statistic selecting Displa on 3or>boo> &Active1?
.) The wor6boo6 has got > wor6sheets: 0rossTab 9ormatted &ata with the raw data
from File and "S statistics =uer and $tatistic 9ormatted &ata with the raw data
from 8iming Advance statistic?
4) 2eeping the wor6boo6 open, switch bac6 to the Actix solution and write a
histogram query for ?andover &uration with C ranges from * 5inclusive) to )**
5inclusive).
-) &isplay Handover Duration Histogram selecting Displa on 3or>boo>
&Active1: now, the wor6boo6 is composed by + wor6sheets and the last is
?istogram 9ormatted &ata with the raw data from Handover Duration
Histogram?
C) Dotice how all + views from these two parameters have been added to the
wor6boo6 5$eries, ?istogram and $tatistic 9ormatted &ata tabs). $ave the
wor6boo6 to your des6top, and close the wor6boo6.
35
Figure 3(: Save the *or8'oo8.
=) Gpen the report template through the @or>boo> - 9pen @or>boo>6(eport
menu option, and choose to run it on the DemB$#5*) device stream.
Figure 3+: Strea Selection.
,*) These tabs will contain the results from whatever file you run the report template
on. Gpen S%eet 7 and create your 2'3 statistics here as follows:
,,) Dow go bac6 into the all other sheets and delete the raw data from row ,
downwards. This cleans the report template so that it can be run on any other file,
of varying si7e.
,>) $ave your report template.
,+) Gpen the Demo &rive Test , file and run the report template on this file as you
did in step =. 0ompare the results.
36
Figure 3.: #uilding the report.
nne)
state() vs prev!state()
&ue to the nature of how the information elements are reported in different ;ayer +
messages, useful engineering parameters such as signal strength and quality may not be at
the same message point as events such as dropped calls or call setup failures.
Therefore any query such as an !vent query which triggers on a dropped call may trigger
on an idle-mode $ystem 3nformation message, or a 00 &isconnect message with an
abnormal cause code. 3f the most recent !cDo or $erv:x;ev are required, it is necessary
to loo6 bac6 in the message sequence to the exact message where they were reported.
This is performed using the state&1 function. This function starts by loo6ing in the current
message for the parameter, but if it does not find a valid value, it iterates bac6 in the
message sequence until it finds the first valid value.
The prev#state&1 function wor6s in exactly the same manner, but the difference is, it
begins its search at the previous message. This is illustrated by the following two 9igures:
37
Figure ,: 9alues o" state:ServRxLevsu'; and prev<state:ServRxLevsu'; at tie
13:1/:11:2/1.
%here the selected message is the #easurement :eport where $er:v;ev$ub E --,d"m,
the stateform shows that the prevIstate5) function still returns --..
Figure #: 9alues o" state:ServRxLevsu'; and prev<state:ServRxLevsu'; at tie
13:1/:11:3+1.
?owever, when the following message is selected both values are the same.
This can be used to easily identify B$# cell-reselections where:
state& ServC$ 1 AB prev#state& ServC$ 1
Editing e"isting report templates
Actix solutions use !xcel as the standard reporting tool in fact, by displaying any
parameter or query on a wor6boo6, you have created a report template which can be run
on other files or superstreams. This is because the wor6boo6 actually stores the name of
38
the parameter and any query definitions inside itself, and also the name of the most recent
file the report was ran1created against.
This is useful when sharing report templates, as the embedded queries do not need to be
distributed with the report template they are automatically loaded and evaluated when the
report is run against a new file. ?owever, to modify the queries embedded inside a report
template, a particular process needs to be followed:
1. ;oad a data file
>. :un the old report template against the file. This will load the queries
embedded in the report template into the wor6space.
+. 0lose the report template.
). #odify the queries and chec6 the results are correct. &o not change the query
names.
.. :e-run the report template. The old queries in the template will be replaced
with the modified versions.
4. $ave the report template again. The next time it is run against a file, the new
query definitions will be used.
3f you need to add a query to a report template, first run the report, and then by right-
clic6ing on the query, choose Displa on 3or>boo> &Active1.
39

Das könnte Ihnen auch gefallen