Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trace: add client_info support to clients. #7899

Merged
merged 4 commits into from
May 8, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 1 addition & 6 deletions trace/google/cloud/trace/_gapic.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,15 @@

"""Wrapper for interacting with the Stackdriver Trace API."""

from google.api_core.gapic_v1 import client_info
from google.api_core.gapic_v1 import method
from google.cloud._helpers import _datetime_to_pb_timestamp
from google.cloud.trace import __version__
from google.cloud.trace_v2.gapic import trace_service_client
from google.cloud.trace_v2.proto import trace_pb2
from google.protobuf.json_format import ParseDict
from google.rpc import status_pb2 as google_dot_rpc_dot_status__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2


_CLIENT_INFO = client_info.ClientInfo(client_library_version=__version__)


class _TraceAPI(object):
"""
Wrapper to help mapping trace-related APIs.
Expand Down Expand Up @@ -319,6 +314,6 @@ def make_trace_api(client):
proper configurations.
"""
generated = trace_service_client.TraceServiceClient(
credentials=client._credentials, client_info=_CLIENT_INFO
credentials=client._credentials, client_info=client._client_info
)
return _TraceAPI(generated, client)
15 changes: 13 additions & 2 deletions trace/google/cloud/trace/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,13 @@

"""Client for interacting with the Stackdriver Trace API."""

from google.cloud.trace._gapic import make_trace_api
from google.api_core.gapic_v1 import client_info
from google.cloud.client import ClientWithProject
from google.cloud.trace import __version__
from google.cloud.trace._gapic import make_trace_api


_CLIENT_INFO = client_info.ClientInfo(client_library_version=__version__)


class Client(ClientWithProject):
Expand All @@ -29,6 +34,11 @@ class Client(ClientWithProject):
credentials (Optional[:class:`~google.auth.credentials.Credentials`]):
The OAuth2 Credentials to use for this client. If not passed,
falls back to the default inferred from the environment.
client_info (google.api_core.gapic_v1.client_info.ClientInfo):
The client info used to send a user-agent string along with API
requests. If ``None``, then default info will be used. Generally,
you only need to set this if you're developing your own library
or partner tool.
"""

SCOPE = (
Expand All @@ -39,8 +49,9 @@ class Client(ClientWithProject):

_trace_api = None

def __init__(self, project=None, credentials=None):
def __init__(self, project=None, credentials=None, client_info=_CLIENT_INFO):
super(Client, self).__init__(project=project, credentials=credentials)
self._client_info = client_info

@property
def trace_api(self):
Expand Down
2 changes: 1 addition & 1 deletion trace/google/cloud/trace/v1/_gapic.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ def make_trace_api(client):
proper configurations.
"""
generated = trace_service_client.TraceServiceClient(
credentials=client._credentials, client_info=_CLIENT_INFO
credentials=client._credentials, client_info=client._client_info
)
return _TraceAPI(generated, client)

Expand Down
18 changes: 14 additions & 4 deletions trace/google/cloud/trace/v1/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,14 @@

"""Client for interacting with the Stackdriver Trace API."""

from google.cloud.trace.v1._gapic import make_trace_api
from google.cloud.client import ClientWithProject
from google.api_core.gapic_v1 import client_info
from google.cloud._helpers import _datetime_to_pb_timestamp
from google.cloud.client import ClientWithProject
from google.cloud.trace import __version__
from google.cloud.trace.v1._gapic import make_trace_api


_CLIENT_INFO = client_info.ClientInfo(client_library_version=__version__)


class Client(ClientWithProject):
Expand All @@ -27,11 +32,15 @@ class Client(ClientWithProject):
project (str): Required. The project which the client acts on behalf
of. If not passed, falls back to the default inferred
from the environment.

credentials (Optional[~google.auth.credentials.Credentials]):
The OAuth2 Credentials to use for this client. If not
passed, falls back to the default inferred from the
environment.
client_info (google.api_core.gapic_v1.client_info.ClientInfo):
The client info used to send a user-agent string along with API
requests. If ``None``, then default info will be used. Generally,
you only need to set this if you're developing your own library
or partner tool.
"""

SCOPE = (
Expand All @@ -42,8 +51,9 @@ class Client(ClientWithProject):

_trace_api = None

def __init__(self, project=None, credentials=None):
def __init__(self, project=None, credentials=None, client_info=_CLIENT_INFO):
super(Client, self).__init__(project=project, credentials=credentials)
self._client_info = client_info

@property
def trace_api(self):
Expand Down
Loading