diff --git a/google/logging/logging.yaml b/google/logging/logging.yaml index 66e20881..5d7b1b8d 100644 --- a/google/logging/logging.yaml +++ b/google/logging/logging.yaml @@ -1,7 +1,5 @@ -# Stackdriver Logging API service configuration - type: google.api.Service -config_version: 2 +config_version: 3 name: logging.googleapis.com title: Stackdriver Logging API @@ -11,70 +9,94 @@ apis: - name: google.logging.v2.MetricsServiceV2 documentation: - summary: - The Stackdriver Logging API lets you write log - entries and manage your logs, log sinks and logs-based metrics. - overview: | - (== suppress_warning versioning-http-version-prefix ==) + summary: Writes log entries and manages your Stackdriver Logging configuration. + overview: |- + # Introduction + + The Stackdriver Logging service. + +backend: + rules: + - selector: google.logging.v2.LoggingServiceV2.DeleteLog + deadline: 60.0 + - selector: google.logging.v2.LoggingServiceV2.WriteLogEntries + deadline: 60.0 + - selector: google.logging.v2.LoggingServiceV2.ListLogEntries + deadline: 10.0 + - selector: google.logging.v2.LoggingServiceV2.ListMonitoredResourceDescriptors + deadline: 60.0 + - selector: google.logging.v2.LoggingServiceV2.ListLogs + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.ListSinks + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.GetSink + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.CreateSink + deadline: 120.0 + - selector: google.logging.v2.ConfigServiceV2.UpdateSink + deadline: 120.0 + - selector: google.logging.v2.ConfigServiceV2.DeleteSink + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.ListExclusions + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.GetExclusion + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.CreateExclusion + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.UpdateExclusion + deadline: 60.0 + - selector: google.logging.v2.ConfigServiceV2.DeleteExclusion + deadline: 60.0 + - selector: google.logging.v2.MetricsServiceV2.ListLogMetrics + deadline: 60.0 + - selector: google.logging.v2.MetricsServiceV2.GetLogMetric + deadline: 60.0 + - selector: google.logging.v2.MetricsServiceV2.CreateLogMetric + deadline: 60.0 + - selector: google.logging.v2.MetricsServiceV2.UpdateLogMetric + deadline: 60.0 + - selector: google.logging.v2.MetricsServiceV2.DeleteLogMetric + deadline: 60.0 + - selector: privacy.wipeout.WipeoutNotificationService.UserStateChanged + deadline: 60.0 -# Auth section authentication: rules: - - selector: |- - google.logging.v1.LoggingService.DeleteLog, - google.logging.v1.ConfigService.CreateLogServiceSink, - google.logging.v1.ConfigService.CreateLogSink, - google.logging.v1.ConfigService.CreateSink, - google.logging.v1.ConfigService.DeleteLogServiceSink, - google.logging.v1.ConfigService.DeleteLogSink, - google.logging.v1.ConfigService.DeleteSink, - google.logging.v1.ConfigService.UpdateLogServiceSink, - google.logging.v1.ConfigService.UpdateLogSink, - google.logging.v1.ConfigService.UpdateSink, - google.logging.v2.LoggingServiceV2.DeleteLog, - google.logging.v2.ConfigServiceV2.CreateSink, - google.logging.v2.ConfigServiceV2.DeleteSink, - google.logging.v2.ConfigServiceV2.UpdateSink, + - selector: '*' oauth: canonical_scopes: |- - https://www.googleapis.com/auth/logging.admin, - https://www.googleapis.com/auth/cloud-platform - - selector: |- - google.logging.v1.LoggingService.ListLogEntries, - google.logging.v1.LoggingService.ListLogServiceIndexes, - google.logging.v1.LoggingService.ListLogServices, - google.logging.v1.LoggingService.ListLogs, - google.logging.v1.ConfigService.GetLogServiceSink, - google.logging.v1.ConfigService.GetLogSink, - google.logging.v1.ConfigService.GetSink, - google.logging.v1.ConfigService.ListLogServiceSinks, - google.logging.v1.ConfigService.ListLogSinks, - google.logging.v1.ConfigService.ListSinks, - google.logging.v1.MetricsService.GetLogMetric, - google.logging.v1.MetricsService.ListLogMetrics, - google.logging.v2.LoggingServiceV2.ListLogEntries, - google.logging.v2.LoggingServiceV2.ListMonitoredResourceDescriptors, - google.logging.v2.ConfigServiceV2.GetSink, - google.logging.v2.ConfigServiceV2.ListSinks, - google.logging.v2.MetricsServiceV2.GetLogMetric, - google.logging.v2.MetricsServiceV2.ListLogMetrics - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/logging.read, - https://www.googleapis.com/auth/logging.admin, + https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/cloud-platform.read-only, - https://www.googleapis.com/auth/cloud-platform + https://www.googleapis.com/auth/logging.admin, + https://www.googleapis.com/auth/logging.read + - selector: |- + google.logging.v2.ConfigServiceV2.CreateExclusion, + google.logging.v2.ConfigServiceV2.CreateSink, + google.logging.v2.ConfigServiceV2.DeleteExclusion, + google.logging.v2.ConfigServiceV2.DeleteSink, + google.logging.v2.ConfigServiceV2.UpdateExclusion, + google.logging.v2.ConfigServiceV2.UpdateSink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/logging.admin - selector: |- - google.logging.v1.LoggingService.WriteLogEntries, - google.logging.v1.MetricsService.CreateLogMetric, - google.logging.v1.MetricsService.DeleteLogMetric, - google.logging.v1.MetricsService.UpdateLogMetric, - google.logging.v2.LoggingServiceV2.WriteLogEntries, google.logging.v2.MetricsServiceV2.CreateLogMetric, google.logging.v2.MetricsServiceV2.DeleteLogMetric, google.logging.v2.MetricsServiceV2.UpdateLogMetric oauth: canonical_scopes: |- - https://www.googleapis.com/auth/logging.write, + https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/logging.admin, - https://www.googleapis.com/auth/cloud-platform + https://www.googleapis.com/auth/logging.write + - selector: google.logging.v2.LoggingServiceV2.DeleteLog + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/logging.admin + - selector: google.logging.v2.LoggingServiceV2.WriteLogEntries + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/logging.admin, + https://www.googleapis.com/auth/logging.write diff --git a/google/logging/type/http_request.proto b/google/logging/type/http_request.proto index c1827a1f..8b9301f1 100644 --- a/google/logging/type/http_request.proto +++ b/google/logging/type/http_request.proto @@ -24,6 +24,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/type;ltype"; option java_multiple_files = true; option java_outer_classname = "HttpRequestProto"; option java_package = "com.google.logging.type"; +option php_namespace = "Google\\Cloud\\Logging\\Type"; // A common proto for logging HTTP requests. Only contains semantics diff --git a/google/logging/type/log_severity.proto b/google/logging/type/log_severity.proto index acb924aa..41351c67 100644 --- a/google/logging/type/log_severity.proto +++ b/google/logging/type/log_severity.proto @@ -23,6 +23,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/type;ltype"; option java_multiple_files = true; option java_outer_classname = "LogSeverityProto"; option java_package = "com.google.logging.type"; +option php_namespace = "Google\\Cloud\\Logging\\Type"; // The severity of the event described in a log entry, expressed as one of the diff --git a/google/logging/v2/log_entry.proto b/google/logging/v2/log_entry.proto index 3cd67b8d..4a52bbc8 100644 --- a/google/logging/v2/log_entry.proto +++ b/google/logging/v2/log_entry.proto @@ -30,6 +30,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/v2;logging"; option java_multiple_files = true; option java_outer_classname = "LogEntryProto"; option java_package = "com.google.logging.v2"; +option php_namespace = "Google\\Cloud\\Logging\\V2"; // An individual entry in a log. @@ -41,6 +42,10 @@ message LogEntry { // "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" // "folders/[FOLDER_ID]/logs/[LOG_ID]" // + // A project number may optionally be used in place of PROJECT_ID. The + // project number is translated to its corresponding PROJECT_ID internally + // and the `log_name` field will contain PROJECT_ID in queries and exports. + // // `[LOG_ID]` must be URL-encoded within `log_name`. Example: // `"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"`. // `[LOG_ID]` must be less than 512 characters long and can only include the @@ -119,6 +124,13 @@ message LogEntry { // `projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824` string trace = 22; + // Optional. Id of the span within the trace associated with the log entry. + // e.g. "0000000000000042" + // For Stackdriver trace spans, this is the same format that the Stackdriver + // trace API uses. + // The ID is a 16-character hexadecimal encoding of an 8-byte array. + string span_id = 27; + // Optional. Source code location information associated with the log entry, // if any. LogEntrySourceLocation source_location = 23; diff --git a/google/logging/v2/logging.proto b/google/logging/v2/logging.proto index 8e937d88..a9b4e930 100644 --- a/google/logging/v2/logging.proto +++ b/google/logging/v2/logging.proto @@ -30,6 +30,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/v2;logging"; option java_multiple_files = true; option java_outer_classname = "LoggingProto"; option java_package = "com.google.logging.v2"; +option php_namespace = "Google\\Cloud\\Logging\\V2"; // Service for ingesting and querying logs. @@ -69,7 +70,7 @@ service LoggingServiceV2 { // Lists the logs in projects, organizations, folders, or billing accounts. // Only logs that have entries are listed. rpc ListLogs(ListLogsRequest) returns (ListLogsResponse) { - option (google.api.http) = { get: "/v2/{parent=projects/*}/logs" }; + option (google.api.http) = { get: "/v2/{parent=*/*}/logs" }; } } diff --git a/google/logging/v2/logging_config.proto b/google/logging/v2/logging_config.proto index b17e4a09..10095ef0 100644 --- a/google/logging/v2/logging_config.proto +++ b/google/logging/v2/logging_config.proto @@ -27,6 +27,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/v2;logging"; option java_multiple_files = true; option java_outer_classname = "LoggingConfigProto"; option java_package = "com.google.logging.v2"; +option php_namespace = "Google\\Cloud\\Logging\\V2"; // Service for configuring sinks used to export log entries outside of @@ -34,63 +35,61 @@ option java_package = "com.google.logging.v2"; service ConfigServiceV2 { // Lists sinks. rpc ListSinks(ListSinksRequest) returns (ListSinksResponse) { - option (google.api.http) = { get: "/v2/{parent=projects/*}/sinks" }; + option (google.api.http) = { get: "/v2/{parent=*/*}/sinks" }; } // Gets a sink. rpc GetSink(GetSinkRequest) returns (LogSink) { - option (google.api.http) = { get: "/v2/{sink_name=projects/*/sinks/*}" }; + option (google.api.http) = { get: "/v2/{sink_name=*/*/sinks/*}" }; } // Creates a sink that exports specified log entries to a destination. The - // export of newly-ingested log entries begins immediately, unless the current - // time is outside the sink's start and end times or the sink's + // export of newly-ingested log entries begins immediately, unless the sink's // `writer_identity` is not permitted to write to the destination. A sink can // export log entries only from the resource owning the sink. rpc CreateSink(CreateSinkRequest) returns (LogSink) { - option (google.api.http) = { post: "/v2/{parent=projects/*}/sinks" body: "sink" }; + option (google.api.http) = { post: "/v2/{parent=*/*}/sinks" body: "sink" }; } // Updates a sink. This method replaces the following fields in the existing - // sink with values from the new sink: `destination`, `filter`, - // `output_version_format`, `start_time`, and `end_time`. + // sink with values from the new sink: `destination`, and `filter`. // The updated sink might also have a new `writer_identity`; see the // `unique_writer_identity` field. rpc UpdateSink(UpdateSinkRequest) returns (LogSink) { - option (google.api.http) = { put: "/v2/{sink_name=projects/*/sinks/*}" body: "sink" }; + option (google.api.http) = { put: "/v2/{sink_name=*/*/sinks/*}" body: "sink" }; } // Deletes a sink. If the sink has a unique `writer_identity`, then that // service account is also deleted. rpc DeleteSink(DeleteSinkRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { delete: "/v2/{sink_name=projects/*/sinks/*}" }; + option (google.api.http) = { delete: "/v2/{sink_name=*/*/sinks/*}" }; } // Lists all the exclusions in a parent resource. rpc ListExclusions(ListExclusionsRequest) returns (ListExclusionsResponse) { - option (google.api.http) = { get: "/v2/{parent=projects/*}/exclusions" }; + option (google.api.http) = { get: "/v2/{parent=*/*}/exclusions" }; } // Gets the description of an exclusion. rpc GetExclusion(GetExclusionRequest) returns (LogExclusion) { - option (google.api.http) = { get: "/v2/{name=projects/*/exclusions/*}" }; + option (google.api.http) = { get: "/v2/{name=*/*/exclusions/*}" }; } // Creates a new exclusion in a specified parent resource. // Only log entries belonging to that resource can be excluded. // You can have up to 10 exclusions in a resource. rpc CreateExclusion(CreateExclusionRequest) returns (LogExclusion) { - option (google.api.http) = { post: "/v2/{parent=projects/*}/exclusions" body: "exclusion" }; + option (google.api.http) = { post: "/v2/{parent=*/*}/exclusions" body: "exclusion" }; } // Changes one or more properties of an existing exclusion. rpc UpdateExclusion(UpdateExclusionRequest) returns (LogExclusion) { - option (google.api.http) = { patch: "/v2/{name=projects/*/exclusions/*}" body: "exclusion" }; + option (google.api.http) = { patch: "/v2/{name=*/*/exclusions/*}" body: "exclusion" }; } // Deletes an exclusion. rpc DeleteExclusion(DeleteExclusionRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { delete: "/v2/{name=projects/*/exclusions/*}" }; + option (google.api.http) = { delete: "/v2/{name=*/*/exclusions/*}" }; } } @@ -136,8 +135,7 @@ message LogSink { // Optional. // An [advanced logs filter](/logging/docs/view/advanced_filters). The only // exported log entries are those that are in the resource owning the sink and - // that match the filter. The filter must use the log entry format specified - // by the `output_version_format` parameter. For example, in the v2 format: + // that match the filter. For example: // // logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR string filter = 5; @@ -177,17 +175,10 @@ message LogSink { // resource.type=gce_instance bool include_children = 9; - // Optional. The time at which this sink will begin exporting log entries. - // Log entries are exported only if their timestamp is not earlier than the - // start time. The default value of this field is the time the sink is - // created or updated. + // Deprecated. This field is ignored when creating or updating sinks. google.protobuf.Timestamp start_time = 10; - // Optional. The time at which this sink will stop exporting log entries. Log - // entries are exported only if their timestamp is earlier than the end time. - // If this field is not supplied, there is no end time. If both a start time - // and an end time are provided, then the end time must be later than the - // start time. + // Deprecated. This field is ignored when creating or updating sinks. google.protobuf.Timestamp end_time = 11; } @@ -297,6 +288,22 @@ message UpdateSinkRequest { // + It is an error if the old value is true and the new value is // set to false or defaulted to false. bool unique_writer_identity = 3; + + // Optional. Field mask that specifies the fields in `sink` that need + // an update. A sink field will be overwritten if, and only if, it is + // in the update mask. `name` and output only fields cannot be updated. + // + // An empty updateMask is temporarily treated as using the following mask + // for backwards compatibility purposes: + // destination,filter,includeChildren + // At some point in the future, behavior will be removed and specifying an + // empty updateMask will be an error. + // + // For a detailed `FieldMask` definition, see + // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask + // + // Example: `updateMask=filter`. + google.protobuf.FieldMask update_mask = 4; } // The parameters to `DeleteSink`. diff --git a/google/logging/v2/logging_metrics.proto b/google/logging/v2/logging_metrics.proto index b32c40cd..733d14d9 100644 --- a/google/logging/v2/logging_metrics.proto +++ b/google/logging/v2/logging_metrics.proto @@ -28,6 +28,7 @@ option go_package = "google.golang.org/genproto/googleapis/logging/v2;logging"; option java_multiple_files = true; option java_outer_classname = "LoggingMetricsProto"; option java_package = "com.google.logging.v2"; +option php_namespace = "Google\\Cloud\\Logging\\V2"; // Service for configuring logs-based metrics. @@ -61,7 +62,7 @@ service MetricsServiceV2 { // Describes a logs-based metric. The value of the metric is the // number of log entries that match a logs filter in a given time interval. // -// A logs-based metric can also be used to extract values from logs and create a +// Logs-based metric can also be used to extract values from logs and create a // a distribution of the values. The distribution records the statistics of the // extracted values along with an optional histogram of the values as specified // by the bucket options.