This section gives a detailed explanation of both MDX queries:
CPU - Server group utilization
MEM - Server group utilization
Based on the measured CPU/Memory utilization, the total host utilization within the specified timeframe is displayed and qualified. For example, low, good, or high host utilization. The qualification is based on customizable threshold values %cpulow and %cpuhigh.
Looking at the host CPU utilization of netra1 in the specified time frame:
Avg util: The average utilization was low, because the measured average of 11.5%, see column Avg%, is less than the threshold of 30% (the value of %cpulow).
Peak util: There have been only some utilization peaks. That means less than 5% (the value of %cpupeakslower) of all measured values are greater than the threshold of 75% (the value of %cpuhigh).
Avg % = The average utilization was 11.5%.
Max % = The maximal utilization was 37.4%.
Low # = 88 values were less than the threshold of 30% (the value of %cpulow).
Good # = 8 values are in between 30% and 75% (the value of %cpulow and %cpuhigh).
High # = 0 values are greater than the threshold of 75% (the value of %cpuhigh).
Used = 9,923 CPU seconds have been utilized. (Absolute number of used CPU seconds).
Free = 76,477 CPU seconds have been free. (Absolute number of unused CPU seconds).
Total = 86,400 CPU seconds have been available. (Absolute number of available CPU seconds = Used + Free).
Looking at the host memory utilization of netra1 in the specified timeframe:
Avg util: The average utilization was high, because the measured average of 294.3% (see column Avg%) is greater than the threshold of 75% (the value of %memhigh).
Peak util: There have been many utilization peaks. That means more than 10% (the value of %mempeaksupper) of all measured values are greater than the threshold of 75% (the value of %memhigh).
Avg % = The average utilization was 294.3%.
Max % = The maximal utilization was 301.9%.
Low # = 0 values are less than the threshold of 30% (the value of %memlow).
Good # = 0 values (of all measured values) are in between 30% and 75% (the value of %memlow and %memhigh).
High # = 96 values (of all measured values) are greater than the threshold of 75% (the value of %memhigh).
Used 0 = On average 987,382,016 bytes have been allocated.
Free 0 = On average –651,837,696 bytes have been free. A negative value indicates that more memory was allocated from the applications than was available as RAM.
Total 0 = On average 335,544,320 bytes have been available memory as RAM (the total of Used + Free).
The parameters mentioned previously are maintained in N1 AA Analyzer customizing. See Basic Setup. The following table summarizes all available parameters within both MDX queries.
All the parameters given in the table below can be used for server group spanning or server group specific parameterisation.
The parameter none.analyzer.constants.XY is mandatory and server group spanning valid.
The parameter servergroup.analyzer.constants.XY is optional and server group specific valid. It overwrites the parameter none.analyzer.constants.XY within this specific server group.
Constant |
Description |
Default Value |
---|---|---|
none.analyzer.constants.%cpulow |
Lower threshold for CPU average utilization in percentage. If the measured average host utilization is smaller than %cpulow, the qualification is low. |
30 |
none.analyzer.constants.%memlow |
Lower threshold for memory average utilization in percentage. If the measured average host utilization is smaller than %memlow, the qualification is low. |
30 |
none.analyzer.constants.%cpuhigh |
Upper threshold for CPU average utilization in percentage. If the measured average host utilization is in between %cpulow and %cpuhigh, the qualification is good. If the measured average host utilization is greater than %cpuhigh, the qualification is high. |
75 |
none.analyzer.constants.%memhigh |
Upper threshold for memory average utilization in percentage. If the measured average host utilization is in between %memlow and %memhigh, the qualification is good. If the measured average host utilization is greater than %memhigh, the qualification is high. |
75 |
none.analyzer.constants.%cpupeakslower |
Lower threshold for CPU peak utilization in percentage. If less than %cpupeakslower percent of all measured host utilization values are greater than %cpuhigh, the qualification is some. |
5 |
none.analyzer.constants.%mempeakslower |
Lower threshold for memory peak utilization in percentage. If less than %mempeakslower percent of all measured host utilization values are greater than %memhigh, the qualification is some. |
5 |
none.analyzer.constants.%cpupeaksupper |
Upper threshold for CPU peak utilization in percentage. If more than %cpupeakslower AND less than %cpupeaksupper percent of all measured host utilization values are greater than %cpuhigh, the qualification is more. If more than %cpupeaksupper percent of all measured host utilization values are greater than %cpuhigh, the qualification is many. |
10 |
none.analyzer.constants.%mempeaksupper |
Upper threshold for memory peak utilization in percentage. If more than %mempeakslower and less than %mempeaksupper percent of all measured host utilization values are greater than %memhigh, the qualification is more. If more than %mempeaksupper percent of all measured host utilization values are greater than %memhigh, the qualification is many. |
10 |
This section describes how to create your own MDX queries.
Created MDX queries are available within the server group only.
These MDX queries are based on the underlying database model. The following picture gives an overview on this model. The fields in cursive letters will be available as measurands for your MDX Queries within the cube.
Every measurand taken by the Performance Collector on an N1 AA Client leads to a set of self-contained entries in the Resource Consumption table. The measurand is taken every 15 minutes. Each of these entries describes the resource consumption of exactly one measured application component at the given point in time.
Table A–2 Resource Consumption
ID_PhysicalHost |
ID_Component |
ID_TimeSlice |
ID_CPUTypeGroup |
CPUSeconds |
CPUNormSeconds |
MemoryBytes |
---|---|---|---|---|---|---|
1 |
6 |
2006-01-01 00:30:00 |
1 |
0.83 |
1.66 |
105553920 |
1 |
4 |
2006-01-01 00:30:00 |
1 |
157.87 |
315.74 |
177684480 |
1 |
3 |
2006-01-01 00:30:00 |
1 |
48.86 |
97.72 |
703455232 |
1 |
22 |
2006-01-01 00:30:00 |
1 |
10.41 |
20.82 |
4481024 |
1 |
5 |
2006-01-01 00:30:00 |
1 |
9.30 |
18.60 |
0 |
1 |
1 |
2006-01-01 00:30:00 |
1 |
658.00 |
1316.00 |
–655630336 |
1 |
2 |
2006-01-01 00:30:00 |
1 |
14.73 |
29.46 |
0 |
(with ID_Component 1 = Free; 2 = Other; 3 = SAP-D01-CI; 4 = SAP-D01-DB; 5 = user.root; 6 = system; 22 = SAP-E01-D05)
In this example, component #3, which is SAP-D01-CI, has used 48.86 CPU seconds within the 15–minute interval and the memory consumption was 703455232 bytes.
The CPUSeconds represent the utilized CPU seconds of the application component within the fixed measurement interval of 15 minutes. In the same way CPUNormSeconds represent the normalized utilization.
MemoryBytes represent the utilized memory allocation of the application component, which is a snapshot at the end of the measurement interval.
You always find an entry for the application component Free, that represents the unused resource capacity on the host (free memory, unused CPU seconds). In the case of memory, this value can be negative.
You always find an entry for the application component Other, that represents the resource consumptions that could not be assigned to any SRM Project.
The sum of all entries represents the servers capacity at the given point in time. For example, the sum of MemoryBytes give the available RAM capacity.
In addition to the MDX keywords, the following N1 AA Analyzer specific placeholders were introduced:
Table A–3 Analyzer Placeholders
Placeholder |
Description |
---|---|
[$ServerGroup] |
Constant member set of ServerGroup dimension containing a single member, equals the actual server group at runtime. |
[$PhysicalHost] |
Variable member set of ServerGroup dimension and PhysicalHost hierarchy, equals the selected set of physical hosts at runtime. Using this placeholder will enable the Physical hosts section in selection screen when executing an analysis. |
[$Application] |
Variable member set of Application dimension, equals the selected set of applications at runtime. Using this placeholder will enable the Applications section in selection screen when executing an analysis. |
[$Component] |
Variable member set of Application dimension and Component hierarchy, equals the selected set of components at runtime. Using this placeholder will enable the Components section in selection screen when executing an analysis. |
[$Consumptions] |
Variable member set as cross product of ServerGroup dimension and PhysicalHost hierarchy and Application dimension and Component hierarchy, equals the selected set of consumptions. Each happened on a dedicated physical host by a dedicated component. Using this placeholder will enable the Dedicated consumptions section in selection screen when executing an analysis. |
[$TimeSlice_Minute] |
Variable member set of TimeSlice dimension, equals the selected timeframe at runtime on a minute-based resolution. Using this placeholder will enable the Timeframe section in selection screen when executing an analysis. All time entries are represented in the UTC time zone when displaying analysis results in tables or diagrams. |
[$TimeSlice_Hour] |
Same as above, on a hour-based resolution (termed: aggregation). |
[$TimeSlice_Day] |
Same as above, on a day-based resolution (termed: aggregation). |
[$TimeSlice_Week] |
Same as above, on a week-based resolution (termed: aggregation). |
[$TimeSlice_Month] |
Same as above, on a month-based resolution (termed: aggregation). |
[$TimeSlice_Quarter] |
Same as above, on a quarter-based resolution (termed: aggregation). |
[$TimeSlice_Year] |
Same as above, on a hour-based resolution (termed: aggregation). |
[$TimeSlice] |
Same as [$TimeSlice_Minute], but in dispose of raw times written by the Performance Collector daemon. Note – Do not use this placeholder. All time entries in analysis results will be 15 minutes late. |
[$constantname] |
Constant that is replaced with the value maintained in Analyzer Customizing. See Basic Setup. The value will be taken from parameter none.analyzer.constants.constantname. Within a dedicated server group, the value will be overwritten by parameter servergroup.analyzer.constants.constantname only if this parameter is maintained, which is optional. |