def rule_detection()

in aiops/MicroAgents/layers/data_layer/anomaly_detection.py [0:0]


def rule_detection(recent_df, metric_columns, dataset):
    res = {
        'increased_metric': set(),
        'decresed_metric': set(),
        'fluctuate_metric': set()
    }

    for metric_type in metric_columns:
        if metric_type == "CpuUsageRate(%)" or metric_type == 'MemoryUsageRate(%)':
            if recent_df[metric_type].max() > 80:
                res['increased_metric'].add(metric_type)
        else:
            if dataset == "GShop":
                # for hipster
                if recent_df[metric_type].max()  > 200:
                     res['increased_metric'].add(metric_type)
            elif dataset == "TrainTickets":
                # for ts
                if recent_df[metric_type].max() > 300:
                     res['increased_metric'].add(metric_type)
    return res