Set profiling statistics to include in heatmap output. Args: sample_interval_usec: Sampling interval in microseconds duration_sec: Total profiling duration in seconds sample_rate: Effective sampling rate error_rate: Optional error rate during
(self, sample_interval_usec, duration_sec, sample_rate, error_rate=None, missed_samples=None, **kwargs)
| 506 | self._seen_lines = set() |
| 507 | |
| 508 | def set_stats(self, sample_interval_usec, duration_sec, sample_rate, error_rate=None, missed_samples=None, **kwargs): |
| 509 | """Set profiling statistics to include in heatmap output. |
| 510 | |
| 511 | Args: |
| 512 | sample_interval_usec: Sampling interval in microseconds |
| 513 | duration_sec: Total profiling duration in seconds |
| 514 | sample_rate: Effective sampling rate |
| 515 | error_rate: Optional error rate during profiling |
| 516 | missed_samples: Optional percentage of missed samples |
| 517 | **kwargs: Additional statistics to include |
| 518 | """ |
| 519 | self.stats = { |
| 520 | "sample_interval_usec": sample_interval_usec, |
| 521 | "duration_sec": duration_sec, |
| 522 | "sample_rate": sample_rate, |
| 523 | "error_rate": error_rate, |
| 524 | "missed_samples": missed_samples, |
| 525 | "python_version": sys.version, |
| 526 | "python_implementation": platform.python_implementation(), |
| 527 | "platform": platform.platform(), |
| 528 | } |
| 529 | self.stats.update(kwargs) |
| 530 | |
| 531 | def process_frames(self, frames, thread_id, weight=1): |
| 532 | """Process stack frames and count samples per line. |