syntax = "proto3";

package alarms.v1;

option go_package = "alarms/v1;alarms";

message SendAlarmConfiguration{
    string config_hash = 1;
}

message ProvideAlarmConfiguration {
    string config_hash = 1;
    AlarmConfiguration config = 2;
}

message AlarmConfiguration{
    string alarm = 1;
    string template = 2;
    string on_chart = 3;
    
    string classification = 4;
    string type = 5;
    string component = 6;
        
    string os = 7;
    string hosts = 8;
    string plugin = 9;
    string module = 10;
    string charts = 11;
    string families = 12;
    string lookup = 13;
    string every = 14;
    string units = 15;

    string green = 16;
    string red = 17;

    string calculation_expr = 18;
    string warning_expr = 19;
    string critical_expr = 20;
    
    string recipient = 21;
    string exec = 22;
    string delay = 23;
    string repeat = 24;
    string info = 25;
    string options = 26;
    string host_labels = 27;
    
    //parsed values from above config values
    //indicated by p_
    int32 p_db_lookup_after = 28;
    int32 p_db_lookup_before = 29;
    string p_db_lookup_dimensions = 30;
    string p_db_lookup_method = 31;
    string p_db_lookup_options = 32;
    int32 p_update_every = 33;
}
