Skip to content

Commit 45747a8

Browse files
feat: Sync public protos with latests public api state. This adds support for collapsible groups, filters, labels, drilldowns, logs panels and tables (#257)
* feat: Sync public protos with latests public api state. This adds support for collapsible groups, filters, labels, drilldowns, logs panels and tables PiperOrigin-RevId: 440139643 Source-Link: googleapis/googleapis@2bff0f3 Source-Link: googleapis/googleapis-gen@8c92aa7 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiOGM5MmFhNzc0NjZhMWZlNTAxNmUyNWQ4MDZkZDRlYjQ1YjYyZTVhMiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent 07e029c commit 45747a8

21 files changed

+3036
-144
lines changed

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/alertchart.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// Copyright 2022 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
syntax = "proto3";
16+
17+
package google.monitoring.dashboard.v1;
18+
19+
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
20+
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";
21+
option java_multiple_files = true;
22+
option java_outer_classname = "CollapsibleGroupProto";
23+
option java_package = "com.google.monitoring.dashboard.v1";
24+
option php_namespace = "Google\\Cloud\\Monitoring\\Dashboard\\V1";
25+
option ruby_package = "Google::Cloud::Monitoring::Dashboard::V1";
26+
27+
// A widget that groups the other widgets. All widgets that are within
28+
// the area spanned by the grouping widget are considered member widgets.
29+
message CollapsibleGroup {
30+
// The collapsed state of the widget on first page load.
31+
bool collapsed = 1;
32+
}

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/common.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/dashboard.proto

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -18,6 +18,7 @@ package google.monitoring.dashboard.v1;
1818

1919
import "google/api/field_behavior.proto";
2020
import "google/api/resource.proto";
21+
import "google/monitoring/dashboard/v1/dashboard_filter.proto";
2122
import "google/monitoring/dashboard/v1/layouts.proto";
2223

2324
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
@@ -69,4 +70,10 @@ message Dashboard {
6970
// arranged vertically.
7071
ColumnLayout column_layout = 9;
7172
}
73+
74+
// Filters to reduce the amount of data charted based on the filter criteria.
75+
repeated DashboardFilter dashboard_filters = 11;
76+
77+
// Labels applied to the dashboard
78+
map<string, string> labels = 12;
7279
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
// Copyright 2022 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
syntax = "proto3";
16+
17+
package google.monitoring.dashboard.v1;
18+
19+
import "google/api/field_behavior.proto";
20+
21+
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
22+
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";
23+
option java_multiple_files = true;
24+
option java_outer_classname = "DashboardFilterProto";
25+
option java_package = "com.google.monitoring.dashboard.v1";
26+
option php_namespace = "Google\\Cloud\\Monitoring\\Dashboard\\V1";
27+
option ruby_package = "Google::Cloud::Monitoring::Dashboard::V1";
28+
29+
// A filter to reduce the amount of data charted in relevant widgets.
30+
message DashboardFilter {
31+
// The type for the dashboard filter
32+
enum FilterType {
33+
// Filter type is unspecified. This is not valid in a well-formed request.
34+
FILTER_TYPE_UNSPECIFIED = 0;
35+
36+
// Filter on a resource label value
37+
RESOURCE_LABEL = 1;
38+
39+
// Filter on a metrics label value
40+
METRIC_LABEL = 2;
41+
42+
// Filter on a user metadata label value
43+
USER_METADATA_LABEL = 3;
44+
45+
// Filter on a system metadata label value
46+
SYSTEM_METADATA_LABEL = 4;
47+
48+
// Filter on a group id
49+
GROUP = 5;
50+
}
51+
52+
// Required. The key for the label
53+
string label_key = 1 [(google.api.field_behavior) = REQUIRED];
54+
55+
// The placeholder text that can be referenced in a filter string or MQL
56+
// query. If omitted, the dashboard filter will be applied to all relevant
57+
// widgets in the dashboard.
58+
string template_variable = 3;
59+
60+
// The default value used in the filter comparison
61+
oneof default_value {
62+
// A variable-length string value.
63+
string string_value = 4;
64+
}
65+
66+
// The specified filter type
67+
FilterType filter_type = 5;
68+
}

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/dashboards_service.proto

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -17,11 +17,11 @@ syntax = "proto3";
1717
package google.monitoring.dashboard.v1;
1818

1919
import "google/api/annotations.proto";
20+
import "google/api/client.proto";
2021
import "google/api/field_behavior.proto";
2122
import "google/api/resource.proto";
2223
import "google/monitoring/dashboard/v1/dashboard.proto";
2324
import "google/protobuf/empty.proto";
24-
import "google/api/client.proto";
2525

2626
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
2727
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/drilldowns.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/layouts.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// Copyright 2022 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
syntax = "proto3";
16+
17+
package google.monitoring.dashboard.v1;
18+
19+
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
20+
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";
21+
option java_multiple_files = true;
22+
option java_outer_classname = "LogsPanelProto";
23+
option java_package = "com.google.monitoring.dashboard.v1";
24+
option php_namespace = "Google\\Cloud\\Monitoring\\Dashboard\\V1";
25+
option ruby_package = "Google::Cloud::Monitoring::Dashboard::V1";
26+
27+
// A widget that displays a stream of log.
28+
message LogsPanel {
29+
// A filter that chooses which log entries to return. See [Advanced Logs
30+
// Queries](https://cloud.google.com/logging/docs/view/advanced-queries).
31+
// Only log entries that match the filter are returned. An empty filter
32+
// matches all log entries.
33+
string filter = 1;
34+
35+
// The names of logging resources to collect logs for. Currently only projects
36+
// are supported. If empty, the widget will default to the host project.
37+
repeated string resource_names = 2;
38+
}

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/metrics.proto

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -148,6 +148,18 @@ message Threshold {
148148
BELOW = 2;
149149
}
150150

151+
// An axis identifier.
152+
enum TargetAxis {
153+
// The target axis was not specified. Defaults to Y1.
154+
TARGET_AXIS_UNSPECIFIED = 0;
155+
156+
// The y_axis (the right axis of chart).
157+
Y1 = 1;
158+
159+
// The y2_axis (the left axis of chart).
160+
Y2 = 2;
161+
}
162+
151163
// A label for the threshold.
152164
string label = 1;
153165

@@ -161,6 +173,10 @@ message Threshold {
161173
// The direction for the current threshold. Direction is not allowed in a
162174
// XyChart.
163175
Direction direction = 4;
176+
177+
// The target axis to use for plotting the threshold. Target axis is not
178+
// allowed in a Scorecard.
179+
TargetAxis target_axis = 5;
164180
}
165181

166182
// Defines the possible types of spark chart supported by the `Scorecard`.

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/scorecard.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/service.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
// Copyright 2022 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
syntax = "proto3";
16+
17+
package google.monitoring.dashboard.v1;
18+
19+
import "google/api/field_behavior.proto";
20+
import "google/monitoring/dashboard/v1/metrics.proto";
21+
import "google/monitoring/dashboard/v1/table_display_options.proto";
22+
import "google/protobuf/duration.proto";
23+
24+
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
25+
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";
26+
option java_multiple_files = true;
27+
option java_outer_classname = "TableProto";
28+
option java_package = "com.google.monitoring.dashboard.v1";
29+
option php_namespace = "Google\\Cloud\\Monitoring\\Dashboard\\V1";
30+
option ruby_package = "Google::Cloud::Monitoring::Dashboard::V1";
31+
32+
// A table that displays time series data.
33+
message TimeSeriesTable {
34+
// Groups a time series query definition with table options.
35+
message TableDataSet {
36+
// Required. Fields for querying time series data from the
37+
// Stackdriver metrics API.
38+
TimeSeriesQuery time_series_query = 1 [(google.api.field_behavior) = REQUIRED];
39+
40+
// Optional. A template string for naming `TimeSeries` in the resulting data set.
41+
// This should be a string with interpolations of the form `${label_name}`,
42+
// which will resolve to the label's value i.e.
43+
// "${resource.labels.project_id}."
44+
string table_template = 2 [(google.api.field_behavior) = OPTIONAL];
45+
46+
// Optional. The lower bound on data point frequency for this data set, implemented by
47+
// specifying the minimum alignment period to use in a time series query
48+
// For example, if the data is published once every 10 minutes, the
49+
// `min_alignment_period` should be at least 10 minutes. It would not
50+
// make sense to fetch and align data at one minute intervals.
51+
google.protobuf.Duration min_alignment_period = 3 [(google.api.field_behavior) = OPTIONAL];
52+
53+
// Optional. Table display options for configuring how the table is rendered.
54+
TableDisplayOptions table_display_options = 4 [(google.api.field_behavior) = OPTIONAL];
55+
}
56+
57+
// Required. The data displayed in this table.
58+
repeated TableDataSet data_sets = 1 [(google.api.field_behavior) = REQUIRED];
59+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2022 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
syntax = "proto3";
16+
17+
package google.monitoring.dashboard.v1;
18+
19+
import "google/api/field_behavior.proto";
20+
21+
option csharp_namespace = "Google.Cloud.Monitoring.Dashboard.V1";
22+
option go_package = "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard";
23+
option java_multiple_files = true;
24+
option java_outer_classname = "TableDisplayOptionsProto";
25+
option java_package = "com.google.monitoring.dashboard.v1";
26+
option php_namespace = "Google\\Cloud\\Monitoring\\Dashboard\\V1";
27+
option ruby_package = "Google::Cloud::Monitoring::Dashboard::V1";
28+
29+
// Table display options that can be reused.
30+
message TableDisplayOptions {
31+
// Optional. Columns to display in the table. Leave empty to display all available
32+
// columns. Note: This field is for future features and is not currently used.
33+
repeated string shown_columns = 1 [(google.api.field_behavior) = OPTIONAL];
34+
}

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/text.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.

packages/google-monitoring-dashboard/protos/google/monitoring/dashboard/v1/widget.proto

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -18,7 +18,10 @@ package google.monitoring.dashboard.v1;
1818

1919
import "google/api/field_behavior.proto";
2020
import "google/monitoring/dashboard/v1/alertchart.proto";
21+
import "google/monitoring/dashboard/v1/collapsible_group.proto";
22+
import "google/monitoring/dashboard/v1/logs_panel.proto";
2123
import "google/monitoring/dashboard/v1/scorecard.proto";
24+
import "google/monitoring/dashboard/v1/table.proto";
2225
import "google/monitoring/dashboard/v1/text.proto";
2326
import "google/monitoring/dashboard/v1/xychart.proto";
2427
import "google/protobuf/empty.proto";
@@ -53,5 +56,15 @@ message Widget {
5356

5457
// A chart of alert policy data.
5558
AlertChart alert_chart = 7;
59+
60+
// A widget that displays time series data in a tabular format.
61+
TimeSeriesTable time_series_table = 8;
62+
63+
// A widget that groups the other widgets. All widgets that are within
64+
// the area spanned by the grouping widget are considered member widgets.
65+
CollapsibleGroup collapsible_group = 9;
66+
67+
// A widget that shows a stream of logs.
68+
LogsPanel logs_panel = 10;
5669
}
5770
}

0 commit comments

Comments
 (0)