diff --git a/monitoring/api/v3/cloud-client/snippets.py b/monitoring/api/v3/cloud-client/snippets.py index e384cb02d12..430d1b93865 100644 --- a/monitoring/api/v3/cloud-client/snippets.py +++ b/monitoring/api/v3/cloud-client/snippets.py @@ -120,10 +120,17 @@ def list_monitored_resources(): # [END list_monitored_resources] -def get_monitored_resource_descriptor(type): +def get_monitored_resource_descriptor(type_): # [START get_monitored_resources] client = monitoring.Client() - print(client.fetch_resource_descriptor(type)) + print(client.fetch_resource_descriptor(type_)) + # [END get_monitored_resources] + + +def get_metric_descriptor(type_): + # [START get_monitored_resources] + client = monitoring.Client() + print(client.fetch_metric_descriptor(type_)) # [END get_monitored_resources] @@ -143,6 +150,17 @@ def get_monitored_resource_descriptor(type): help=list_metric_descriptors.__doc__ ) + get_metric_descriptor_parser = subparsers.add_parser( + 'get-metric-descriptor', + help=get_metric_descriptor.__doc__ + ) + + get_metric_descriptor_parser.add_argument( + '--metric', + help='The metric type of the metric descriptor to see details about.', + required=True + ) + delete_metric_descriptor_parser = subparsers.add_parser( 'delete-metric-descriptor', help=list_metric_descriptors.__doc__ @@ -201,6 +219,8 @@ def get_monitored_resource_descriptor(type): create_metric_descriptor() if args.command == 'list-metric-descriptors': list_metric_descriptors() + if args.command == 'get-metric-descriptor': + get_metric_descriptor(args.metric) if args.command == 'delete-metric-descriptor': delete_metric_descriptor(args.metric) if args.command == 'list-resources': diff --git a/monitoring/api/v3/cloud-client/snippets_test.py b/monitoring/api/v3/cloud-client/snippets_test.py index a77968849fa..e9fea4d176d 100644 --- a/monitoring/api/v3/cloud-client/snippets_test.py +++ b/monitoring/api/v3/cloud-client/snippets_test.py @@ -15,8 +15,11 @@ import snippets -def test_create_and_delete_metric_descriptor(capsys): +def test_create_get_delete_metric_descriptor(capsys): snippets.create_metric_descriptor() + snippets.get_metric_descriptor('custom.googleapis.com/my_metric') + out, _ = capsys.readouterr() + assert 'a simple example' in out snippets.delete_metric_descriptor('custom.googleapis.com/my_metric') out, _ = capsys.readouterr() assert 'Deleted metric' in out