예제 #1
0
 def test_track_process_cpu_exception(self, logger_mock):
     with mock.patch(
             "azure_monitor.sdk.auto_collection.performance_metrics.psutil"
     ) as psutil_mock:
         performance_metrics_collector = PerformanceMetrics(
             meter=self._meter, labels=self._test_labels)
         psutil_mock.cpu_count.return_value = None
         obs = Observer(
             callback=performance_metrics_collector._track_process_cpu,
             name="\\Process(??APP_WIN32_PROC??)\\% Processor Time",
             description="Process CPU usage as a percentage",
             unit="percentage",
             value_type=float,
             meter=self._meter,
         )
         performance_metrics_collector._track_process_cpu(obs)
         self.assertEqual(logger_mock.exception.called, True)
예제 #2
0
 def test_track_process_cpu(self, psutil_mock):
     with mock.patch(
             "azure_monitor.sdk.auto_collection.performance_metrics.PROCESS"
     ) as process_mock:
         performance_metrics_collector = PerformanceMetrics(
             meter=self._meter, labels=self._test_labels)
         process_mock.cpu_percent.return_value = 44.4
         psutil_mock.cpu_count.return_value = 2
         obs = Observer(
             callback=performance_metrics_collector._track_process_cpu,
             name="\\Process(??APP_WIN32_PROC??)\\% Processor Time",
             description="Process CPU usage as a percentage",
             unit="percentage",
             value_type=float,
             meter=self._meter,
         )
         performance_metrics_collector._track_process_cpu(obs)
         self.assertEqual(
             obs.aggregators[tuple(self._test_labels.items())].current,
             22.2)