""" 测试性能监控服务 """ import time from core.performance_monitor import performance_monitor, PerformanceContext print('测试性能监控服务...') # 测试1: 记录性能指标 print('\n1. 测试记录性能指标:') metric = performance_monitor.record_metric("test_operation", 1.5, {"detail": "test"}) print(f' 记录指标: {metric.name} = {metric.duration}s') # 测试2: 使用装饰器测量性能 print('\n2. 测试装饰器测量:') @performance_monitor.measure("decorated_function") def test_function(): time.sleep(0.1) return "done" result = test_function() print(f' 函数执行结果: {result}') metrics = performance_monitor.get_metrics("decorated_function") print(f' 记录指标数: {len(metrics)}') # 测试3: 使用上下文管理器 print('\n3. 测试上下文管理器:') with performance_monitor.measure_context("context_operation"): time.sleep(0.05) metrics = performance_monitor.get_metrics("context_operation") print(f' 记录指标数: {len(metrics)}') if metrics: print(f' 持续时间: {metrics[0].duration:.3f}s') # 测试4: 生成性能报告 print('\n4. 测试生成性能报告:') report = performance_monitor.get_performance_report() print(f' 总指标数: {report["total_metrics"]}') print(f' 指标分类: {list(report["metrics_by_name"].keys())}') print(f' 阈值违规: {len(report["threshold_violations"])}') # 测试5: 检查阈值 print('\n5. 测试阈值检查:') is_ok = performance_monitor.check_threshold("page_load", 2.0) print(f' 页面加载2秒: {"通过" if is_ok else "失败"}') is_ok = performance_monitor.check_threshold("page_load", 5.0) print(f' 页面加载5秒: {"通过" if is_ok else "失败"}') # 测试6: 获取平均值 print('\n6. 测试获取平均值:') avg = performance_monitor.get_average_duration("test_operation") print(f' test_operation平均时间: {avg:.3f}s') print('\n✅ 性能监控服务测试通过!')