Statistics collection in the NFM-P
Overview
The NFM-P can be configured to collect statistics counters from managed Nokia NEs and NFM-P servers. Statistics collection requires the configuration and deployment of various policies.
Statistics policies can be configured in the following ways:
-
for an entire network, or top-down, using the forms available through the Tools→Statistics menu option
-
for a specific object, or bottom-up, using the Statistics tab of an object configuration form
An NFM-P operator can create statistics collection policies only for NEs that are within the span of control of the current NFM-P user. However, an operator can view statistics from NEs that are not within the current span of control.
By default, the NFM-P stores performance and accounting statistics data in the NFM-P database. If required, you can disable the NFM-P database storage of accounting statistics, performance statistics, or both, to prevent unnecessary database growth. For example, if you use an OSS client to retrieve statistics from the NFM-P, and do not require the NFM-P statistics presentation functions such as historical plotting, you may want to disable database storage for one or both statistics types. See the NSP System Administrator Guide for information about configuring NFM-P system preferences.
Using the NFM-P XML OSS interface to collect statistics
An OSS application can use the XML API to collect statistics. See the NSP NFM-P XML API Developer Guide for information about using the XML API to transfer statistics records to an OSS client.
Dynamic custom statistics aggregators
Some functions, for example NSP Analytics reporting, may require aggregated statistics data. You can define and create custom aggregators for performance, accounting, AA accounting, and AA Cflowd statistics data, and apply them dynamically.
Note: The aggregated statistics data persists through NFM-P system upgrades.
To create one or more custom aggregators, you must define the aggregators in a file and apply the definitions. An aggregator definition file has the format shown in Figure 2-1, Custom aggregator definition format.
Figure 2-1: Custom aggregator definition format
<aggregators> |
<aggregator aggregationName="AggregationName" |
description="Aggregation description" |
displayName="Aggregation name to display" |
aggregationKeys="key_1, key_2, ..." |
counters="counter1, counter2, ..." |
sumFields="counter2, counter4, ..." |
maxFields="counter2, counter4, ..." |
minFields="counter2, counter4, ..." |
varianceFields="counter6, counter7, ..." |
avgFields="counter2, counter7, ..." |
absAvgFields="counter4, counter4, ..." |
stddevFields="counter2, counter3, ..." |
absoluteValue=”true or false” |
applyFunctions="function1,function2,..." |
<dataSource sourceName="Aggregation source table" sourceType="table | class"/> |
</aggregator> |
</aggregators> |
Table 2-1, Custom aggregator attributes lists and describes the attributes in a custom aggregator definition.
Note: The values in a list attribute are comma-separated.
Table 2-1: Custom aggregator attributes
Attribute |
Description |
Mandatory |
---|---|---|
aggregationName |
Unique aggregator name; must not contain a space character The hourly, daily, weekly, and monthly aggregation table names have the following format: aggregationName_timescale where timescale is hour, day, week, or month |
Yes |
description |
Aggregator description shown by the Aggregation Manager in the client GUI |
Yes |
displayName |
Aggregator displayed name shown by the Aggregation Manager in the client GUI |
Yes |
aggregationKeys |
Composite attribute that acts as a primary key for data aggregation; analogous to a ‘group by’ query function |
Yes |
counters |
List of aggregation columns; the aggregation functions specified in the applyFunctions attribute are each applied to the counter values |
No |
sumFields |
List of sum aggregation fields; sum aggregation is performed against each specified field |
No |
maxFields |
List of max aggregation fields; max aggregation is performed against each specified field |
No |
minFields |
List of min aggregation fields; min aggregation is performed against each specified field |
No |
varianceFields |
List of variance aggregation fields; variance aggregation is performed against each specified field |
No |
avgFields |
List of average aggregation fields; average aggregation is performed against each specified field |
No |
absAvgFields |
List of absolute aggregation fields; absolute average aggregation is performed against each specified field |
No |
stddevFields |
List of standard deviation aggregation fields; standard deviation aggregation is performed against each specified field |
No |
absoluteValue |
Whether aggregation is to use a periodic data table as the data source; the value is true or false Setting the attribute to true indicates that the specified source table contains only absolute values. The aggregation is run against the associated sourceName_PERIODIC tables instead of against the raw data source specified in the XML file. |
No; default is false if not specified |
applyFunctions |
List of aggregation functions to apply against the specified counters The supported values are sum, max, min, avg, absavg, stddev, and variance |
No; default is sum if not specified |
sourceName |
Name of aggregation data source; statistics class name or auxiliary database table name |
Yes |
sourceType |
Defines the type of data source; the value is table or class |
Yes |
Figure 2-2, Table-sourced aggregator definition shows the contents of a single-aggregator definition file in which an auxiliary database table is the data source.
Figure 2-2: Table-sourced aggregator definition
<aggregators> |
<aggregator aggregationName="analytics_cflowd_aa_wifi_tcp_ag" |
description="Measures WiFi TCP performance per app group" |
displayName="WiFi TCP Performance per Application Group Aggregator" |
aggregationKeys="siteId, ipVers, subType, obsSubId, observationSide, groupId, partId, appGrpName" |
counters="flowCount, avgFlowDuration" |
maxFields="maxCtd, maxStd" |
minFields="minCtd,maxStd, maxFlowBytesC2s" /> |
<dataSource sourceName="analytics_cflowd_aa_wifi_tcp_ag" sourceType="table"/> |
</aggregator> |
</aggregators> |
Figure 2-3, Class-sourced aggregator definitions shows the contents of a file that contains two aggregator definitions; each definition specifies a statistics class as the data source.
Figure 2-3: Class-sourced aggregator definitions
<aggregators> |
<aggregator aggregationName="acct_statistics_egress_ag" |
description="Complete Service Egress Packets" |
displayName="CompServEgPktAgg" |
aggregationKeys="monitoredobjectpointer,queueid,svcid,sapid" |
counters="alloctetsforwarded, inprofilepktsoffered, inprofilepktsforwarded, inprofilepktsdropped, allpktsdropped" |
absoluteValue="true" |
applyFunctions="max,min,avg" > |
<dataSource sourceName="service.CompleteServiceEgressPacketOctets" sourceType="class"/> |
</aggregator> |
<aggregator aggregationName="acct_stats_ingress_ag" |
description="Complete Service Ingress Packets" |
displayName="CompServIngPktAgg" |
aggregationKeys="monitoredobjectpointer,queueid,svcid,sapid" |
counters="alloctetsforwarded, inprofilepktsoffered, inprofilepktsforwarded, inprofilepktsdropped, allpktsdropped" |
absoluteValue="true" |
applyFunctions="max,min,avg" > |
<dataSource sourceName="service.CompleteServiceIngressPacketOctets" sourceType="class"/> |
</aggregator> |
</aggregators> |
Creating and managing aggregator definitions
After you create an aggregator definition file, you must use a main server configuration utility to apply the definitions in the file. Subsequently, you can modify and re-apply the file to update the existing definitions, or remove definitions. See To create and manage custom statistics aggregators for information.
When you apply a definition and an aggregator with the same name does not exist, a new aggregator is created. If an aggregator with the same name exists, any changes to the aggregator are applied to the existing aggregator.
After you apply a definition, you can view and manage the aggregator using the Aggregation Manager in the NFM-P client GUI.