
yamcs.protobuf.events.events_service.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of yamcs-api Show documentation
Show all versions of yamcs-api Show documentation
Used by external clients to communicate with Yamcs
syntax="proto2";
package yamcs.protobuf.events;
option java_package = "org.yamcs.protobuf";
option java_outer_classname = "EventsServiceProto";
option java_multiple_files = true;
import "google/protobuf/timestamp.proto";
import "yamcs/api/annotations.proto";
import "yamcs/api/httpbody.proto";
import "yamcs/protobuf/events/events.proto";
service EventsApi {
// List events
rpc ListEvents(ListEventsRequest) returns (ListEventsResponse) {
option (yamcs.api.route) = {
get: "/api/archive/{instance}/events"
additional_bindings {
post: "/api/archive/{instance}/events:list"
body: "*"
}
};
}
// Create an event
rpc CreateEvent(CreateEventRequest) returns (Event) {
option (yamcs.api.route) = {
post: "/api/archive/{instance}/events"
body: "*"
};
}
// List event sources
rpc ListEventSources(ListEventSourcesRequest) returns (ListEventSourcesResponse) {
option (yamcs.api.route) = {
get: "/api/archive/{instance}/events/sources"
};
}
// Streams back events
rpc StreamEvents(StreamEventsRequest) returns (stream Event) {
option (yamcs.api.route) = {
post: "/api/stream-archive/{instance}:streamEvents"
body: "*"
};
}
// Export events in CSV format
rpc ExportEvents(ExportEventsRequest) returns (stream yamcs.api.HttpBody) {
option (yamcs.api.route) = {
get: "/api/archive/{instance}:exportEvents"
};
}
// Receive event updates
rpc SubscribeEvents(stream SubscribeEventsRequest) returns (stream Event) {
option (yamcs.api.websocket) = {
topic: "events"
};
}
}
message ListEventsRequest {
// Yamcs instance name
optional string instance = 1;
// The zero-based row number at which to start outputting results.
// Default: ``0``
//
// This option is deprecated and will be removed in a later version.
// Use the returned continuationToken instead.
optional int64 pos = 2 [deprecated = true];
// The maximum number of returned records per page. Choose this value too high
// and you risk hitting the maximum response size limit enforced by the server.
// Default: ``100``
optional int32 limit = 3;
// The order of the returned results. Can be either ``asc`` or ``desc``.
// Default: ``desc``
optional string order = 4;
// The minimum severity level of the events. One of ``info``, ``watch``, ``warning``,
// ``distress``, ``critical`` or ``severe``. Default: ``info``
optional string severity = 5;
// The source of the events. Names must match exactly.
repeated string source = 6;
// Continuation token returned by a previous page response.
optional string next = 7;
// Filter the lower bound of the event's generation time. Specify a date string in
// ISO 8601 format. This bound is inclusive.
optional google.protobuf.Timestamp start = 8;
// Filter the upper bound of the event's generation time. Specify a date string in
// ISO 8601 format. This bound is exclusive.
optional google.protobuf.Timestamp stop = 9;
// Text to search for in the message.
optional string q = 10;
// Filter query. See :doc:`../filtering` for how to write a filter query.
//
// Literal text search matches against the fields ``message``, ``source`` and
// ``type``.
//
// Field comparisons can use any of the following fields:
//
// .. list-table::
// :widths: 25 25 50
//
// * - ``message``
// - string
// -
// * - ``seqNumber``
// - number
// -
// * - ``severity``
// - enum
// - One of ``info``, ``watch``, ``warning``, ``distress``, ``critical`` or ``severe``.
// * - ``source``
// - string
// -
// * - ``type``
// - string
// -
optional string filter = 11;
}
message ListEventsResponse {
// Deprecated, use ``events`` instead
repeated Event event = 1 [deprecated=true];
// Page with matching events
repeated Event events = 3;
// Token indicating the response is only partial. More results can then
// be obtained by performing the same request (including all original
// query parameters) and setting the ``next`` parameter to this token.
optional string continuationToken = 2;
}
message SubscribeEventsRequest {
// Yamcs instance name
optional string instance = 1;
// Filter query. See :doc:`../filtering` for how to write a filter query.
//
// Literal text search matches against the fields ``message``, ``source`` and
// ``type``.
//
// Field comparisons can use any of the following fields:
//
// .. list-table::
// :widths: 25 25 50
//
// * - ``message``
// - string
// -
// * - ``seqNumber``
// - number
// -
// * - ``severity``
// - enum
// - One of ``info``, ``watch``, ``warning``, ``distress``, ``critical`` or ``severe``.
// * - ``source``
// - string
// -
// * - ``type``
// - string
// -
optional string filter = 2;
}
message CreateEventRequest {
// Yamcs instance name
optional string instance = 1;
// Description of the type of the event. Useful for quick classification or filtering.
optional string type = 2;
// **Required.** Event message.
optional string message = 3;
// The severity level of the event. One of ``info``, ``watch``, ``warning``,
// ``distress``, ``critical`` or ``severe``. Default is ``info``
optional string severity = 4;
// Time associated with the event.
// If unspecified, this will default to the current mission time.
optional google.protobuf.Timestamp time = 5;
// Source of the event. Useful for grouping events in the archive. Default is
// ``User``.
optional string source = 6;
// Sequence number of this event. This is primarily used to determine unicity of
// events coming from the same source. If not set Yamcs will automatically
// assign a sequential number as if every submitted event is unique.
optional int32 sequenceNumber = 7;
// Additional properties
map extra = 8;
}
message StreamEventsRequest {
// Yamcs instance name
optional string instance = 1;
// Filter the lower bound of the event's generation time. Specify a date
// string in ISO 8601 format.
optional google.protobuf.Timestamp start = 2;
// Filter the upper bound of the event's generation time. Specify a date
// string in ISO 8601 format.
optional google.protobuf.Timestamp stop = 3;
// Event sources to include. Leave unset, to include all.
repeated string source = 4;
// Filter on minimum severity level
optional string severity = 5;
// Search by text
optional string q = 6;
// Filter query. See :doc:`../filtering` for how to write a filter query.
//
// Literal text search matches against the fields ``message``, ``source`` and
// ``type``.
//
// Field comparisons can use any of the following fields:
//
// .. list-table::
// :widths: 25 25 50
//
// * - ``message``
// - string
// -
// * - ``seqNumber``
// - number
// -
// * - ``severity``
// - enum
// - One of ``info``, ``watch``, ``warning``, ``distress``, ``critical`` or ``severe``.
// * - ``source``
// - string
// -
// * - ``type``
// - string
// -
optional string filter = 7;
}
message ListEventSourcesRequest {
// Yamcs instance name
optional string instance = 1;
}
message ListEventSourcesResponse {
// Deprecated, use ``sources`` instead
repeated string source = 1 [deprecated=true];
// Known event sources
repeated string sources = 2;
}
message ExportEventsRequest {
// Yamcs instance name
optional string instance = 1;
// Filter the lower bound of the event's generation time.
// Specify a date string in ISO 8601 format. This bound is inclusive.
optional google.protobuf.Timestamp start = 2;
// Filter the upper bound of the event's generation time. Specify a date
// string in ISO 8601 format. This bound is exclusive.
optional google.protobuf.Timestamp stop = 3;
// The source of the events. Names must match exactly.
repeated string source = 4;
// The minimum severity level of the events. One of ``info``, ``watch``,
// ``warning``, ``distress`` or ``severe``. Default: ``info``
optional string severity = 5;
// Text to search for in the message.
optional string q = 6;
// Filter query. See :doc:`../filtering` for how to write a filter query.
//
// Literal text search matches against the fields ``message``, ``source`` and
// ``type``.
//
// Field comparisons can use any of the following fields:
//
// .. list-table::
// :widths: 25 25 50
//
// * - ``message``
// - string
// -
// * - ``seqNumber``
// - number
// -
// * - ``severity``
// - enum
// - One of ``info``, ``watch``, ``warning``, ``distress``, ``critical`` or ``severe``.
// * - ``source``
// - string
// -
// * - ``type``
// - string
// -
optional string filter = 8;
// Column delimiter. One of ``TAB``, ``COMMA`` or ``SEMICOLON``.
// Default: ``TAB``.
optional string delimiter = 7;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy