Skip to content

Latest commit

 

History

History
78 lines (58 loc) · 2.94 KB

File metadata and controls

78 lines (58 loc) · 2.94 KB

Using the API

The mixer exposes three gRPC methods: Check, Report, and Quota. All three methods use a consistent request style consisting of two pieces of state:

  • Request Identification. An integer generated by the caller that uniquely identifies the particular request. This value is returned by the mixer in the response message which makes it possible for the caller to correlate incoming responses with the original requests it sent out.

  • Attributes. A map of name/value pairs describing information discovered and/or known by the caller. The various policies enforced by the mixer are applied based on these attributes.

To learn more...

Checking preconditions

Service preconditions are used to restrict a service consumer's access to a service's facilities. For example, a service may need to ensure the caller is on a whitelist or not on a blacklist, or that the caller has valid credentials, etc.

The Istio mixer provides a simple Check call used to verify preconditions. The results of a precondition check are highly cachable and mixer clients are expected to do so for best performance. The infrastructure is designed to facilitate this.

Once you have published a managed service, you can call the Check method for the service without additional configuration. The following example shows the shape of a request to perform a single check:

TBD

The response from the Check method indicates whether the check succeeded.

Reporting logs

The Istio mixer can be used to send logs to both service producers and service consumers. The mixer accepts structured or unstructured log data, which it batches and forwards to the appropriate configured monitoring backend such as 'Stackdriver Logging'.

Whereas Stackdriver Logging and similar systems allow a service to produce logs for the sake of the service's producer, the Istio mixer also lets you produce logs that are intended for the service consumers. This makes it possible for service consumers to understand and diagnose their use of the service.

Reporting metrics

The Istio mixer can be used to produce monitoring data to send to service producers and service consumers. Monitoring provides visibility into the performance, uptime, and overall health of individual services.

The mixer accepts metrics, which it batches and aggregates and forwards to the appropriate configured monitoring backend such as 'Stackdriver Monitoring'.

Whereas Stackdriver Monitorring and similar systems allow a service to produce monitoring data for the sake of the service's producer, the Istio mixer is designed to also produce monitoring data which is intended for the service's consumers. This makes it possible for service consumers to understand and diagnose use of the service.

Allocating and freeing quotas

TBD