Crates.io | qcs-api-client-grpc |
lib.rs | qcs-api-client-grpc |
version | 0.11.2 |
source | src |
created_at | 2022-09-22 21:14:08.273482 |
updated_at | 2024-10-09 02:24:13.975664 |
description | gRPC client for the QCS API |
homepage | https://github.com/rigetti/qcs-api-client-rust |
repository | https://github.com/rigetti/qcs-api-client-rust |
max_upload_size | |
id | 671994 |
size | 361,728 |
This crate provides an autogenerated gRPC client for the QCS API, along with helper utilities for automatically loading credentials from a user's QCS config and keeping authentication tokens refreshed.
get_channel
: create a Channel
to the given gRPC endpoint with QCS authentication automatically set up, that routes requests through client-side HTTP, HTTPS, or SOCKS5 proxies based on the presence of HTTPS_PROXY
or HTTP_PROXY
environment variables.wrap_channel
: wrap an existing Channel
with QCS authentication.See docs.rs for a quick start guide.
The get_channel
function configures the returned Channel
to route requests through a client proxy
based on the presence of environment variables HTTPS_PROXY
and/or HTTP_PROXY
. The variable names can be
all-uppercase or all-lowercase, but the all-uppercase variants will take precedence.
Currently, the supported proxy schemes are http
, https
, and socks5
.
There are some caveats to the proxy configuration:
socks5
proxy, unless they are both the same value.socks5
proxy, all traffic will routed through it.This crates also supports tracing via tower_http::trace
. It additionally customizes spans according
to OpenTelemetry gRPC semantic conventions.
This functionality is available using the "tracing" feature. The "tracing-opentelemetry" feature extends capabilities by supporting dynamically configured span attributes (such as "rpc.grpc.request.metadata.qcs_api_client_common
for configuration details.