Class AlertPolicyServiceClient (2.23.0-rc)

The AlertPolicyService API is used to manage (list, create, delete, edit) alert policies in Cloud Monitoring.

An alerting policy is a description of the conditions under which some aspect of your system is considered to be "unhealthy" and the ways to notify people or services about this state. In addition to using this API, alert policies can also be managed through Cloud Monitoring, which can be reached by clicking the "Monitoring" tab in Cloud console.

Equality

Instances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal std::shared_ptr<*Connection> objects compare equal. Objects that compare equal share the same underlying resources.

Performance

Creating a new instance of this class is a relatively expensive operation, new objects establish new connections to the service. In contrast, copy-construction, move-construction, and the corresponding assignment operations are relatively efficient as the copies share all underlying resources.

Thread Safety

Concurrent access to different instances of this class, even if they compare equal, is guaranteed to work. Two or more threads operating on the same instance of this class is not guaranteed to work. Since copy-construction and move-construction is a relatively efficient operation, consider using such a copy when using this class from multiple threads.

Constructors

AlertPolicyServiceClient(AlertPolicyServiceClient const &)

Copy and move support

Parameter
NameDescription
AlertPolicyServiceClient const &

AlertPolicyServiceClient(AlertPolicyServiceClient &&)

Copy and move support

Parameter
NameDescription
AlertPolicyServiceClient &&

AlertPolicyServiceClient(std::shared_ptr< AlertPolicyServiceConnection >, Options)

Parameters
NameDescription
connection std::shared_ptr< AlertPolicyServiceConnection >
opts Options

Operators

operator=(AlertPolicyServiceClient const &)

Copy and move support

Parameter
NameDescription
AlertPolicyServiceClient const &
Returns
TypeDescription
AlertPolicyServiceClient &

operator=(AlertPolicyServiceClient &&)

Copy and move support

Parameter
NameDescription
AlertPolicyServiceClient &&
Returns
TypeDescription
AlertPolicyServiceClient &

Functions

ListAlertPolicies(std::string const &, Options)

Lists the existing alerting policies for the workspace.

Parameters
NameDescription
name std::string const &

Required. The project whose alert policies are to be listed. The format is:
projects/[PROJECT_ID_OR_NUMBER]
Note that this field names the parent container in which the alerting policies to be listed are stored. To retrieve a single alerting policy by name, use the GetAlertPolicy operation, instead.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StreamRange< google::monitoring::v3::AlertPolicy >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.monitoring.v3.AlertPolicy, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

ListAlertPolicies(google::monitoring::v3::ListAlertPoliciesRequest, Options)

Lists the existing alerting policies for the workspace.

Parameters
NameDescription
request google::monitoring::v3::ListAlertPoliciesRequest

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.monitoring.v3.ListAlertPoliciesRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StreamRange< google::monitoring::v3::AlertPolicy >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.monitoring.v3.AlertPolicy, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

GetAlertPolicy(std::string const &, Options)

Gets a single alerting policy.

Parameters
NameDescription
name std::string const &

Required. The alerting policy to retrieve. The format is:
projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GetAlertPolicy(google::monitoring::v3::GetAlertPolicyRequest const &, Options)

Gets a single alerting policy.

Parameters
NameDescription
request google::monitoring::v3::GetAlertPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.monitoring.v3.GetAlertPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateAlertPolicy(std::string const &, google::monitoring::v3::AlertPolicy const &, Options)

Creates a new alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
name std::string const &

Required. The project in which to create the alerting policy. The format is:
projects/[PROJECT_ID_OR_NUMBER]
Note that this field names the parent container in which the alerting policy will be written, not the name of the created policy. |name| must be a host project of a Metrics Scope, otherwise INVALID_ARGUMENT error will return. The alerting policy that is returned will have a name that contains a normalized representation of this name as a prefix but adds a suffix of the form /alertPolicies/[ALERT_POLICY_ID], identifying the policy in the container.

alert_policy google::monitoring::v3::AlertPolicy const &

Required. The requested alerting policy. You should omit the name field in this policy. The name will be returned in the new policy, including a new [ALERT_POLICY_ID] value.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateAlertPolicy(google::monitoring::v3::CreateAlertPolicyRequest const &, Options)

Creates a new alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
request google::monitoring::v3::CreateAlertPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.monitoring.v3.CreateAlertPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

DeleteAlertPolicy(std::string const &, Options)

Deletes an alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
name std::string const &

Required. The alerting policy to delete. The format is:
projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]
For more information, see AlertPolicy.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
Status

a Status object. If the request failed, the status contains the details of the failure.

DeleteAlertPolicy(google::monitoring::v3::DeleteAlertPolicyRequest const &, Options)

Deletes an alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
request google::monitoring::v3::DeleteAlertPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.monitoring.v3.DeleteAlertPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
Status

a Status object. If the request failed, the status contains the details of the failure.

UpdateAlertPolicy(google::protobuf::FieldMask const &, google::monitoring::v3::AlertPolicy const &, Options)

Updates an alerting policy.

You can either replace the entire policy with a new one or replace only certain fields in the current alerting policy by specifying the fields to be updated via updateMask. Returns the updated alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
update_mask google::protobuf::FieldMask const &

Optional. A list of alerting policy field names. If this field is not empty, each listed field in the existing alerting policy is set to the value of the corresponding field in the supplied policy (alert_policy), or to the field's default value if the field is not in the supplied alerting policy. Fields not listed retain their previous value.
Examples of valid field masks include display_name, documentation, documentation.content, documentation.mime_type, user_labels, user_label.nameofkey, enabled, conditions, combiner, etc.
If this field is empty, then the supplied alerting policy replaces the existing policy. It is the same as deleting the existing policy and adding the supplied policy, except for the following:

  • The new policy will have the same [ALERT_POLICY_ID] as the former policy. This gives you continuity with the former policy in your notifications and incidents.
  • Conditions in the new policy will keep their former [CONDITION_ID] if the supplied condition includes the name field with that [CONDITION_ID]. If the supplied condition omits the name field, then a new [CONDITION_ID] is created.
alert_policy google::monitoring::v3::AlertPolicy const &

Required. The updated alerting policy or the updated values for the fields listed in update_mask. If update_mask is not empty, any fields in this policy that are not in update_mask are ignored.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

UpdateAlertPolicy(google::monitoring::v3::UpdateAlertPolicyRequest const &, Options)

Updates an alerting policy.

You can either replace the entire policy with a new one or replace only certain fields in the current alerting policy by specifying the fields to be updated via updateMask. Returns the updated alerting policy.

Design your application to single-thread API calls that modify the state of alerting policies in a single project. This includes calls to CreateAlertPolicy, DeleteAlertPolicy and UpdateAlertPolicy.

Parameters
NameDescription
request google::monitoring::v3::UpdateAlertPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.monitoring.v3.UpdateAlertPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
TypeDescription
StatusOr< google::monitoring::v3::AlertPolicy >

the result of the RPC. The response message type (google.monitoring.v3.AlertPolicy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.