08ea5fbe98
添加用户管理视图、API和状态管理文件
59 lines
1.9 KiB
Python
59 lines
1.9 KiB
Python
"""
|
|
测试性能监控服务
|
|
"""
|
|
|
|
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✅ 性能监控服务测试通过!')
|