Redesign and implement the telemetry framework#20387
Redesign and implement the telemetry framework#20387StormLiangMS merged 4 commits intosonic-net:masterfrom
Conversation
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
The unit test scripts have file name pattern |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
thanks Xin! it is updated now. |
|
Need this PR to pass the validate test cases, because the current container is missing the OTEL packages: sonic-net/sonic-buildimage#23855 |
|
Should we add the DB schema to the README? |
|
It might be better to add the DB schema in the test report uploader PR. That will be more concrete. : D |
Why I did it In order to enable telemetry framework in sonic-mgmt, we will need the open telemetry packages in the sonic-mgmt container: sonic-net/sonic-mgmt#20387 Work item tracking Microsoft ADO (number only): How I did it Updated the Dockerfile.j2. How to verify it Validated by manually install the packages into the mgmt container and run the scripts.
| return None | ||
|
|
||
| # Create ResourceMetrics with ScopeMetrics | ||
| scope = InstrumentationScope( |
There was a problem hiding this comment.
Seems we don't use this variable in the function?
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
1 similar comment
|
/azp run |
|
Commenter does not have sufficient privileges for PR 20387 in repo sonic-net/sonic-mgmt |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
hi @r12f . Questions, when to collect metrics, how long delay will be added? Where to host the metrics data, kusto or other databases? |
|
Hi @StormLiangMS , whenever a test completes it will write 1 file for db reporter or send 1 tcp/http request for to reporter. So the delay for each test is at ms level, hence trivial comparing to the test run itself. The timeseries metrics will be hosted in lab at this moment. And db reporter data will be stored in Kusto via other file parser and separate kusto uploader. |
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: vikumarks <vikumar7ks@gmail.com>
Why I did it In order to enable telemetry framework in sonic-mgmt, we will need the open telemetry packages in the sonic-mgmt container: sonic-net/sonic-mgmt#20387 Work item tracking Microsoft ADO (number only): How I did it Updated the Dockerfile.j2. How to verify it Validated by manually install the packages into the mgmt container and run the scripts. Signed-off-by: Feng Pan <fenpan@microsoft.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: opcoder0 <110003254+opcoder0@users.noreply.github.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Dan Caugherty <dcaugher@cisco.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Nishanth Sampath Kumar <nissampa@cisco.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: selldinesh <dinesh.sellappan@keysight.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Saravanan <saravanan@nexthop.ai>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Aharon Malkin <amalkin@nvidia.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: YiFan Wang <yifan@nexthop.ai>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Priyansh Tratiya <ptratiya@microsoft.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Lakshmi Yarramaneni <lakshmi@nexthop.ai>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Yael Tzur <ytzur@nvidia.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (sonic-net#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Zhuohui Tan <zhuohui.tan@amd.com>
What is the motivation for this PR? The current telemetry framework has many serious problems: Hard to import, because it is outside of the tests folder No implementation, hard to try out Hard to use and extend, because the interface is too primitive No tests and can break easily How did you do it? This PR add a few things to improve the current telemetry framework: Add new design doc with example code provided in the doc. Implement both TS (timeseries) and DB (database) reporter, so we can try the feature easily. How did you verify/test it? Run all tests locally and passed. Any platform specific information? N/A. Fix TS reporters. Fix TSRepoter. Fix TS reporter. minor fix. Fix example. Reverse relationship of metrics and reporter to support more types of metrics in future. Remove bydesign not working test. Fix example. Update tests. Update TS reporter and DB repoter. Update minor things. Remove no required code. Revert unexpected change. Rename and update doc. * Get os version and job id (#1) Get os version and elastictest job id from correct place. * Revert OS version change. * Remove duplicated mock reporter fixture. --------- Co-authored-by: Yutong Zhang <90831468+yutongzhang-microsoft@users.noreply.github.com> Signed-off-by: Abhishek <abhishek@nexthop.ai>

Description of PR
Summary:
Fixes # (issue)
Type of change
Back port request
Approach
What is the motivation for this PR?
The current telemetry framework has many serious problems:
How did you do it?
This PR add a few things to improve the current telemetry framework:
How did you verify/test it?
Run all tests locally and passed.
Any platform specific information?
N/A.
Supported testbed topology if it's a new test case?
Documentation