github.com/sentienttechnologies/studio-go-runner@v0.0.0-20201118202441-6d21f2ced8ee/proto/reports.proto (about)

     1  // Copyright © 2020 Cognizant Digital Business, Evolutionary AI. All rights reserved. Issued under the Apache 2.0 license.
     2  
     3  syntax = "proto3";
     4  
     5  package dev.studio_go_runner.reports;
     6  
     7  import "google/protobuf/timestamp.proto";
     8  import "google/protobuf/wrappers.proto";
     9  import "google/protobuf/any.proto";
    10  
    11  option go_package = "dev.cognizant_dev.ai/genproto/studio-go-runner/reports/v1;reports";
    12  
    13  // Queue message format. All messages conform to this format
    14  message Report {
    15    // Timestamp of the time when the report message was emitted
    16    google.protobuf.Timestamp time = 1;
    17  
    18    // The unique ID of this experiment assigned by the experimenter.  
    19    // If the report has no associated or known experiment id this 
    20    // field will not be present.
    21    google.protobuf.StringValue experiment_id =2;
    22  
    23    // A unique ID that was generated by the runners attempt to run the experiment.
    24    // This value will change between attempts. If the report has no associated or
    25    // known experiment id this field will not be present.
    26    google.protobuf.StringValue unique_id = 3;
    27  
    28    // A unique ID denoting the host, pod, or node that this experiment attempt
    29    // is being performed on.
    30    string executor_id = 4;
    31  
    32    oneof payload {
    33        google.protobuf.Any proto_any = 10;
    34  
    35        // The log entry payload, represented as a Unicode string (UTF-8).
    36        string text= 11;
    37  
    38        // A structured log message from the runner
    39        LogEntry logging = 12;
    40  
    41        // A progress message generated by the experiment
    42        Progress progress = 13;
    43    }
    44  }
    45  
    46  
    47  enum LogSeverity {
    48    // (0) The log entry has no assigned severity level.
    49    DEFAULT = 0;
    50  
    51    // (100) Trace information.
    52    TRACE = 100;
    53  
    54    // (200) Debug information.
    55    DEBUG = 200;
    56  
    57    // (300) Routine information, such as ongoing status or performance.
    58    INFO = 300;
    59  
    60    // (400) Normal but significant events, such as start up, shut down, or
    61    // a configuration change.
    62    WARNING = 400;
    63  
    64    // (500) Error events are likely to cause problems.
    65    ERROR = 500;
    66  
    67    // (600) One or more systems are unusable.
    68    FATAL = 600;
    69  }
    70  
    71  
    72  // Structured log message
    73  message LogEntry {
    74    // Timestamp of the time when the log entry was generated
    75    google.protobuf.Timestamp time = 1;
    76    // Severity code for the log entry
    77    LogSeverity severity = 2;
    78    // Mesage string
    79    string message = 3;
    80    // Key value pairs of context information
    81    map<string, string> fields = 4;
    82  }
    83  
    84  
    85  // JSON messages emitted by the experiment application code.  These messages
    86  // should conform to the format documented in [docs/metadata.md](docs/metadata.md#JSON-Document)
    87  message Progress {
    88    // Timestamp of the time when the json payload was generated by the experiment
    89    google.protobuf.Timestamp time = 1;
    90  
    91    // The valid json payload emitted by the experiment
    92    string json = 2;
    93  
    94    // This field is used by the runner when the experiment is deemed to have
    95    // been completed including any needed uploads to storage platform etc.
    96    bool finished = 3;
    97  }