mixs

Mixer is Istio's point of integration with infrastructure backends and is the nexus for policy evaluation and telemetry reporting.

mixs probe

Check the liveness or readiness of a locally-running server

mixs probe [flags]
FlagsDescription
--interval <duration>Duration used for checking the target file's last modified time. (default `0s`)
--log_as_jsonWhether to format output as JSON or in plain console-friendly format
--log_caller <string>Comma-separated list of scopes for which to include caller information, scopes can be any of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] (default ``)
--log_output_level <string>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)
--log_rotate <string>The path for the optional rotating log file (default ``)
--log_rotate_max_age <int>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)
--log_rotate_max_backups <int>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)
--log_rotate_max_size <int>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)
--log_stacktrace_level <string>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)
--log_target <stringArray>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)
--probe-path <string>Path of the file for checking the availability. (default ``)

mixs server

Starts Mixer as a server

mixs server [flags]
FlagsShorthandDescription
--adapterWorkerPoolSize <int>Max number of goroutines in the adapter worker pool (default `1024`)
--address <string>Address to use for Mixer's gRPC API, e.g. tcp://127.0.0.1:9092 or unix:///path/to/file (default ``)
--apiWorkerPoolSize <int>Max number of goroutines in the API worker pool (default `1024`)
--averageLatencyThreshold <duration>Maximum average response time supported by the server. When this limit is exceeded, the server will drop traffic. (default `0s`)
--burstSize <int>Number of requests that are permitted beyond the configured maximum for a period of time. Only valid when used with 'maxRequestsPerSecond'. (default `0`)
--caCertFile <string>The location of the certificate file for the root certificate authority (default `/etc/certs/root-cert.pem`)
--certFile <string>The location of the certificate file for mutual TLS (default `/etc/certs/cert-chain.pem`)
--configDefaultNamespace <string>Namespace used to store mesh wide configuration. (default `istio-system`)
--configStoreURL <string>URL of the config store. Use k8s://path_to_kubeconfig, fs:// for file system, or mcps://<address> for MCP/Galley. If path_to_kubeconfig is empty, in-cluster kubeconfig is used. (default ``)
--configWaitTimeout <duration>Timeout until the initial set of configurations are received, before declaring as ready. (default `2m0s`)
--ctrlz_address <string>The IP Address to listen on for the ControlZ introspection facility. Use '*' to indicate all addresses. (default `localhost`)
--ctrlz_port <uint16>The IP port to use for the ControlZ introspection facility (default `9876`)
--keyFile <string>The location of the key file for mutual TLS (default `/etc/certs/key.pem`)
--latencySampleHalflife <duration>Decay rate of samples in calculation of average response latency. (default `1s`)
--latencySamplesPerSecond <ratelimit>Controls the frequency at which the server will sample response times to calculate the average response latency. (default `1.7976931348623157e+308`)
--livenessProbeInterval <duration>Interval of updating file for the liveness probe. (default `0s`)
--livenessProbePath <string>Path to the file for the liveness probe. (default ``)
--loadsheddingMode <throttlermode>When enabled, the server will log violations but will not enforce load limits. (default `disabled`)
--log_as_jsonWhether to format output as JSON or in plain console-friendly format
--log_caller <string>Comma-separated list of scopes for which to include caller information, scopes can be any of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] (default ``)
--log_output_level <string>Comma-separated minimum per-scope logging level of messages to output, in the form of <scope>:<level>,<scope>:<level>,... where scope can be one of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:info`)
--log_rotate <string>The path for the optional rotating log file (default ``)
--log_rotate_max_age <int>The maximum age in days of a log file beyond which the file is rotated (0 indicates no limit) (default `30`)
--log_rotate_max_backups <int>The maximum number of log file backups to keep before older files are deleted (0 indicates no limit) (default `1000`)
--log_rotate_max_size <int>The maximum size in megabytes of a log file beyond which the file is rotated (default `104857600`)
--log_stacktrace_level <string>Comma-separated minimum per-scope logging level at which stack traces are captured, in the form of <scope>:<level>,<scope:level>,... where scope can be one of [adapters, all, api, attributes, default, grpcAdapter, kube-converter, loadshedding, mcp, meshconfig, model, rbac] and level can be one of [debug, info, warn, error, fatal, none] (default `default:none`)
--log_target <stringArray>The set of paths where to output the log. This can be any path as well as the special values stdout and stderr (default `[stdout]`)
--maxConcurrentStreams <uint>Maximum number of outstanding RPCs per connection (default `1024`)
--maxMessageSize <uint>Maximum size of individual gRPC messages (default `1048576`)
--maxRequestsPerSecond <ratelimit>Maximum requests per second supported by the server. Any requests above this limit will be dropped. (default `0`)
--monitoringPort <uint16>HTTP port to use for Mixer self-monitoring information (default `15014`)
--numCheckCacheEntries <int32>Max number of entries in the check result cache (default `1500000`)
--port <uint16>-pTCP port to use for Mixer's gRPC API, if the address option is not specified (default `9091`)
--profileEnable profiling via web interface host:port/debug/pprof
--readinessProbeInterval <duration>Interval of updating file for the readiness probe. (default `0s`)
--readinessProbePath <string>Path to the file for the readiness probe. (default ``)
--singleThreadedIf true, each request to Mixer will be executed in a single go routine (useful for debugging)
--trace_jaeger_url <string>URL of Jaeger HTTP collector (example: 'http://jaeger:14268/api/traces?format=jaeger.thrift'). (default ``)
--trace_log_spansWhether or not to log trace spans.
--trace_sampling_rate <float>Sampling rate for generating trace data. Must be a value in the range [0.0, 1.0]. (default `0`)
--trace_zipkin_url <string>URL of Zipkin collector (example: 'http://zipkin:9411/api/v1/spans'). (default ``)
--useAdapterCRDsWhether or not to allow configuration of Mixer via adapter-specific CRDs
--useTemplateCRDsWhether or not to allow configuration of Mixer via template-specific CRDs

mixs version

Prints out build version information

mixs version [flags]
FlagsShorthandDescription
--output <string>-oOne of 'yaml' or 'json'. (default ``)
--short-sDisplays a short form of the version information

Environment variables

These environment variables affect the behavior of the mixs command.
Variable NameTypeDefault ValueDescription
BYPASS_OOP_MTLS_SAN_VERIFICATIONBooleanfalse
ISTIO_GPRC_MAXSTREAMSInteger100000
ISTIO_LANGString
KUBECONFIGString
PILOT_CERT_DIRString
PILOT_DEBOUNCE_AFTERTime Duration100ms
PILOT_DEBOUNCE_MAXTime Duration10s
PILOT_DEBUG_ADSZ_CONFIGBooleanfalse
PILOT_DISABLE_EDS_ISOLATIONString
PILOT_DISABLE_XDS_MARSHALING_TO_ANYString
PILOT_ENABLE_FALLTHROUGH_ROUTEBooleantrueEnableFallthroughRoute provides an option to add a final wildcard match for routes. When ALLOW_ANY traffic policy is used, a Passthrough cluster is used. When REGISTRY_ONLY traffic policy is used, a 502 error is returned.
PILOT_ENABLE_LOCALITY_LOAD_BALANCINGString
PILOT_ENABLE_MYSQL_FILTERBooleanfalseEnableMysqlFilter enables injection of `envoy.filters.network.mysql_proxy` in the filter chain.
PILOT_ENABLE_REDIS_FILTERBooleanfalseEnableRedisFilter enables injection of `envoy.filters.network.redis_proxy` in the filter chain.
PILOT_ENABLE_WAIT_CACHE_SYNCString
PILOT_HTTP10Booleanfalse
PILOT_INITIAL_FETCH_TIMEOUTTime Duration0sSpecifies the initial_fetch_timeout for config. If this time is reached without a response to the config requested by Envoy, the Envoy will move on with the init phase. This prevents envoy from getting stuck waiting on config during startup.
PILOT_PUSH_BURSTInteger100
PILOT_PUSH_THROTTLEInteger10
PILOT_SIDECAR_USE_REMOTE_ADDRESSBooleanfalseUseRemoteAddress sets useRemoteAddress to true for side car outbound listeners.
PILOT_TRACE_SAMPLINGFloating-Point100
POD_NAMESPACEStringistio-system
TERMINATION_DRAIN_DURATION_SECONDSString
V2_REFRESHTime Duration0s

Annotations

These resource annotations are used by the mixs command.
Annotation NameDescription
policy.istio.io/checkDetermines the policy for behavior when unable to connect to Mixer. If not set, FAIL_CLOSE is set, rejecting requests.
policy.istio.io/checkBaseRetryWaitTimeBase time to wait between retries, will be adjusted by backoff and jitter. In duration format. If not set, this will be 80ms.
policy.istio.io/checkMaxRetryWaitTimeMaximum time to wait between retries to Mixer. In duration format. If not set, this will be 1000ms.
policy.istio.io/checkRetriesThe maximum number of retries on transport errors to Mixer. If not set, this will be 0, indicating no retries.
policy.istio.io/langSelect a language runtime

Exported metrics

Metric NameTypeDescription
mixer_config_adapter_info_config_errors_totalLastValueThe number of errors encountered during processing of the adapter info configuration.
mixer_config_adapter_info_configs_totalLastValueThe number of known adapters in the current config.
mixer_config_attributes_totalLastValueThe number of known attributes in the current config.
mixer_config_handler_configs_totalLastValueThe number of known handlers in the current config.
mixer_config_handler_validation_error_totalLastValueThe number of errors encountered because handler validation returned error.
mixer_config_instance_config_errors_totalLastValueThe number of errors encountered during processing of the instance configuration.
mixer_config_instance_configs_totalLastValueThe number of known instances in the current config.
mixer_config_rule_config_errors_totalLastValueThe number of errors encountered during processing of the rule configuration.
mixer_config_rule_config_match_error_totalLastValueThe number of rule conditions that was not parseable.
mixer_config_rule_configs_totalLastValueThe number of known rules in the current config.
mixer_config_template_config_errors_totalLastValueThe number of errors encountered during processing of the template configuration.
mixer_config_template_configs_totalLastValueThe number of known templates in the current config.
mixer_config_unsatisfied_action_handler_totalLastValueThe number of actions that failed due to handlers being unavailable.
mixer_dispatcher_destinations_per_requestDistributionNumber of handlers dispatched per request by Mixer
mixer_dispatcher_destinations_per_variety_totalLastValueNumber of Mixer adapter destinations by template variety type
mixer_dispatcher_instances_per_requestDistributionNumber of instances created per request by Mixer
mixer_handler_closed_handlers_totalLastValueThe number of handlers that were closed during config transition.
mixer_handler_daemons_totalLastValueThe current number of active daemon routines in a given adapter environment.
mixer_handler_handler_build_failures_totalLastValueThe number of handlers that failed creation during config transition.
mixer_handler_handler_close_failures_totalLastValueThe number of errors encountered while closing handlers during config transition.
mixer_handler_new_handlers_totalLastValueThe number of handlers that were newly created during config transition.
mixer_handler_reused_handlers_totalLastValueThe number of handlers that were re-used during config transition.
mixer_handler_workers_totalLastValueThe current number of active worker routines in a given adapter environment.
mixer_loadshedding_requests_throttledCountThe number of requests that have been dropped by the loadshedder.
mixer_runtime_dispatch_duration_secondsDistributionDuration in seconds for adapter dispatches handled by Mixer.
mixer_runtime_dispatches_totalCountTotal number of adapter dispatches handled by Mixer.