1#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct CxEvent {
6 #[prost(message, optional, tag = "1")]
7 pub cx_event_key: ::core::option::Option<::prost::alloc::string::String>,
8 #[prost(message, optional, tag = "2")]
9 pub cx_event_type: ::core::option::Option<::prost::alloc::string::String>,
10 #[prost(map = "string, string", tag = "3")]
11 pub cx_event_labels: ::std::collections::HashMap<
12 ::prost::alloc::string::String,
13 ::prost::alloc::string::String,
14 >,
15 #[prost(message, optional, tag = "4")]
16 pub company_id: ::core::option::Option<i32>,
17 #[prost(message, optional, tag = "5")]
18 pub cx_event_timestamp: ::core::option::Option<::prost_wkt_types::Timestamp>,
19 #[prost(message, optional, tag = "9")]
20 pub cx_event_payload_type: ::core::option::Option<::prost::alloc::string::String>,
21 #[prost(message, optional, tag = "6")]
22 pub cx_event_payload: ::core::option::Option<::prost_wkt_types::Struct>,
23 #[prost(message, optional, tag = "7")]
24 pub cx_event_dedup_key: ::core::option::Option<::prost::alloc::string::String>,
25 #[prost(map = "string, string", tag = "8")]
26 pub cx_event_metadata: ::std::collections::HashMap<
27 ::prost::alloc::string::String,
28 ::prost::alloc::string::String,
29 >,
30}
31#[derive(serde::Serialize, serde::Deserialize)]
32#[serde(rename_all = "snake_case")]
33#[derive(Clone, Copy, PartialEq, ::prost::Message)]
34pub struct OrderBy {
35 #[prost(enumeration = "OrderByFields", tag = "1")]
36 pub field_name: i32,
37 #[prost(enumeration = "OrderByDirection", tag = "2")]
38 pub direction: i32,
39}
40#[derive(serde::Serialize, serde::Deserialize)]
41#[serde(rename_all = "snake_case")]
42#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
43#[repr(i32)]
44pub enum OrderByFields {
45 Unspecified = 0,
46 Timestamp = 1,
47}
48impl OrderByFields {
49 pub fn as_str_name(&self) -> &'static str {
54 match self {
55 Self::Unspecified => "ORDER_BY_FIELDS_UNSPECIFIED",
56 Self::Timestamp => "ORDER_BY_FIELDS_TIMESTAMP",
57 }
58 }
59 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
61 match value {
62 "ORDER_BY_FIELDS_UNSPECIFIED" => Some(Self::Unspecified),
63 "ORDER_BY_FIELDS_TIMESTAMP" => Some(Self::Timestamp),
64 _ => None,
65 }
66 }
67}
68#[derive(serde::Serialize, serde::Deserialize)]
69#[serde(rename_all = "snake_case")]
70#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
71#[repr(i32)]
72pub enum OrderByDirection {
73 Unspecified = 0,
74 Asc = 1,
75 Desc = 2,
76}
77impl OrderByDirection {
78 pub fn as_str_name(&self) -> &'static str {
83 match self {
84 Self::Unspecified => "ORDER_BY_DIRECTION_UNSPECIFIED",
85 Self::Asc => "ORDER_BY_DIRECTION_ASC",
86 Self::Desc => "ORDER_BY_DIRECTION_DESC",
87 }
88 }
89 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
91 match value {
92 "ORDER_BY_DIRECTION_UNSPECIFIED" => Some(Self::Unspecified),
93 "ORDER_BY_DIRECTION_ASC" => Some(Self::Asc),
94 "ORDER_BY_DIRECTION_DESC" => Some(Self::Desc),
95 _ => None,
96 }
97 }
98}
99#[derive(serde::Serialize, serde::Deserialize)]
100#[serde(rename_all = "snake_case")]
101#[derive(Clone, Copy, PartialEq, ::prost::Message)]
102pub struct EventsQueryFilter {
103 #[prost(message, optional, tag = "1")]
104 pub timestamp: ::core::option::Option<TimestampRange>,
105}
106#[derive(serde::Serialize, serde::Deserialize)]
107#[serde(rename_all = "snake_case")]
108#[derive(Clone, PartialEq, ::prost::Message)]
109pub struct EventsFilter {
110 #[prost(message, optional, tag = "1")]
111 pub timestamp: ::core::option::Option<TimestampRange>,
112 #[prost(message, repeated, tag = "2")]
113 pub cx_event_types: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
114 #[prost(message, repeated, tag = "4")]
115 pub cx_event_keys: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
116 #[prost(message, optional, tag = "5")]
117 pub cx_event_metadata_filters: ::core::option::Option<Filters>,
118 #[prost(message, optional, tag = "6")]
119 pub cx_event_labels_filters: ::core::option::Option<Filters>,
120}
121#[derive(serde::Serialize, serde::Deserialize)]
122#[serde(rename_all = "snake_case")]
123#[derive(Clone, PartialEq, ::prost::Message)]
124pub struct Filters {
125 #[prost(enumeration = "FilterOperator", tag = "1")]
126 pub operator: i32,
127 #[prost(message, repeated, tag = "2")]
128 pub path_and_values: ::prost::alloc::vec::Vec<FilterPathAndValues>,
129}
130#[derive(serde::Serialize, serde::Deserialize)]
131#[serde(rename_all = "snake_case")]
132#[derive(Clone, PartialEq, ::prost::Message)]
133pub struct FilterPathAndValues {
134 #[prost(message, optional, tag = "1")]
135 pub path: ::core::option::Option<::prost::alloc::string::String>,
136 #[prost(oneof = "filter_path_and_values::Values", tags = "100, 101")]
137 pub values: ::core::option::Option<filter_path_and_values::Values>,
138}
139pub mod filter_path_and_values {
141 #[derive(serde::Serialize, serde::Deserialize)]
142 #[serde(rename_all = "snake_case")]
143 #[derive(Clone, PartialEq, ::prost::Oneof)]
144 pub enum Values {
145 #[prost(message, tag = "100")]
146 MultipleValues(super::MultipleValues),
147 #[prost(message, tag = "101")]
148 Filters(super::Filters),
149 }
150}
151#[derive(serde::Serialize, serde::Deserialize)]
152#[serde(rename_all = "snake_case")]
153#[derive(Clone, PartialEq, ::prost::Message)]
154pub struct MultipleValues {
155 #[prost(message, repeated, tag = "1")]
156 pub values: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
157 #[prost(enumeration = "FilterMatcher", tag = "2")]
158 pub matcher: i32,
159}
160#[derive(serde::Serialize, serde::Deserialize)]
161#[serde(rename_all = "snake_case")]
162#[derive(Clone, Copy, PartialEq, ::prost::Message)]
163pub struct TimestampRange {
164 #[prost(message, optional, tag = "1")]
165 pub from: ::core::option::Option<::prost_wkt_types::Timestamp>,
166 #[prost(message, optional, tag = "2")]
167 pub to: ::core::option::Option<::prost_wkt_types::Timestamp>,
168}
169#[derive(serde::Serialize, serde::Deserialize)]
170#[serde(rename_all = "snake_case")]
171#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
172#[repr(i32)]
173pub enum FilterOperator {
174 AndOrUnspecified = 0,
175 Or = 1,
176}
177impl FilterOperator {
178 pub fn as_str_name(&self) -> &'static str {
183 match self {
184 Self::AndOrUnspecified => "FILTER_OPERATOR_AND_OR_UNSPECIFIED",
185 Self::Or => "FILTER_OPERATOR_OR",
186 }
187 }
188 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
190 match value {
191 "FILTER_OPERATOR_AND_OR_UNSPECIFIED" => Some(Self::AndOrUnspecified),
192 "FILTER_OPERATOR_OR" => Some(Self::Or),
193 _ => None,
194 }
195 }
196}
197#[derive(serde::Serialize, serde::Deserialize)]
198#[serde(rename_all = "snake_case")]
199#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
200#[repr(i32)]
201pub enum FilterMatcher {
202 TextOrUnspecified = 0,
203 Regexp = 1,
204}
205impl FilterMatcher {
206 pub fn as_str_name(&self) -> &'static str {
211 match self {
212 Self::TextOrUnspecified => "FILTER_MATCHER_TEXT_OR_UNSPECIFIED",
213 Self::Regexp => "FILTER_MATCHER_REGEXP",
214 }
215 }
216 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
218 match value {
219 "FILTER_MATCHER_TEXT_OR_UNSPECIFIED" => Some(Self::TextOrUnspecified),
220 "FILTER_MATCHER_REGEXP" => Some(Self::Regexp),
221 _ => None,
222 }
223 }
224}
225#[derive(serde::Serialize, serde::Deserialize)]
226#[serde(rename_all = "snake_case")]
227#[derive(Clone, PartialEq, ::prost::Message)]
228pub struct CxEventArray {
229 #[prost(message, repeated, tag = "1")]
230 pub events: ::prost::alloc::vec::Vec<CxEvent>,
231}
232#[derive(serde::Serialize, serde::Deserialize)]
233#[serde(rename_all = "snake_case")]
234#[derive(Clone, PartialEq, ::prost::Message)]
235pub struct CxEventSingleOrMultiple {
236 #[prost(oneof = "cx_event_single_or_multiple::Event", tags = "1, 2")]
237 pub event: ::core::option::Option<cx_event_single_or_multiple::Event>,
238}
239pub mod cx_event_single_or_multiple {
241 #[derive(serde::Serialize, serde::Deserialize)]
242 #[serde(rename_all = "snake_case")]
243 #[derive(Clone, PartialEq, ::prost::Oneof)]
244 pub enum Event {
245 #[prost(message, tag = "1")]
246 SingleEvent(super::CxEvent),
247 #[prost(message, tag = "2")]
248 MultipleEvents(super::CxEventArray),
249 }
250}
251#[derive(serde::Serialize, serde::Deserialize)]
252#[serde(rename_all = "snake_case")]
253#[derive(Clone, PartialEq, ::prost::Message)]
254pub struct GetEventRequest {
255 #[prost(message, optional, tag = "1")]
256 pub id: ::core::option::Option<::prost::alloc::string::String>,
257 #[prost(message, repeated, tag = "2")]
258 pub order_bys: ::prost::alloc::vec::Vec<OrderBy>,
259 #[prost(message, optional, tag = "3")]
260 pub pagination: ::core::option::Option<PaginationRequest>,
261}
262#[derive(serde::Serialize, serde::Deserialize)]
263#[serde(rename_all = "snake_case")]
264#[derive(Clone, PartialEq, ::prost::Message)]
265pub struct GetEventResponse {
266 #[prost(message, optional, tag = "1")]
267 pub event: ::core::option::Option<CxEventSingleOrMultiple>,
268 #[prost(message, optional, tag = "2")]
269 pub pagination: ::core::option::Option<PaginationResponse>,
270}
271#[derive(serde::Serialize, serde::Deserialize)]
272#[serde(rename_all = "snake_case")]
273#[derive(Clone, PartialEq, ::prost::Message)]
274pub struct BatchGetEventRequest {
275 #[prost(message, repeated, tag = "1")]
276 pub ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
277 #[prost(message, repeated, tag = "2")]
278 pub order_bys: ::prost::alloc::vec::Vec<OrderBy>,
279 #[prost(message, optional, tag = "3")]
280 pub pagination: ::core::option::Option<PaginationRequest>,
281 #[prost(message, optional, tag = "4")]
282 pub filter: ::core::option::Option<EventsQueryFilter>,
283}
284#[derive(serde::Serialize, serde::Deserialize)]
285#[serde(rename_all = "snake_case")]
286#[derive(Clone, PartialEq, ::prost::Message)]
287pub struct BatchGetEventResponse {
288 #[prost(map = "string, message", tag = "1")]
289 pub events: ::std::collections::HashMap<
290 ::prost::alloc::string::String,
291 CxEventSingleOrMultiple,
292 >,
293 #[prost(message, repeated, tag = "2")]
294 pub not_found_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
295 #[prost(message, optional, tag = "3")]
296 pub pagination: ::core::option::Option<PaginationResponse>,
297}
298#[derive(serde::Serialize, serde::Deserialize)]
299#[serde(rename_all = "snake_case")]
300#[derive(Clone, PartialEq, ::prost::Message)]
301pub struct PaginationRequest {
302 #[prost(message, optional, tag = "1")]
303 pub page_size: ::core::option::Option<u32>,
304 #[prost(message, optional, tag = "2")]
305 pub page_token: ::core::option::Option<::prost::alloc::string::String>,
306}
307#[derive(serde::Serialize, serde::Deserialize)]
308#[serde(rename_all = "snake_case")]
309#[derive(Clone, PartialEq, ::prost::Message)]
310pub struct PaginationResponse {
311 #[prost(message, optional, tag = "1")]
312 pub total_size: ::core::option::Option<u32>,
313 #[prost(message, optional, tag = "2")]
314 pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
315}
316#[derive(serde::Serialize, serde::Deserialize)]
317#[serde(rename_all = "snake_case")]
318#[derive(Clone, PartialEq, ::prost::Message)]
319pub struct ListEventsRequest {
320 #[prost(message, optional, tag = "1")]
321 pub filter: ::core::option::Option<EventsFilter>,
322 #[prost(message, repeated, tag = "2")]
323 pub order_bys: ::prost::alloc::vec::Vec<OrderBy>,
324 #[prost(message, optional, tag = "3")]
325 pub pagination: ::core::option::Option<PaginationRequest>,
326}
327#[derive(serde::Serialize, serde::Deserialize)]
328#[serde(rename_all = "snake_case")]
329#[derive(Clone, PartialEq, ::prost::Message)]
330pub struct ListEventsResponse {
331 #[prost(message, repeated, tag = "1")]
332 pub events: ::prost::alloc::vec::Vec<CxEvent>,
333 #[prost(message, optional, tag = "2")]
334 pub pagination: ::core::option::Option<PaginationResponse>,
335}
336#[derive(serde::Serialize, serde::Deserialize)]
337#[serde(rename_all = "snake_case")]
338#[derive(Clone, PartialEq, ::prost::Message)]
339pub struct GetEventsStatisticsRequest {
340 #[prost(message, optional, tag = "1")]
341 pub filter: ::core::option::Option<EventsFilter>,
342}
343#[derive(serde::Serialize, serde::Deserialize)]
344#[serde(rename_all = "snake_case")]
345#[derive(Clone, PartialEq, ::prost::Message)]
346pub struct GetEventsStatisticsResponse {
347 #[prost(map = "string, message", tag = "1")]
348 pub cx_event_metadata_field_statistics: ::std::collections::HashMap<
349 ::prost::alloc::string::String,
350 FieldStatistics,
351 >,
352 #[prost(map = "string, message", tag = "2")]
353 pub cx_event_labels_field_statistics: ::std::collections::HashMap<
354 ::prost::alloc::string::String,
355 FieldStatistics,
356 >,
357}
358#[derive(serde::Serialize, serde::Deserialize)]
359#[serde(rename_all = "snake_case")]
360#[derive(Clone, PartialEq, ::prost::Message)]
361pub struct FieldStatistics {
362 #[prost(map = "string, message", tag = "1")]
363 pub field_statistics: ::std::collections::HashMap<
364 ::prost::alloc::string::String,
365 i64,
366 >,
367}
368#[derive(serde::Serialize, serde::Deserialize)]
369#[serde(rename_all = "snake_case")]
370#[derive(Clone, PartialEq, ::prost::Message)]
371pub struct ListEventsCountRequest {
372 #[prost(message, optional, tag = "1")]
373 pub filter: ::core::option::Option<EventsFilter>,
374}
375#[derive(serde::Serialize, serde::Deserialize)]
376#[serde(rename_all = "snake_case")]
377#[derive(Clone, Copy, PartialEq, ::prost::Message)]
378pub struct ListEventsCountResponse {
379 #[prost(message, optional, tag = "1")]
380 pub count: ::core::option::Option<u64>,
381 #[prost(message, optional, tag = "2")]
382 pub reached_limit: ::core::option::Option<bool>,
383}
384#[derive(serde::Serialize, serde::Deserialize)]
385#[serde(rename_all = "snake_case")]
386#[derive(Clone, PartialEq, ::prost::Message)]
387pub struct ListAlertEventsRequest {
388 #[prost(message, repeated, tag = "1")]
389 pub alert_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
390 #[prost(message, optional, tag = "2")]
391 pub timestamp_range: ::core::option::Option<TimestampRange>,
392 #[prost(map = "string, string", tag = "3")]
393 pub cx_event_labels: ::std::collections::HashMap<
394 ::prost::alloc::string::String,
395 ::prost::alloc::string::String,
396 >,
397 #[prost(message, repeated, tag = "4")]
398 pub order_bys: ::prost::alloc::vec::Vec<OrderBy>,
399 #[prost(message, optional, tag = "5")]
400 pub pagination: ::core::option::Option<PaginationRequest>,
401}
402#[derive(serde::Serialize, serde::Deserialize)]
403#[serde(rename_all = "snake_case")]
404#[derive(Clone, PartialEq, ::prost::Message)]
405pub struct ListAlertEventsResponse {
406 #[prost(message, repeated, tag = "1")]
407 pub events: ::prost::alloc::vec::Vec<CxEvent>,
408 #[prost(message, optional, tag = "2")]
409 pub pagination: ::core::option::Option<PaginationResponse>,
410}
411pub mod events_service_client {
413 #![allow(
414 unused_variables,
415 dead_code,
416 missing_docs,
417 clippy::wildcard_imports,
418 clippy::let_unit_value,
419 )]
420 use tonic::codegen::*;
421 use tonic::codegen::http::Uri;
422 #[derive(Debug, Clone)]
423 pub struct EventsServiceClient<T> {
424 inner: tonic::client::Grpc<T>,
425 }
426 impl EventsServiceClient<tonic::transport::Channel> {
427 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
429 where
430 D: TryInto<tonic::transport::Endpoint>,
431 D::Error: Into<StdError>,
432 {
433 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
434 Ok(Self::new(conn))
435 }
436 }
437 impl<T> EventsServiceClient<T>
438 where
439 T: tonic::client::GrpcService<tonic::body::BoxBody>,
440 T::Error: Into<StdError>,
441 T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
442 <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
443 {
444 pub fn new(inner: T) -> Self {
445 let inner = tonic::client::Grpc::new(inner);
446 Self { inner }
447 }
448 pub fn with_origin(inner: T, origin: Uri) -> Self {
449 let inner = tonic::client::Grpc::with_origin(inner, origin);
450 Self { inner }
451 }
452 pub fn with_interceptor<F>(
453 inner: T,
454 interceptor: F,
455 ) -> EventsServiceClient<InterceptedService<T, F>>
456 where
457 F: tonic::service::Interceptor,
458 T::ResponseBody: Default,
459 T: tonic::codegen::Service<
460 http::Request<tonic::body::BoxBody>,
461 Response = http::Response<
462 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
463 >,
464 >,
465 <T as tonic::codegen::Service<
466 http::Request<tonic::body::BoxBody>,
467 >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
468 {
469 EventsServiceClient::new(InterceptedService::new(inner, interceptor))
470 }
471 #[must_use]
476 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
477 self.inner = self.inner.send_compressed(encoding);
478 self
479 }
480 #[must_use]
482 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
483 self.inner = self.inner.accept_compressed(encoding);
484 self
485 }
486 #[must_use]
490 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
491 self.inner = self.inner.max_decoding_message_size(limit);
492 self
493 }
494 #[must_use]
498 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
499 self.inner = self.inner.max_encoding_message_size(limit);
500 self
501 }
502 pub async fn get_event(
503 &mut self,
504 request: impl tonic::IntoRequest<super::GetEventRequest>,
505 ) -> std::result::Result<
506 tonic::Response<super::GetEventResponse>,
507 tonic::Status,
508 > {
509 self.inner
510 .ready()
511 .await
512 .map_err(|e| {
513 tonic::Status::unknown(
514 format!("Service was not ready: {}", e.into()),
515 )
516 })?;
517 let codec = tonic::codec::ProstCodec::default();
518 let path = http::uri::PathAndQuery::from_static(
519 "/com.coralogixapis.events.v3.EventsService/GetEvent",
520 );
521 let mut req = request.into_request();
522 req.extensions_mut()
523 .insert(
524 GrpcMethod::new(
525 "com.coralogixapis.events.v3.EventsService",
526 "GetEvent",
527 ),
528 );
529 self.inner.unary(req, path, codec).await
530 }
531 pub async fn batch_get_event(
532 &mut self,
533 request: impl tonic::IntoRequest<super::BatchGetEventRequest>,
534 ) -> std::result::Result<
535 tonic::Response<super::BatchGetEventResponse>,
536 tonic::Status,
537 > {
538 self.inner
539 .ready()
540 .await
541 .map_err(|e| {
542 tonic::Status::unknown(
543 format!("Service was not ready: {}", e.into()),
544 )
545 })?;
546 let codec = tonic::codec::ProstCodec::default();
547 let path = http::uri::PathAndQuery::from_static(
548 "/com.coralogixapis.events.v3.EventsService/BatchGetEvent",
549 );
550 let mut req = request.into_request();
551 req.extensions_mut()
552 .insert(
553 GrpcMethod::new(
554 "com.coralogixapis.events.v3.EventsService",
555 "BatchGetEvent",
556 ),
557 );
558 self.inner.unary(req, path, codec).await
559 }
560 pub async fn list_events(
561 &mut self,
562 request: impl tonic::IntoRequest<super::ListEventsRequest>,
563 ) -> std::result::Result<
564 tonic::Response<super::ListEventsResponse>,
565 tonic::Status,
566 > {
567 self.inner
568 .ready()
569 .await
570 .map_err(|e| {
571 tonic::Status::unknown(
572 format!("Service was not ready: {}", e.into()),
573 )
574 })?;
575 let codec = tonic::codec::ProstCodec::default();
576 let path = http::uri::PathAndQuery::from_static(
577 "/com.coralogixapis.events.v3.EventsService/ListEvents",
578 );
579 let mut req = request.into_request();
580 req.extensions_mut()
581 .insert(
582 GrpcMethod::new(
583 "com.coralogixapis.events.v3.EventsService",
584 "ListEvents",
585 ),
586 );
587 self.inner.unary(req, path, codec).await
588 }
589 pub async fn list_events_count(
590 &mut self,
591 request: impl tonic::IntoRequest<super::ListEventsCountRequest>,
592 ) -> std::result::Result<
593 tonic::Response<super::ListEventsCountResponse>,
594 tonic::Status,
595 > {
596 self.inner
597 .ready()
598 .await
599 .map_err(|e| {
600 tonic::Status::unknown(
601 format!("Service was not ready: {}", e.into()),
602 )
603 })?;
604 let codec = tonic::codec::ProstCodec::default();
605 let path = http::uri::PathAndQuery::from_static(
606 "/com.coralogixapis.events.v3.EventsService/ListEventsCount",
607 );
608 let mut req = request.into_request();
609 req.extensions_mut()
610 .insert(
611 GrpcMethod::new(
612 "com.coralogixapis.events.v3.EventsService",
613 "ListEventsCount",
614 ),
615 );
616 self.inner.unary(req, path, codec).await
617 }
618 pub async fn get_events_statistics(
619 &mut self,
620 request: impl tonic::IntoRequest<super::GetEventsStatisticsRequest>,
621 ) -> std::result::Result<
622 tonic::Response<super::GetEventsStatisticsResponse>,
623 tonic::Status,
624 > {
625 self.inner
626 .ready()
627 .await
628 .map_err(|e| {
629 tonic::Status::unknown(
630 format!("Service was not ready: {}", e.into()),
631 )
632 })?;
633 let codec = tonic::codec::ProstCodec::default();
634 let path = http::uri::PathAndQuery::from_static(
635 "/com.coralogixapis.events.v3.EventsService/GetEventsStatistics",
636 );
637 let mut req = request.into_request();
638 req.extensions_mut()
639 .insert(
640 GrpcMethod::new(
641 "com.coralogixapis.events.v3.EventsService",
642 "GetEventsStatistics",
643 ),
644 );
645 self.inner.unary(req, path, codec).await
646 }
647 pub async fn list_alert_events(
648 &mut self,
649 request: impl tonic::IntoRequest<super::ListAlertEventsRequest>,
650 ) -> std::result::Result<
651 tonic::Response<super::ListAlertEventsResponse>,
652 tonic::Status,
653 > {
654 self.inner
655 .ready()
656 .await
657 .map_err(|e| {
658 tonic::Status::unknown(
659 format!("Service was not ready: {}", e.into()),
660 )
661 })?;
662 let codec = tonic::codec::ProstCodec::default();
663 let path = http::uri::PathAndQuery::from_static(
664 "/com.coralogixapis.events.v3.EventsService/ListAlertEvents",
665 );
666 let mut req = request.into_request();
667 req.extensions_mut()
668 .insert(
669 GrpcMethod::new(
670 "com.coralogixapis.events.v3.EventsService",
671 "ListAlertEvents",
672 ),
673 );
674 self.inner.unary(req, path, codec).await
675 }
676 }
677}