Difference between revisions of "Plugin:IntelRDT/tests"

From collectd Wiki
Jump to: navigation, search
(Add testplan for IntelRDT plugin)
 
m
 
Line 27: Line 27:
 
| Verify user can setup simple configuration for intel_rdt plugin.
 
| Verify user can setup simple configuration for intel_rdt plugin.
 
|  
 
|  
# Start collecd daemon:
+
1. Start collectd daemon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
# Navigate to folder:
+
 
 +
2. Navigate to folder:
 
   $ cd /var/lib/csv/hostname_folder/
 
   $ cd /var/lib/csv/hostname_folder/
# Check that separate files for all available CPU monitoring statistic are present in folder:
+
3. Check that separate files for all available CPU monitoring statistic are present in folder:
 
   $ ls /intel_rdt-0
 
   $ ls /intel_rdt-0
 
|
 
|
Line 40: Line 41:
 
| Check user can add different group combinations for <code>intel_rdt</code> plugin.
 
| Check user can add different group combinations for <code>intel_rdt</code> plugin.
 
|
 
|
# Change configuration for <code>intel_rdt</code> plugin into <code>collectd.conf</code> file: set up Cores TestData
+
1. Change configuration for <code>intel_rdt</code> plugin into <code>collectd.conf</code> file: set up Cores TestData
# Start collecd deamon:
+
 
 +
2. Start collecd deamon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
# Navigate to folder:
+
 
 +
3. Navigate to folder:
 
   $ cd var/lib/csv/hostname_folder/
 
   $ cd var/lib/csv/hostname_folder/
# Check that separate files for all available  CPU monitoring statistic are present in appropriate folders:
+
 
 +
4. Check that separate files for all available  CPU monitoring statistic are present in appropriate folders:
 
   $ ls /intel_rdt-Core_Group
 
   $ ls /intel_rdt-Core_Group
  
Line 56: Line 60:
 
| Verify if user setup <code>intel_rdt</code> plugin using unsupported values error message appears and collectd start
 
| Verify if user setup <code>intel_rdt</code> plugin using unsupported values error message appears and collectd start
 
|
 
|
# Open collecd.conf file:
+
1. Open collecd.conf file:
 
   $ vim /install_folder/etc/collectd.conf
 
   $ vim /install_folder/etc/collectd.conf
# Set up Cores fielld in intel_rdt plugin section to TestData
+
 
# Start collecd deamon:
+
2. Set up Cores fielld in intel_rdt plugin section to TestData
 +
 
 +
3. Start collecd deamon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
# Verify that collectd is started with appropriate intel_rdt warning.
+
 
 +
4. Verify that collectd is started with appropriate intel_rdt warning.
  
 
   TestData = [ "*df"; "1, *%"; "0.1"]
 
   TestData = [ "*df"; "1, *%"; "0.1"]
Line 70: Line 77:
 
| Check new data are collected by <code>intel_rdt</code> with a defined interval
 
| Check new data are collected by <code>intel_rdt</code> with a defined interval
 
|
 
|
# Start collectd deamon:
+
1. Start collectd deamon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
# Navigate to folder
+
 
 +
2. Navigate to folder
 
   $ /lib/csv/intel_rdt-0 folder.
 
   $ /lib/csv/intel_rdt-0 folder.
# Open files with collected info  
+
 
# Verify that collected values  were renewed and written every 10 second (default value).
+
3. Open files with collected info  
 +
 
 +
4. Verify that collected values  were renewed and written every 10 second (default value).
 
|
 
|
 
* Every 10 second new data writes into file
 
* Every 10 second new data writes into file
Line 82: Line 92:
 
| Verify user can change interval for writing data into file
 
| Verify user can change interval for writing data into file
 
|
 
|
# Open collectd.conf file
+
1. Open collectd.conf file
 
   $ vim /install_folder/etc/collectd.conf
 
   $ vim /install_folder/etc/collectd.conf
# Configure <code>intel_rdt</code>:  
+
 
 +
2. Configure <code>intel_rdt</code>:  
 
   <LoadPlugin intel_rdt>
 
   <LoadPlugin intel_rdt>
 
     Interval 1
 
     Interval 1
 
   </LoadPlugin>
 
   </LoadPlugin>
# Start collectd daemon:
+
 
 +
3. Start collectd daemon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
# Navigate to folder
+
 
 +
4. Navigate to folder
 
   $ /lib/csv/intel_rdt-0 folder.
 
   $ /lib/csv/intel_rdt-0 folder.
# Open files with collected info
+
 
# Verify that collected values  were renewed and written every second.
+
5. Open files with collected info
 +
 
 +
6. Verify that collected values  were renewed and written every second.
 
|
 
|
 
* Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created
 
* Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created
Line 101: Line 116:
 
| Check if <code>LoadPlugin</code> section in <code>collectd.conf</code> is commented out, warning message appears
 
| Check if <code>LoadPlugin</code> section in <code>collectd.conf</code> is commented out, warning message appears
 
|
 
|
# Open collectd.conf file:
+
1. Open collectd.conf file:
 
   $ vim /install_folder/etc/collectd.conf
 
   $ vim /install_folder/etc/collectd.conf
# Configure intel_rdt:  
+
 
 +
2. Configure intel_rdt:  
 
Comment out
 
Comment out
 
   #LoadPlugin intel_rdt
 
   #LoadPlugin intel_rdt
# Start collectd deamon:
+
 
 +
3. Start collectd deamon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
 
|
 
|
Line 115: Line 132:
 
| Verify if Cores is empty  in collectd.conf , error appears
 
| Verify if Cores is empty  in collectd.conf , error appears
 
|
 
|
# Open collectd.conf file:
+
1. Open collectd.conf file:
 
   $ vim /install_folder/etc/collectd.conf
 
   $ vim /install_folder/etc/collectd.conf
# Configure intel_rdt: leave Cores section blank
+
 
# Start collectd deamon:
+
2. Configure intel_rdt: leave Cores section blank
 +
 
 +
3. Start collectd deamon:
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
 
|
 
|
Line 127: Line 146:
 
| Check if Cores keyword is changed,  warning  message appears
 
| Check if Cores keyword is changed,  warning  message appears
 
|
 
|
# Open collecd.conf file: vim /install_folder/etc/collectd.conf
+
1. Open collecd.conf file: vim /install_folder/etc/collectd.conf
# Configure intel_rdt :  change Cores to "Core"
+
 
# Start collecd deamon : /install_folder/sbin/collectd
+
2. Configure intel_rdt :  change Cores to "Core"
 +
 
 +
3. Start collecd deamon : /install_folder/sbin/collectd
 
|
 
|
 
* Message appears : "intel_rdt: Unknown configuration parameter "Core"".
 
* Message appears : "intel_rdt: Unknown configuration parameter "Core"".
Line 137: Line 158:
 
| Verify if in intel_rdt section is present extra keyword with value, collectd and intel_rdt have started
 
| Verify if in intel_rdt section is present extra keyword with value, collectd and intel_rdt have started
 
|
 
|
# Open collecd.conf file:
+
1. Open collecd.conf file:
 
   $ vim /install_folder/etc/collectd.conf
 
   $ vim /install_folder/etc/collectd.conf
# Configure intel_rdt : add extra key - value: Interval 1
+
 
# Start collecd deamon :  
+
2. Configure intel_rdt : add extra key - value: Interval 1
 +
 
 +
3. Start collecd deamon :  
 
   $ /install_folder/sbin/collectd
 
   $ /install_folder/sbin/collectd
 
|
 
|
Line 149: Line 172:
 
| Check if Core is used by another process (pqos), error message appears 
 
| Check if Core is used by another process (pqos), error message appears 
 
|
 
|
# Start pqos -m: 0 (pqos will monitored Core 0 for same parameters as intel_rdt).
+
1. Start pqos -m: 0 (pqos will monitored Core 0 for same parameters as intel_rdt).
# Start collecd deamon : /install_folder/sbin/collectd
+
 
 +
2. Start collecd deamon : /install_folder/sbin/collectd
 
|
 
|
 
* Error starting monitoring group 0 (pqos status=3)
 
* Error starting monitoring group 0 (pqos status=3)
Line 178: Line 202:
 
| Compare rdt information read by SNMP and write plugin for one core group
 
| Compare rdt information read by SNMP and write plugin for one core group
 
|
 
|
# Start collectd (default group "0-2").
+
1. Start collectd (default group "0-2").
# Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
+
 
# Verify retrieved values are equal to values written by csv plugin for one group.
+
2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
 +
 
 +
3. Verify retrieved values are equal to values written by csv plugin for one group.
 
|
 
|
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for one core group.
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for one core group.
Line 187: Line 213:
 
| Compare rdt information read by SNMP and write plugin for multiple core groups
 
| Compare rdt information read by SNMP and write plugin for multiple core groups
 
|
 
|
# Enable monitoring all core groups in collectd and start collectd service. e.g.:Cores "0", "1", "2", "4-5".
+
1. Enable monitoring all core groups in collectd and start collectd service. e.g.:Cores "0", "1", "2", "4-5".
# Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
+
 
# Verify retrieved values are equal to values written by csv plugin for multiple groups.
+
2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.
 +
 
 +
3. Verify retrieved values are equal to values written by csv plugin for multiple groups.
 
|
 
|
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for multiple core groups.
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for multiple core groups.
Line 196: Line 224:
 
| Compare rdt information read by SNMP and write plugin for all core groups
 
| Compare rdt information read by SNMP and write plugin for all core groups
 
|
 
|
# Enable monitoring all core groups in collectd and start collectd service. e.g.: Cores "0-87".
+
1. Enable monitoring all core groups in collectd and start collectd service. e.g.: Cores "0-87".
# Make sure that the following rdt information can be retrieved by SNMP for all core groups: rdtGroupDescr, rdtLlc, rdtIpc.
+
 
# Verify retrieved values are equal to values written by csv plugin for all core groups.
+
2. Make sure that the following rdt information can be retrieved by SNMP for all core groups: rdtGroupDescr, rdtLlc, rdtIpc.
 +
 
 +
3. Verify retrieved values are equal to values written by csv plugin for all core groups.
 
|
 
|
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for all core groups.
 
* RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for all core groups.
Line 215: Line 245:
 
| Verify that float rdtIpc values are not rounded in SNMP
 
| Verify that float rdtIpc values are not rounded in SNMP
 
|
 
|
# Enable monitoring two core groups in collectd and start collectd service.
+
1. Enable monitoring two core groups in collectd and start collectd service.
# Verify that rdtIpc information can be retrieved by SNMP for both core groups.
+
 
# Verify retrieved values are not rounded to zero.
+
2. Verify that rdtIpc information can be retrieved by SNMP for both core groups.
 +
 
 +
3. Verify retrieved values are not rounded to zero.
 
|
 
|
 
* RdtIpc values retrieved by snmpwalk are not rounded to zero and are equal to values written by csv plugin.
 
* RdtIpc values retrieved by snmpwalk are not rounded to zero and are equal to values written by csv plugin.

Latest revision as of 15:47, 26 March 2020

This page contains tests instructions for the IntelRDT plugin. This page is meant to aid in testing at release time and be a guide for developing automated tests. Please add any tests that you have run when testing this plugin.

OPNFV Barometer

Intel_rdt plugin tests

Test Environment details:

  • Bare Metal, U16.04
  • Kernel version: 3.13.0-96-generic

Repo/branch used:

  • collectd/master

Tests precondition:

  • Installed PQoS/Intel(R) RDT library (libpqos).
  • Installed collectd and enabled csv plugin.
  • Enable intel_rdt plugin with default values
# Description Test steps Expected result
1 Verify user can setup simple configuration for intel_rdt plugin.

1. Start collectd daemon:

 $ /install_folder/sbin/collectd

2. Navigate to folder:

 $ cd /var/lib/csv/hostname_folder/

3. Check that separate files for all available CPU monitoring statistic are present in folder:

 $ ls /intel_rdt-0
  • Folder intel_rdt-0 is created.
  • Collectd starts, files corresponding to intel_rdt are created
2 Check user can add different group combinations for intel_rdt plugin.

1. Change configuration for intel_rdt plugin into collectd.conf file: set up Cores TestData

2. Start collecd deamon:

 $ /install_folder/sbin/collectd

3. Navigate to folder:

 $ cd var/lib/csv/hostname_folder/

4. Check that separate files for all available CPU monitoring statistic are present in appropriate folders:

 $ ls /intel_rdt-Core_Group
 TestData = [ "1"; "0-1"; "5,6,7,10-12"; "1","2","3"; "0-2" "3,4,6" "8-10,12"; "" ]
  • Folders in format "intel_rdt-Core_Group" were created.
  • Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created for all TestData
3 Verify if user setup intel_rdt plugin using unsupported values error message appears and collectd start

1. Open collecd.conf file:

 $ vim /install_folder/etc/collectd.conf

2. Set up Cores fielld in intel_rdt plugin section to TestData

3. Start collecd deamon:

 $ /install_folder/sbin/collectd

4. Verify that collectd is started with appropriate intel_rdt warning.

 TestData = [ "*df"; "1, *%"; "0.1"]
  • Error raises for all TestData and collectd start
4 Check new data are collected by intel_rdt with a defined interval

1. Start collectd deamon:

 $ /install_folder/sbin/collectd

2. Navigate to folder

 $ /lib/csv/intel_rdt-0 folder.

3. Open files with collected info

4. Verify that collected values were renewed and written every 10 second (default value).

  • Every 10 second new data writes into file
5 Verify user can change interval for writing data into file

1. Open collectd.conf file

 $ vim /install_folder/etc/collectd.conf

2. Configure intel_rdt:

 <LoadPlugin intel_rdt>
   Interval 1
 </LoadPlugin>

3. Start collectd daemon:

 $ /install_folder/sbin/collectd

4. Navigate to folder

 $ /lib/csv/intel_rdt-0 folder.

5. Open files with collected info

6. Verify that collected values were renewed and written every second.

  • Files in format "bytes-llc-YYYY-MM-DD" and "ips-YYYY-MM-DD" were created
  • Every second new data writes into file
6 Check if LoadPlugin section in collectd.conf is commented out, warning message appears

1. Open collectd.conf file:

 $ vim /install_folder/etc/collectd.conf

2. Configure intel_rdt: Comment out

 #LoadPlugin intel_rdt

3. Start collectd deamon:

 $ /install_folder/sbin/collectd
  • Warning message appears: "Loadplugin Found a configuration for the `intel_rdtmon ' plugin, but the plugin isn't loaded or didn't register a configuration callback."
  • Collectd has started.
7 Verify if Cores is empty in collectd.conf , error appears

1. Open collectd.conf file:

 $ vim /install_folder/etc/collectd.conf

2. Configure intel_rdt: leave Cores section blank

3. Start collectd deamon:

 $ /install_folder/sbin/collectd
  • Error raises "Reading the config file failed!"
  • Collectd was not started
8 Check if Cores keyword is changed, warning message appears

1. Open collecd.conf file: vim /install_folder/etc/collectd.conf

2. Configure intel_rdt : change Cores to "Core"

3. Start collecd deamon : /install_folder/sbin/collectd

  • Message appears : "intel_rdt: Unknown configuration parameter "Core"".
  • Collectd have started.
9 Verify if in intel_rdt section is present extra keyword with value, collectd and intel_rdt have started

1. Open collecd.conf file:

 $ vim /install_folder/etc/collectd.conf

2. Configure intel_rdt : add extra key - value: Interval 1

3. Start collecd deamon :

 $ /install_folder/sbin/collectd
  • Intel_rdt: Unknown configuration parameter "Interval".
  • Intel_rdt and collectd have started
10 Check if Core is used by another process (pqos), error message appears

1. Start pqos -m: 0 (pqos will monitored Core 0 for same parameters as intel_rdt).

2. Start collecd deamon : /install_folder/sbin/collectd

  • Error starting monitoring group 0 (pqos status=3)
  • Collectd have started.

SNMP Intel_rdt plugin tests

Test Environment details:

  • Bare Metal, U16.04

Tests precondition:

  • Installed PQoS/Intel(R) RDT library (libpqos).
  • Installed collectd and enabled csv plugin.
  • Enabled snmp oids for intel_rdt plugin.

Limitations:

  • The testing platform supported only rdtLlc, rdtIpc parameters testing. So, due to platform limitation only rdtLlc, rdtIpc have been verified.
  • These tests have not been executed rdtMbmRemote, rdtMbmLocal.
# Description Test steps Expected result
1 Compare rdt information read by SNMP and write plugin for one core group

1. Start collectd (default group "0-2").

2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.

3. Verify retrieved values are equal to values written by csv plugin for one group.

  • RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for one core group.
2 Compare rdt information read by SNMP and write plugin for multiple core groups

1. Enable monitoring all core groups in collectd and start collectd service. e.g.:Cores "0", "1", "2", "4-5".

2. Read the following cache attributes on system via SNMP: rdtLlc, rdtIpc.

3. Verify retrieved values are equal to values written by csv plugin for multiple groups.

  • RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for multiple core groups.
3. Compare rdt information read by SNMP and write plugin for all core groups

1. Enable monitoring all core groups in collectd and start collectd service. e.g.: Cores "0-87".

2. Make sure that the following rdt information can be retrieved by SNMP for all core groups: rdtGroupDescr, rdtLlc, rdtIpc.

3. Verify retrieved values are equal to values written by csv plugin for all core groups.

  • RdtLlc and RdtIpc values retrieved by snmpwalk is equal to values written by csv plugin for all core groups.
4 Verify that rdtLlc values are not reset to zero during continuous snmpwalk for 2 time intervals
  • Enable monitoring all core groups, decrease time interval in collectd to 4 seconds. Start collectd service.
  • Verify rdtLlc information can be retrieved by SNMP for all core groups for: rdtGroupDescr, rdtLlc, rdtIpc, rdtMbmRemote, rdtMbmLocal.
  • Verify retrieved values are equal to values written by csv plugin (rdtGroupDescr, rdtLlc, rdtIpc).
  • Values are retrieved for rdtGroupDescr, rdtLlc, rdtIpc, rdtMbmRemote, rdtMbmLocal by snmpwalk.
  • RdtLlc values retrieved by snmpwalk are not reset to zero and are equal to values written by csv plugin for all core groups for rdtGroupDescr, rdtLlc, rdtIpc.
5 Verify that float rdtIpc values are not rounded in SNMP

1. Enable monitoring two core groups in collectd and start collectd service.

2. Verify that rdtIpc information can be retrieved by SNMP for both core groups.

3. Verify retrieved values are not rounded to zero.

  • RdtIpc values retrieved by snmpwalk are not rounded to zero and are equal to values written by csv plugin.

See also