using System;
using System.Collections.Generic;
namespace NPP.SmartSchedue.Api.Contracts.Services.Integration.Output
{
///
/// 整合性能指标
/// 用于监控和评估整合操作的性能表现
///
public class IntegrationPerformanceMetrics
{
///
/// 指标收集时间
///
public DateTime MetricsTime { get; set; } = DateTime.Now;
///
/// 整合记录ID
///
public long IntegrationRecordId { get; set; }
///
/// 处理任务数量
///
public int ProcessedTaskCount { get; set; }
///
/// 总处理时间(毫秒)
///
public long TotalProcessingTimeMs { get; set; }
///
/// 平均单任务处理时间(毫秒)
///
public double AverageTaskProcessingTimeMs { get; set; }
///
/// 验证总时间(毫秒)
///
public long ValidationTimeMs { get; set; }
///
/// 分配算法执行时间(毫秒)
///
public long AllocationAlgorithmTimeMs { get; set; }
///
/// 数据库操作时间(毫秒)
///
public long DatabaseOperationTimeMs { get; set; }
///
/// 外部服务调用时间(毫秒)
///
public long ExternalServiceCallTimeMs { get; set; }
///
/// 内存使用量(MB)
///
public long MemoryUsageMB { get; set; }
///
/// 成功率(百分比)
///
public decimal SuccessRate { get; set; }
///
/// 错误次数
///
public int ErrorCount { get; set; }
///
/// 警告次数
///
public int WarningCount { get; set; }
///
/// 重试次数
///
public int RetryCount { get; set; }
///
/// 缓存命中率(百分比)
///
public decimal CacheHitRate { get; set; }
///
/// 并发处理线程数
///
public int ConcurrentThreadCount { get; set; }
///
/// 吞吐量(任务/秒)
///
public decimal Throughput { get; set; }
///
/// 详细性能日志
///
public List DetailedLogs { get; set; } = new();
///
/// 性能评级
///
public PerformanceRating Rating { get; set; }
///
/// 性能优化建议
///
public List OptimizationSuggestions { get; set; } = new();
///
/// 人员公平性评分
///
public int PersonnelFairnessScore { get; set; }
///
/// 设备利用率
///
public decimal EquipmentUtilizationRate { get; set; }
///
/// 整体匹配成功率
///
public decimal OverallMatchSuccessRate { get; set; }
///
/// 平均任务复杂度
///
public decimal AverageTaskComplexity { get; set; }
}
///
/// 性能日志条目
///
public class PerformanceLogEntry
{
///
/// 时间戳
///
public DateTime Timestamp { get; set; } = DateTime.Now;
///
/// 操作名称
///
public string OperationName { get; set; }
///
/// 执行时间(毫秒)
///
public long ExecutionTimeMs { get; set; }
///
/// 相关数据
///
public Dictionary Metadata { get; set; } = new();
///
/// 日志级别
///
public PerformanceLogLevel Level { get; set; }
}
///
/// 性能评级枚举
///
public enum PerformanceRating
{
///
/// 优秀
///
Excellent = 1,
///
/// 良好
///
Good = 2,
///
/// 一般
///
Average = 3,
///
/// 较差
///
Poor = 4,
///
/// 差
///
Bad = 5
}
///
/// 性能日志级别枚举
///
public enum PerformanceLogLevel
{
///
/// 信息
///
Info = 1,
///
/// 警告
///
Warning = 2,
///
/// 错误
///
Error = 3,
///
/// 关键
///
Critical = 4
}
}