Struct gapi_grpc::google::api::servicecontrol::v1::service_controller_client::ServiceControllerClient[][src]

pub struct ServiceControllerClient<T> { /* fields omitted */ }

Google Service Control API

Lets clients check and report operations against a managed service.

Implementations

impl ServiceControllerClient<Channel>[src]

pub async fn connect<D>(dst: D) -> Result<Self, Error> where
    D: TryInto<Endpoint>,
    D::Error: Into<StdError>, 
[src]

Attempt to create a new client by connecting to a given endpoint.

impl<T> ServiceControllerClient<T> where
    T: GrpcService<BoxBody>,
    T::ResponseBody: Body + HttpBody + Send + 'static,
    T::Error: Into<StdError>,
    <T::ResponseBody as HttpBody>::Error: Into<StdError> + Send
[src]

pub fn new(inner: T) -> Self[src]

pub fn with_interceptor(inner: T, interceptor: impl Into<Interceptor>) -> Self[src]

pub async fn check(
    &mut self,
    request: impl IntoRequest<CheckRequest>
) -> Result<Response<CheckResponse>, Status>
[src]

Checks whether an operation on a service should be allowed to proceed based on the configuration of the service and related policies. It must be called before the operation is executed.

If feasible, the client should cache the check results and reuse them for 60 seconds. In case of any server errors, the client should rely on the cached results for much longer time to avoid outage. WARNING: There is general 60s delay for the configuration and policy propagation, therefore callers MUST NOT depend on the Check method having the latest policy information.

NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has the size limit of 64KB.

This method requires the servicemanagement.services.check permission on the specified service. For more information, see Cloud IAM.

pub async fn report(
    &mut self,
    request: impl IntoRequest<ReportRequest>
) -> Result<Response<ReportResponse>, Status>
[src]

Reports operation results to Google Service Control, such as logs and metrics. It should be called after an operation is completed.

If feasible, the client should aggregate reporting data for up to 5 seconds to reduce API traffic. Limiting aggregation to 5 seconds is to reduce data loss during client crashes. Clients should carefully choose the aggregation time window to avoid data loss risk more than 0.01% for business and compliance reasons.

NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has the size limit (wire-format byte size) of 1MB.

This method requires the servicemanagement.services.report permission on the specified service. For more information, see Google Cloud IAM.

Trait Implementations

impl<T: Clone> Clone for ServiceControllerClient<T>[src]

impl<T> Debug for ServiceControllerClient<T>[src]

Auto Trait Implementations

impl<T> !RefUnwindSafe for ServiceControllerClient<T>

impl<T> Send for ServiceControllerClient<T> where
    T: Send

impl<T> Sync for ServiceControllerClient<T> where
    T: Sync

impl<T> Unpin for ServiceControllerClient<T> where
    T: Unpin

impl<T> !UnwindSafe for ServiceControllerClient<T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IntoRequest<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]

impl<T> WithSubscriber for T[src]