Bug #4806
closedWhen two techniques generated with ncf-builder use the same generic method with same parameters, reporting cannot dinstinguish them, and reports "Unknown"
Description
If we use, in different techniques generated by ncf-builder, the same components with the same values, thenthe reporting cannot distringuih which reports should match which technique, and we get "unknown" and "no answer" states
The Techniques generated by ncf-builder have a unique name, which is also the bundle name
Rudder generates a csv file for reporting, in the format
technique_name;;class_prefix_${key};;@RUDDER_ID
@;;component name;;component key
So far, we used only the class_prefix_${key} as a key to extract data from the this csv file, to get the line to report. Problem: we may have several time the same class_prefix_${key}, if we use in different technique the same component with same value.
Since we know the technique_name (we are calling it in the bundlesequence), we can use it in the key to search the csv file
However, we don't want to pass the technique name down the chain of generic method, as it would be clunky, so we inject it in the bundle current_technique_report_info, by calling this bundle with the current ncf technique name
And then, we change the logger_rudder to retrieve this value and expose the proper report line
This ticket part is to add the bundle that stores the current technique name, called current_technique_report_info(technique_name) and use the information in the logger_rudder
It needs the modification that is in ncf in #5389 taht calls current_technique_report_info(technique_name) before calling the technique
Updated by Nicolas PERRON over 10 years ago
- Subject changed from Generation of expected reports from a MetaTechnique containing installation of a package of different version create duplicate expected reports to Generation of expected reports from a MetaTechnique containing a method per OS with different arguments but same class_prefix create duplicate expected reports
The problem is observed when a method is called with different arguments per OS but resulting in a same class_result (same class_prefix).
By example, the use of:
- package_install_version("my_package","1.0"); and package_install_version("my_package","1.5");
- file_create_symlink_force("file1","my_symlink"); and file_create_symlink_force("file2","my_symlink");
A workaround could be to use variables in 40_it_ops_knowledge.
Updated by Nicolas CHARLES almost 10 years ago
- Status changed from New to Pending technical review
- Assignee set to Benoît PECCATTE
- Pull Request set to https://github.com/Normation/ncf/pull/167
https://github.com/Normation/ncf/pull/167
Must be merged at the same time as http://www.rudder-project.org/redmine/issues/5389
Updated by Nicolas CHARLES almost 10 years ago
This ticket updates the logger_rudder, to add the bundle which contains the injection of the report info, and used it
Updated by Nicolas CHARLES almost 10 years ago
- Subject changed from Generation of expected reports from a MetaTechnique containing a method per OS with different arguments but same class_prefix create duplicate expected reports to When two techniques generated with ncf-builder use the same generic method with same parameters, reporting cannot dinstinguish them, and reports "Unknown"
- Description updated (diff)
Updated by Nicolas CHARLES almost 10 years ago
- Status changed from Pending technical review to Pending release
- % Done changed from 0 to 100
Applied in changeset commit:a4db97e5828e60951a8cbe142e9e208030f5b101.
Updated by Benoît PECCATTE almost 10 years ago
Applied in changeset commit:dd7f176e396e83d7a27c0b150e0e5937f2c9f726.
Updated by Vincent MEMBRÉ about 8 years ago
- Status changed from Pending release to Released
Updated by Alexis Mousset over 2 years ago
- Target version changed from 0.x to ncf-0.x
- Priority set to 0
Updated by Alexis Mousset over 2 years ago
- Project changed from 41 to Rudder
- Category set to Generic methods