generated/google/apis/logging_v2beta1/classes.rb in google-api-client-0.9.23 vs generated/google/apis/logging_v2beta1/classes.rb in google-api-client-0.9.24

- old
+ new

@@ -20,572 +20,29 @@ module Google module Apis module LoggingV2beta1 - # Result returned from ListLogMetrics. - class ListLogMetricsResponse + # 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. + class LogMetric include Google::Apis::Core::Hashable - # A list of logs-based metrics. - # Corresponds to the JSON property `metrics` - # @return [Array<Google::Apis::LoggingV2beta1::LogMetric>] - attr_accessor :metrics - - # If there might be more results than appear in this response, then - # nextPageToken is included. To get the next set of results, call this method - # again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` + # Output only. The API version that created or updated this metric. The version + # also dictates the syntax of the filter expression. When a value for this field + # is missing, the default value of V2 should be assumed. + # Corresponds to the JSON property `version` # @return [String] - attr_accessor :next_page_token + attr_accessor :version - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @metrics = args[:metrics] if args.key?(:metrics) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # A generic empty message that you can re-use to avoid defining duplicated empty - # messages in your APIs. A typical example is to use it as the request or the - # response type of an API method. For instance: - # service Foo ` - # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); - # ` - # The JSON representation for Empty is empty JSON object ``. - class Empty - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # An individual entry in a log. - class LogEntry - include Google::Apis::Core::Hashable - - # Optional. The time the event described by the log entry occurred. If omitted, - # Stackdriver Logging will use the time the log entry is received. - # Corresponds to the JSON property `timestamp` - # @return [String] - attr_accessor :timestamp - - # Required. The resource name of the log to which this log entry belongs: - # "projects/[PROJECT_ID]/logs/[LOG_ID]" - # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" - # [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 following characters: - # upper and lower case alphanumeric characters, forward-slash, underscore, - # hyphen, and period.For backward compatibility, if log_name begins with a - # forward-slash, such as /projects/..., then the log entry is ingested as usual - # but the forward-slash is removed. Listing the log entry will not show the - # leading slash and filtering for a log name with a leading slash will never - # return any results. - # Corresponds to the JSON property `logName` - # @return [String] - attr_accessor :log_name - - # A common proto for logging HTTP requests. Only contains semantics defined by - # the HTTP specification. Product-specific logging information MUST be defined - # in a separate message. - # Corresponds to the JSON property `httpRequest` - # @return [Google::Apis::LoggingV2beta1::HttpRequest] - attr_accessor :http_request - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The type field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the labels field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " - # zone": - # ` "type": "gce_instance", - # "labels": ` "instance_id": "12345678901234", - # "zone": "us-central1-a" `` - # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] - attr_accessor :resource - - # The log entry payload, represented as a structure that is expressed as a JSON - # object. - # Corresponds to the JSON property `jsonPayload` - # @return [Hash<String,Object>] - attr_accessor :json_payload - - # Optional. A unique ID for the log entry. If you provide this field, the - # logging service considers other log entries in the same project with the same - # ID as duplicates which can be removed. If omitted, Stackdriver Logging will - # generate a unique ID for this log entry. - # Corresponds to the JSON property `insertId` - # @return [String] - attr_accessor :insert_id - - # Additional information about a potentially long-running operation with which a - # log entry is associated. - # Corresponds to the JSON property `operation` - # @return [Google::Apis::LoggingV2beta1::LogEntryOperation] - attr_accessor :operation - - # The log entry payload, represented as a Unicode string (UTF-8). - # Corresponds to the JSON property `textPayload` - # @return [String] - attr_accessor :text_payload - - # The log entry payload, represented as a protocol buffer. Some Google Cloud - # Platform services use this field for their log entry payloads. - # Corresponds to the JSON property `protoPayload` - # @return [Hash<String,Object>] - attr_accessor :proto_payload - - # Optional. Resource name of the trace associated with the log entry, if any. If - # it contains a relative resource name, the name is assumed to be relative to // - # tracing.googleapis.com. Example: projects/my-projectid/traces/ - # 06796866738c859f2f19b7cfb3214824 - # Corresponds to the JSON property `trace` - # @return [String] - attr_accessor :trace - - # Optional. A set of user-defined (key, value) data that provides additional - # information about the log entry. - # Corresponds to the JSON property `labels` - # @return [Hash<String,String>] - attr_accessor :labels - - # Optional. The severity of the log entry. The default value is LogSeverity. - # DEFAULT. - # Corresponds to the JSON property `severity` - # @return [String] - attr_accessor :severity - - # Additional information about the source code location that produced the log - # entry. - # Corresponds to the JSON property `sourceLocation` - # @return [Google::Apis::LoggingV2beta1::LogEntrySourceLocation] - attr_accessor :source_location - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @timestamp = args[:timestamp] if args.key?(:timestamp) - @log_name = args[:log_name] if args.key?(:log_name) - @http_request = args[:http_request] if args.key?(:http_request) - @resource = args[:resource] if args.key?(:resource) - @json_payload = args[:json_payload] if args.key?(:json_payload) - @insert_id = args[:insert_id] if args.key?(:insert_id) - @operation = args[:operation] if args.key?(:operation) - @text_payload = args[:text_payload] if args.key?(:text_payload) - @proto_payload = args[:proto_payload] if args.key?(:proto_payload) - @trace = args[:trace] if args.key?(:trace) - @labels = args[:labels] if args.key?(:labels) - @severity = args[:severity] if args.key?(:severity) - @source_location = args[:source_location] if args.key?(:source_location) - end - end - - # Specifies a location in a source code file. - class SourceLocation - include Google::Apis::Core::Hashable - - # Line within the source file. - # Corresponds to the JSON property `line` - # @return [String] - attr_accessor :line - - # Source file name. Depending on the runtime environment, this might be a simple - # name or a fully-qualified name. - # Corresponds to the JSON property `file` - # @return [String] - attr_accessor :file - - # Human-readable name of the function or method being invoked, with optional - # context such as the class or package name. This information is used in - # contexts such as the logs viewer, where a file and line number are less - # meaningful. The format can vary by language. For example: qual.if.ied.Class. - # method (Java), dir/package.func (Go), function (Python). - # Corresponds to the JSON property `functionName` - # @return [String] - attr_accessor :function_name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @line = args[:line] if args.key?(:line) - @file = args[:file] if args.key?(:file) - @function_name = args[:function_name] if args.key?(:function_name) - end - end - - # The parameters to ListLogEntries. - class ListLogEntriesRequest - include Google::Apis::Core::Hashable - - # Deprecated. Use resource_names instead. One or more project identifiers or - # project numbers from which to retrieve log entries. Example: "my-project-1A". - # If present, these project identifiers are converted to resource name format - # and added to the list of resources in resource_names. - # Corresponds to the JSON property `projectIds` - # @return [Array<String>] - attr_accessor :project_ids - - # Optional. A filter that chooses which log entries to return. See Advanced Logs - # Filters. Only log entries that match the filter are returned. An empty filter - # matches all log entries in the resources listed in resource_names. Referencing - # a parent resource that is not listed in resource_names will cause the filter - # to return no results. The maximum length of the filter is 20000 characters. + # Required. An advanced logs filter which is used to match log entries. Example: + # "resource.type=gae_app AND severity>=ERROR" + # The maximum length of the filter is 20000 characters. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. pageToken must be the value of nextPageToken - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # Corresponds to the JSON property `pageToken` - # @return [String] - attr_accessor :page_token - - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. - # Corresponds to the JSON property `pageSize` - # @return [Fixnum] - attr_accessor :page_size - - # Optional. How the results should be sorted. Presently, the only permitted - # values are "timestamp asc" (default) and "timestamp desc". The first option - # returns entries in order of increasing values of LogEntry.timestamp (oldest - # first), and the second option returns entries in order of decreasing - # timestamps (newest first). Entries with equal timestamps are returned in order - # of LogEntry.insertId. - # Corresponds to the JSON property `orderBy` - # @return [String] - attr_accessor :order_by - - # Required. Names of one or more resources from which to retrieve log entries: - # "projects/[PROJECT_ID]" - # "organizations/[ORGANIZATION_ID]" - # Projects listed in the project_ids field are added to this list. - # Corresponds to the JSON property `resourceNames` - # @return [Array<String>] - attr_accessor :resource_names - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @project_ids = args[:project_ids] if args.key?(:project_ids) - @filter = args[:filter] if args.key?(:filter) - @page_token = args[:page_token] if args.key?(:page_token) - @page_size = args[:page_size] if args.key?(:page_size) - @order_by = args[:order_by] if args.key?(:order_by) - @resource_names = args[:resource_names] if args.key?(:resource_names) - end - end - - # Complete log information about a single HTTP request to an App Engine - # application. - class RequestLog - include Google::Apis::Core::Hashable - - # The logged-in user who made the request.Most likely, this is the part of the - # user's email before the @ sign. The field value is the same for different - # requests from the same user, but different users can have similar names. This - # information is also available to the application via the App Engine Users API. - # This field will be populated starting with App Engine 1.9.21. - # Corresponds to the JSON property `nickname` - # @return [String] - attr_accessor :nickname - - # HTTP response status code. Example: 200, 404. - # Corresponds to the JSON property `status` - # @return [Fixnum] - attr_accessor :status - - # Contains the path and query portion of the URL that was requested. For example, - # if the URL was "http://example.com/app?name=val", the resource would be "/app? - # name=val". The fragment identifier, which is identified by the # character, is - # not included. - # Corresponds to the JSON property `resource` - # @return [String] - attr_accessor :resource - - # Time this request spent in the pending request queue. - # Corresponds to the JSON property `pendingTime` - # @return [String] - attr_accessor :pending_time - - # Task name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskName` - # @return [String] - attr_accessor :task_name - - # File or class that handled the request. - # Corresponds to the JSON property `urlMapEntry` - # @return [String] - attr_accessor :url_map_entry - - # If the instance processing this request belongs to a manually scaled module, - # then this is the 0-based index of the instance. Otherwise, this value is -1. - # Corresponds to the JSON property `instanceIndex` - # @return [Fixnum] - attr_accessor :instance_index - - # Internet host and port number of the resource being requested. - # Corresponds to the JSON property `host` - # @return [String] - attr_accessor :host - - # Whether this request is finished or active. - # Corresponds to the JSON property `finished` - # @return [Boolean] - attr_accessor :finished - alias_method :finished?, :finished - - # HTTP version of request. Example: "HTTP/1.1". - # Corresponds to the JSON property `httpVersion` - # @return [String] - attr_accessor :http_version - - # Time when the request started. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - - # Latency of the request. - # Corresponds to the JSON property `latency` - # @return [String] - attr_accessor :latency - - # Origin IP address. - # Corresponds to the JSON property `ip` - # @return [String] - attr_accessor :ip - - # Application that handled this request. - # Corresponds to the JSON property `appId` - # @return [String] - attr_accessor :app_id - - # App Engine release version. - # Corresponds to the JSON property `appEngineRelease` - # @return [String] - attr_accessor :app_engine_release - - # Request method. Example: "GET", "HEAD", "PUT", "POST", "DELETE". - # Corresponds to the JSON property `method` - # @return [String] - attr_accessor :method_prop - - # An indication of the relative cost of serving this request. - # Corresponds to the JSON property `cost` - # @return [Float] - attr_accessor :cost - - # An identifier for the instance that handled the request. - # Corresponds to the JSON property `instanceId` - # @return [String] - attr_accessor :instance_id - - # Number of CPU megacycles used to process request. - # Corresponds to the JSON property `megaCycles` - # @return [String] - attr_accessor :mega_cycles - - # Whether this is the first RequestLog entry for this request. If an active - # request has several RequestLog entries written to Stackdriver Logging, then - # this field will be set for one of them. - # Corresponds to the JSON property `first` - # @return [Boolean] - attr_accessor :first - alias_method :first?, :first - - # Version of the application that handled this request. - # Corresponds to the JSON property `versionId` - # @return [String] - attr_accessor :version_id - - # Module of the application that handled this request. - # Corresponds to the JSON property `moduleId` - # @return [String] - attr_accessor :module_id - - # Time when the request finished. - # Corresponds to the JSON property `endTime` - # @return [String] - attr_accessor :end_time - - # User agent that made the request. - # Corresponds to the JSON property `userAgent` - # @return [String] - attr_accessor :user_agent - - # Whether this was a loading request for the instance. - # Corresponds to the JSON property `wasLoadingRequest` - # @return [Boolean] - attr_accessor :was_loading_request - alias_method :was_loading_request?, :was_loading_request - - # Source code for the application that handled this request. There can be more - # than one source reference per deployed application if source code is - # distributed among multiple repositories. - # Corresponds to the JSON property `sourceReference` - # @return [Array<Google::Apis::LoggingV2beta1::SourceReference>] - attr_accessor :source_reference - - # Size in bytes sent back to client by request. - # Corresponds to the JSON property `responseSize` - # @return [String] - attr_accessor :response_size - - # Stackdriver Trace identifier for this request. - # Corresponds to the JSON property `traceId` - # @return [String] - attr_accessor :trace_id - - # A list of log lines emitted by the application while serving this request. - # Corresponds to the JSON property `line` - # @return [Array<Google::Apis::LoggingV2beta1::LogLine>] - attr_accessor :line - - # Queue name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskQueueName` - # @return [String] - attr_accessor :task_queue_name - - # Referrer URL of request. - # Corresponds to the JSON property `referrer` - # @return [String] - attr_accessor :referrer - - # Globally unique identifier for a request, which is based on the request start - # time. Request IDs for requests which started later will compare greater as - # strings than those for requests which started earlier. - # Corresponds to the JSON property `requestId` - # @return [String] - attr_accessor :request_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @nickname = args[:nickname] if args.key?(:nickname) - @status = args[:status] if args.key?(:status) - @resource = args[:resource] if args.key?(:resource) - @pending_time = args[:pending_time] if args.key?(:pending_time) - @task_name = args[:task_name] if args.key?(:task_name) - @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) - @instance_index = args[:instance_index] if args.key?(:instance_index) - @host = args[:host] if args.key?(:host) - @finished = args[:finished] if args.key?(:finished) - @http_version = args[:http_version] if args.key?(:http_version) - @start_time = args[:start_time] if args.key?(:start_time) - @latency = args[:latency] if args.key?(:latency) - @ip = args[:ip] if args.key?(:ip) - @app_id = args[:app_id] if args.key?(:app_id) - @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) - @method_prop = args[:method_prop] if args.key?(:method_prop) - @cost = args[:cost] if args.key?(:cost) - @instance_id = args[:instance_id] if args.key?(:instance_id) - @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) - @first = args[:first] if args.key?(:first) - @version_id = args[:version_id] if args.key?(:version_id) - @module_id = args[:module_id] if args.key?(:module_id) - @end_time = args[:end_time] if args.key?(:end_time) - @user_agent = args[:user_agent] if args.key?(:user_agent) - @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) - @source_reference = args[:source_reference] if args.key?(:source_reference) - @response_size = args[:response_size] if args.key?(:response_size) - @trace_id = args[:trace_id] if args.key?(:trace_id) - @line = args[:line] if args.key?(:line) - @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) - @referrer = args[:referrer] if args.key?(:referrer) - @request_id = args[:request_id] if args.key?(:request_id) - end - end - - # Result returned from ListMonitoredResourceDescriptors. - class ListMonitoredResourceDescriptorsResponse - include Google::Apis::Core::Hashable - - # If there might be more results than those appearing in this response, then - # nextPageToken is included. To get the next set of results, call this method - # again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - # A list of resource descriptors. - # Corresponds to the JSON property `resourceDescriptors` - # @return [Array<Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor>] - attr_accessor :resource_descriptors - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors) - end - end - - # A reference to a particular snapshot of the source tree used to build and - # deploy an application. - class SourceReference - include Google::Apis::Core::Hashable - - # Optional. A URI string identifying the repository. Example: "https://github. - # com/GoogleCloudPlatform/kubernetes.git" - # Corresponds to the JSON property `repository` - # @return [String] - attr_accessor :repository - - # The canonical and persistent identifier of the deployed revision. Example (git) - # : "0035781c50ec7aa23385dc841529ce8a4b70db1b" - # Corresponds to the JSON property `revisionId` - # @return [String] - attr_accessor :revision_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @repository = args[:repository] if args.key?(:repository) - @revision_id = args[:revision_id] if args.key?(:revision_id) - end - end - - # 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. - class LogMetric - include Google::Apis::Core::Hashable - # Required. The client-assigned metric identifier. Examples: "error_count", " # nginx/requests".Metric identifiers are limited to 100 characters and can # include only the following characters: A-Z, a-z, 0-9, and the special # characters _-.,+!*',()%/. The forward-slash character (/) denotes a hierarchy # of name pieces, and it cannot be the first character of the name.The metric @@ -600,34 +57,20 @@ # Optional. A description of this metric, which is used in documentation. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description - # Output only. The API version that created or updated this metric. The version - # also dictates the syntax of the filter expression. When a value for this field - # is missing, the default value of V2 should be assumed. - # Corresponds to the JSON property `version` - # @return [String] - attr_accessor :version - - # Required. An advanced logs filter which is used to match log entries. Example: - # "resource.type=gae_app AND severity>=ERROR" - # The maximum length of the filter is 20000 characters. - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @name = args[:name] if args.key?(:name) - @description = args[:description] if args.key?(:description) @version = args[:version] if args.key?(:version) @filter = args[:filter] if args.key?(:filter) + @name = args[:name] if args.key?(:name) + @description = args[:description] if args.key?(:description) end end # Additional information about a potentially long-running operation with which a # log entry is associated. @@ -730,10 +173,30 @@ # Cloud Pub/Sub topic. A logs filter controls which log entries are exported. # The sink must be created within a project or organization. class LogSink include Google::Apis::Core::Hashable + # Output only. An IAM identity&mdash;a service account or group&mdash;under + # which Stackdriver Logging writes the exported log entries to the sink's + # destination. This field is set by sinks.create and sinks.update, based on the + # setting of unique_writer_identity in those methods.Until you grant this + # identity write-access to the destination, log entry exports from this sink + # will fail. For more information, see Granting access for a resource. Consult + # the destination service's documentation to determine the appropriate IAM roles + # to assign to the identity. + # Corresponds to the JSON property `writerIdentity` + # @return [String] + attr_accessor :writer_identity + + # 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. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + # Optional. The log entry format to use for this sink's exported log entries. # The v2 format is used by default. The v1 format is deprecated and should be # used only as part of a migration effort to v2. See Migration to the v2 API. # Corresponds to the JSON property `outputVersionFormat` # @return [String] @@ -745,10 +208,19 @@ # alphanumeric characters, underscores, hyphens, and periods. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name + # Optional. An advanced logs filter. 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: + # logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + # Required. The export destination: # "storage.googleapis.com/[GCS_BUCKET]" # "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" # "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" # The sink's writer_identity, set when the sink is created, must have permission @@ -756,67 +228,61 @@ # information, see Exporting Logs With Sinks. # Corresponds to the JSON property `destination` # @return [String] attr_accessor :destination - # Optional. An advanced logs filter. 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: - # logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - # 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. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time - # 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. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - - # Output only. An IAM identity&mdash;a service account or group&mdash;under - # which Stackdriver Logging writes the exported log entries to the sink's - # destination. This field is set by sinks.create and sinks.update, based on the - # setting of unique_writer_identity in those methods.Until you grant this - # identity write-access to the destination, log entry exports from this sink - # will fail. For more information, see Granting access for a resource. Consult - # the destination service's documentation to determine the appropriate IAM roles - # to assign to the identity. - # Corresponds to the JSON property `writerIdentity` - # @return [String] - attr_accessor :writer_identity - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @writer_identity = args[:writer_identity] if args.key?(:writer_identity) + @start_time = args[:start_time] if args.key?(:start_time) @output_version_format = args[:output_version_format] if args.key?(:output_version_format) @name = args[:name] if args.key?(:name) - @destination = args[:destination] if args.key?(:destination) @filter = args[:filter] if args.key?(:filter) + @destination = args[:destination] if args.key?(:destination) @end_time = args[:end_time] if args.key?(:end_time) - @start_time = args[:start_time] if args.key?(:start_time) - @writer_identity = args[:writer_identity] if args.key?(:writer_identity) end end # The parameters to WriteLogEntries. class WriteLogEntriesRequest include Google::Apis::Core::Hashable + # Optional. Default labels that are added to the labels field of all log entries + # in entries. If a log entry already has a label with the same key as a label in + # this parameter, then the log entry's label is not changed. See LogEntry. + # Corresponds to the JSON property `labels` + # @return [Hash<String,String>] + attr_accessor :labels + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The type field identifies a + # MonitoredResourceDescriptor object that describes the resource's schema. + # Information in the labels field identifies the actual resource and its + # attributes according to the schema. For example, a particular Compute Engine + # VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " + # zone": + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + # Optional. A default log resource name that is assigned to all log entries in # entries that do not specify a value for log_name: # "projects/[PROJECT_ID]/logs/[LOG_ID]" # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" @@ -844,44 +310,21 @@ # Corresponds to the JSON property `partialSuccess` # @return [Boolean] attr_accessor :partial_success alias_method :partial_success?, :partial_success - # Optional. Default labels that are added to the labels field of all log entries - # in entries. If a log entry already has a label with the same key as a label in - # this parameter, then the log entry's label is not changed. See LogEntry. - # Corresponds to the JSON property `labels` - # @return [Hash<String,String>] - attr_accessor :labels - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The type field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the labels field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " - # zone": - # ` "type": "gce_instance", - # "labels": ` "instance_id": "12345678901234", - # "zone": "us-central1-a" `` - # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] - attr_accessor :resource - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @resource = args[:resource] if args.key?(:resource) @log_name = args[:log_name] if args.key?(:log_name) @entries = args[:entries] if args.key?(:entries) @partial_success = args[:partial_success] if args.key?(:partial_success) - @labels = args[:labels] if args.key?(:labels) - @resource = args[:resource] if args.key?(:resource) end end # Result returned from ListLogs. class ListLogsResponse @@ -909,73 +352,16 @@ @log_names = args[:log_names] if args.key?(:log_names) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end - # Result returned from ListSinks. - class ListSinksResponse - include Google::Apis::Core::Hashable - - # A list of sinks. - # Corresponds to the JSON property `sinks` - # @return [Array<Google::Apis::LoggingV2beta1::LogSink>] - attr_accessor :sinks - - # If there might be more results than appear in this response, then - # nextPageToken is included. To get the next set of results, call the same - # method again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @sinks = args[:sinks] if args.key?(:sinks) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - # A common proto for logging HTTP requests. Only contains semantics defined by # the HTTP specification. Product-specific logging information MUST be defined # in a separate message. class HttpRequest include Google::Apis::Core::Hashable - # The size of the HTTP request message in bytes, including the request headers - # and the request body. - # Corresponds to the JSON property `requestSize` - # @return [String] - attr_accessor :request_size - - # The size of the HTTP response message sent back to the client, in bytes, - # including the response headers and the response body. - # Corresponds to the JSON property `responseSize` - # @return [String] - attr_accessor :response_size - - # The scheme (http, https), the host name, the path and the query portion of the - # URL that was requested. Example: "http://example.com/some/info?color=red". - # Corresponds to the JSON property `requestUrl` - # @return [String] - attr_accessor :request_url - - # The IP address (IPv4 or IPv6) of the client that issued the HTTP request. - # Examples: "192.168.1.1", "FE80::0202:B3FF:FE1E:8329". - # Corresponds to the JSON property `remoteIp` - # @return [String] - attr_accessor :remote_ip - - # The IP address (IPv4 or IPv6) of the origin server that the request was sent - # to. - # Corresponds to the JSON property `serverIp` - # @return [String] - attr_accessor :server_ip - # Whether or not a cache lookup was attempted. # Corresponds to the JSON property `cacheLookup` # @return [Boolean] attr_accessor :cache_lookup alias_method :cache_lookup?, :cache_lookup @@ -1025,61 +411,118 @@ # The request method. Examples: "GET", "HEAD", "PUT", "POST". # Corresponds to the JSON property `requestMethod` # @return [String] attr_accessor :request_method + # The size of the HTTP response message sent back to the client, in bytes, + # including the response headers and the response body. + # Corresponds to the JSON property `responseSize` + # @return [String] + attr_accessor :response_size + + # The size of the HTTP request message in bytes, including the request headers + # and the request body. + # Corresponds to the JSON property `requestSize` + # @return [String] + attr_accessor :request_size + + # The scheme (http, https), the host name, the path and the query portion of the + # URL that was requested. Example: "http://example.com/some/info?color=red". + # Corresponds to the JSON property `requestUrl` + # @return [String] + attr_accessor :request_url + + # The IP address (IPv4 or IPv6) of the origin server that the request was sent + # to. + # Corresponds to the JSON property `serverIp` + # @return [String] + attr_accessor :server_ip + + # The IP address (IPv4 or IPv6) of the client that issued the HTTP request. + # Examples: "192.168.1.1", "FE80::0202:B3FF:FE1E:8329". + # Corresponds to the JSON property `remoteIp` + # @return [String] + attr_accessor :remote_ip + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @request_size = args[:request_size] if args.key?(:request_size) - @response_size = args[:response_size] if args.key?(:response_size) - @request_url = args[:request_url] if args.key?(:request_url) - @remote_ip = args[:remote_ip] if args.key?(:remote_ip) - @server_ip = args[:server_ip] if args.key?(:server_ip) @cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup) @cache_hit = args[:cache_hit] if args.key?(:cache_hit) @cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server) @status = args[:status] if args.key?(:status) @referer = args[:referer] if args.key?(:referer) @latency = args[:latency] if args.key?(:latency) @user_agent = args[:user_agent] if args.key?(:user_agent) @cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes) @request_method = args[:request_method] if args.key?(:request_method) + @response_size = args[:response_size] if args.key?(:response_size) + @request_size = args[:request_size] if args.key?(:request_size) + @request_url = args[:request_url] if args.key?(:request_url) + @server_ip = args[:server_ip] if args.key?(:server_ip) + @remote_ip = args[:remote_ip] if args.key?(:remote_ip) end end + # Result returned from ListSinks. + class ListSinksResponse + include Google::Apis::Core::Hashable + + # If there might be more results than appear in this response, then + # nextPageToken is included. To get the next set of results, call the same + # method again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of sinks. + # Corresponds to the JSON property `sinks` + # @return [Array<Google::Apis::LoggingV2beta1::LogSink>] + attr_accessor :sinks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @sinks = args[:sinks] if args.key?(:sinks) + end + end + # A description of a label. class LabelDescriptor include Google::Apis::Core::Hashable + # The label key. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + # A human-readable description for the label. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # The type of data that can be assigned to the label. # Corresponds to the JSON property `valueType` # @return [String] attr_accessor :value_type - # The label key. - # Corresponds to the JSON property `key` - # @return [String] - attr_accessor :key - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @key = args[:key] if args.key?(:key) @description = args[:description] if args.key?(:description) @value_type = args[:value_type] if args.key?(:value_type) - @key = args[:key] if args.key?(:key) end end # An object that describes the schema of a MonitoredResource object using a type # name and a set of labels. For example, the monitored resource descriptor for @@ -1089,24 +532,10 @@ # generally provide a list method that returns the monitored resource # descriptors used by the API. class MonitoredResourceDescriptor include Google::Apis::Core::Hashable - # Required. The monitored resource type. For example, the type " - # cloudsql_database" represents databases in Google Cloud SQL. The maximum - # length of this value is 256 characters. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - - # Required. A set of labels used to describe instances of this monitored - # resource type. For example, an individual Google Cloud SQL database is - # identified by values for the labels "database_id" and "zone". - # Corresponds to the JSON property `labels` - # @return [Array<Google::Apis::LoggingV2beta1::LabelDescriptor>] - attr_accessor :labels - # Optional. The resource name of the monitored resource descriptor: "projects/` # project_id`/monitoredResourceDescriptors/`type`" where `type` is the value of # the type field in this object and `project_id` is a project ID that provides # API-specific context for accessing the type. APIs that do not use project # information can use the resource name format "monitoredResourceDescriptors/` @@ -1126,29 +555,49 @@ # used in documentation. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description + # Required. The monitored resource type. For example, the type " + # cloudsql_database" represents databases in Google Cloud SQL. The maximum + # length of this value is 256 characters. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Required. A set of labels used to describe instances of this monitored + # resource type. For example, an individual Google Cloud SQL database is + # identified by values for the labels "database_id" and "zone". + # Corresponds to the JSON property `labels` + # @return [Array<Google::Apis::LoggingV2beta1::LabelDescriptor>] + attr_accessor :labels + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @type = args[:type] if args.key?(:type) - @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @display_name = args[:display_name] if args.key?(:display_name) @description = args[:description] if args.key?(:description) + @type = args[:type] if args.key?(:type) + @labels = args[:labels] if args.key?(:labels) end end # Additional information about the source code location that produced the log # entry. class LogEntrySourceLocation include Google::Apis::Core::Hashable + # Optional. Line within the source file. 1-based; 0 indicates no line number + # available. + # Corresponds to the JSON property `line` + # @return [String] + attr_accessor :line + # Optional. Source file name. Depending on the runtime environment, this might # be a simple name or a fully-qualified name. # Corresponds to the JSON property `file` # @return [String] attr_accessor :file @@ -1160,25 +609,19 @@ # Class.method (Java), dir/package.func (Go), function (Python). # Corresponds to the JSON property `function` # @return [String] attr_accessor :function - # Optional. Line within the source file. 1-based; 0 indicates no line number - # available. - # Corresponds to the JSON property `line` - # @return [String] - attr_accessor :line - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @line = args[:line] if args.key?(:line) @file = args[:file] if args.key?(:file) @function = args[:function] if args.key?(:function) - @line = args[:line] if args.key?(:line) end end # Result returned from ListLogEntries. class ListLogEntriesResponse @@ -1245,9 +688,566 @@ def update!(**args) @severity = args[:severity] if args.key?(:severity) @log_message = args[:log_message] if args.key?(:log_message) @source_location = args[:source_location] if args.key?(:source_location) @time = args[:time] if args.key?(:time) + end + end + + # Result returned from ListLogMetrics. + class ListLogMetricsResponse + include Google::Apis::Core::Hashable + + # A list of logs-based metrics. + # Corresponds to the JSON property `metrics` + # @return [Array<Google::Apis::LoggingV2beta1::LogMetric>] + attr_accessor :metrics + + # If there might be more results than appear in this response, then + # nextPageToken is included. To get the next set of results, call this method + # again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @metrics = args[:metrics] if args.key?(:metrics) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for Empty is empty JSON object ``. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # An individual entry in a log. + class LogEntry + include Google::Apis::Core::Hashable + + # Optional. A set of user-defined (key, value) data that provides additional + # information about the log entry. + # Corresponds to the JSON property `labels` + # @return [Hash<String,String>] + attr_accessor :labels + + # Optional. Resource name of the trace associated with the log entry, if any. If + # it contains a relative resource name, the name is assumed to be relative to // + # tracing.googleapis.com. Example: projects/my-projectid/traces/ + # 06796866738c859f2f19b7cfb3214824 + # Corresponds to the JSON property `trace` + # @return [String] + attr_accessor :trace + + # Optional. The severity of the log entry. The default value is LogSeverity. + # DEFAULT. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # Additional information about the source code location that produced the log + # entry. + # Corresponds to the JSON property `sourceLocation` + # @return [Google::Apis::LoggingV2beta1::LogEntrySourceLocation] + attr_accessor :source_location + + # Optional. The time the event described by the log entry occurred. If omitted, + # Stackdriver Logging will use the time the log entry is received. + # Corresponds to the JSON property `timestamp` + # @return [String] + attr_accessor :timestamp + + # Required. The resource name of the log to which this log entry belongs: + # "projects/[PROJECT_ID]/logs/[LOG_ID]" + # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" + # [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 following characters: + # upper and lower case alphanumeric characters, forward-slash, underscore, + # hyphen, and period.For backward compatibility, if log_name begins with a + # forward-slash, such as /projects/..., then the log entry is ingested as usual + # but the forward-slash is removed. Listing the log entry will not show the + # leading slash and filtering for a log name with a leading slash will never + # return any results. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + # A common proto for logging HTTP requests. Only contains semantics defined by + # the HTTP specification. Product-specific logging information MUST be defined + # in a separate message. + # Corresponds to the JSON property `httpRequest` + # @return [Google::Apis::LoggingV2beta1::HttpRequest] + attr_accessor :http_request + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The type field identifies a + # MonitoredResourceDescriptor object that describes the resource's schema. + # Information in the labels field identifies the actual resource and its + # attributes according to the schema. For example, a particular Compute Engine + # VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " + # zone": + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + + # The log entry payload, represented as a structure that is expressed as a JSON + # object. + # Corresponds to the JSON property `jsonPayload` + # @return [Hash<String,Object>] + attr_accessor :json_payload + + # Additional information about a potentially long-running operation with which a + # log entry is associated. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::LoggingV2beta1::LogEntryOperation] + attr_accessor :operation + + # Optional. A unique ID for the log entry. If you provide this field, the + # logging service considers other log entries in the same project with the same + # ID as duplicates which can be removed. If omitted, Stackdriver Logging will + # generate a unique ID for this log entry. + # Corresponds to the JSON property `insertId` + # @return [String] + attr_accessor :insert_id + + # The log entry payload, represented as a Unicode string (UTF-8). + # Corresponds to the JSON property `textPayload` + # @return [String] + attr_accessor :text_payload + + # The log entry payload, represented as a protocol buffer. Some Google Cloud + # Platform services use this field for their log entry payloads. + # Corresponds to the JSON property `protoPayload` + # @return [Hash<String,Object>] + attr_accessor :proto_payload + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @trace = args[:trace] if args.key?(:trace) + @severity = args[:severity] if args.key?(:severity) + @source_location = args[:source_location] if args.key?(:source_location) + @timestamp = args[:timestamp] if args.key?(:timestamp) + @log_name = args[:log_name] if args.key?(:log_name) + @http_request = args[:http_request] if args.key?(:http_request) + @resource = args[:resource] if args.key?(:resource) + @json_payload = args[:json_payload] if args.key?(:json_payload) + @operation = args[:operation] if args.key?(:operation) + @insert_id = args[:insert_id] if args.key?(:insert_id) + @text_payload = args[:text_payload] if args.key?(:text_payload) + @proto_payload = args[:proto_payload] if args.key?(:proto_payload) + end + end + + # Specifies a location in a source code file. + class SourceLocation + include Google::Apis::Core::Hashable + + # Line within the source file. + # Corresponds to the JSON property `line` + # @return [String] + attr_accessor :line + + # Source file name. Depending on the runtime environment, this might be a simple + # name or a fully-qualified name. + # Corresponds to the JSON property `file` + # @return [String] + attr_accessor :file + + # Human-readable name of the function or method being invoked, with optional + # context such as the class or package name. This information is used in + # contexts such as the logs viewer, where a file and line number are less + # meaningful. The format can vary by language. For example: qual.if.ied.Class. + # method (Java), dir/package.func (Go), function (Python). + # Corresponds to the JSON property `functionName` + # @return [String] + attr_accessor :function_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @line = args[:line] if args.key?(:line) + @file = args[:file] if args.key?(:file) + @function_name = args[:function_name] if args.key?(:function_name) + end + end + + # The parameters to ListLogEntries. + class ListLogEntriesRequest + include Google::Apis::Core::Hashable + + # Optional. How the results should be sorted. Presently, the only permitted + # values are "timestamp asc" (default) and "timestamp desc". The first option + # returns entries in order of increasing values of LogEntry.timestamp (oldest + # first), and the second option returns entries in order of decreasing + # timestamps (newest first). Entries with equal timestamps are returned in order + # of LogEntry.insertId. + # Corresponds to the JSON property `orderBy` + # @return [String] + attr_accessor :order_by + + # Required. Names of one or more resources from which to retrieve log entries: + # "projects/[PROJECT_ID]" + # "organizations/[ORGANIZATION_ID]" + # Projects listed in the project_ids field are added to this list. + # Corresponds to the JSON property `resourceNames` + # @return [Array<String>] + attr_accessor :resource_names + + # Optional. A filter that chooses which log entries to return. See Advanced Logs + # Filters. Only log entries that match the filter are returned. An empty filter + # matches all log entries in the resources listed in resource_names. Referencing + # a parent resource that is not listed in resource_names will cause the filter + # to return no results. The maximum length of the filter is 20000 characters. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # Deprecated. Use resource_names instead. One or more project identifiers or + # project numbers from which to retrieve log entries. Example: "my-project-1A". + # If present, these project identifiers are converted to resource name format + # and added to the list of resources in resource_names. + # Corresponds to the JSON property `projectIds` + # @return [Array<String>] + attr_accessor :project_ids + + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. pageToken must be the value of nextPageToken + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. + # Corresponds to the JSON property `pageSize` + # @return [Fixnum] + attr_accessor :page_size + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @order_by = args[:order_by] if args.key?(:order_by) + @resource_names = args[:resource_names] if args.key?(:resource_names) + @filter = args[:filter] if args.key?(:filter) + @project_ids = args[:project_ids] if args.key?(:project_ids) + @page_token = args[:page_token] if args.key?(:page_token) + @page_size = args[:page_size] if args.key?(:page_size) + end + end + + # Complete log information about a single HTTP request to an App Engine + # application. + class RequestLog + include Google::Apis::Core::Hashable + + # Version of the application that handled this request. + # Corresponds to the JSON property `versionId` + # @return [String] + attr_accessor :version_id + + # Module of the application that handled this request. + # Corresponds to the JSON property `moduleId` + # @return [String] + attr_accessor :module_id + + # Time when the request finished. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # User agent that made the request. + # Corresponds to the JSON property `userAgent` + # @return [String] + attr_accessor :user_agent + + # Whether this was a loading request for the instance. + # Corresponds to the JSON property `wasLoadingRequest` + # @return [Boolean] + attr_accessor :was_loading_request + alias_method :was_loading_request?, :was_loading_request + + # Source code for the application that handled this request. There can be more + # than one source reference per deployed application if source code is + # distributed among multiple repositories. + # Corresponds to the JSON property `sourceReference` + # @return [Array<Google::Apis::LoggingV2beta1::SourceReference>] + attr_accessor :source_reference + + # Size in bytes sent back to client by request. + # Corresponds to the JSON property `responseSize` + # @return [String] + attr_accessor :response_size + + # Stackdriver Trace identifier for this request. + # Corresponds to the JSON property `traceId` + # @return [String] + attr_accessor :trace_id + + # A list of log lines emitted by the application while serving this request. + # Corresponds to the JSON property `line` + # @return [Array<Google::Apis::LoggingV2beta1::LogLine>] + attr_accessor :line + + # Referrer URL of request. + # Corresponds to the JSON property `referrer` + # @return [String] + attr_accessor :referrer + + # Queue name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskQueueName` + # @return [String] + attr_accessor :task_queue_name + + # Globally unique identifier for a request, which is based on the request start + # time. Request IDs for requests which started later will compare greater as + # strings than those for requests which started earlier. + # Corresponds to the JSON property `requestId` + # @return [String] + attr_accessor :request_id + + # The logged-in user who made the request.Most likely, this is the part of the + # user's email before the @ sign. The field value is the same for different + # requests from the same user, but different users can have similar names. This + # information is also available to the application via the App Engine Users API. + # This field will be populated starting with App Engine 1.9.21. + # Corresponds to the JSON property `nickname` + # @return [String] + attr_accessor :nickname + + # Contains the path and query portion of the URL that was requested. For example, + # if the URL was "http://example.com/app?name=val", the resource would be "/app? + # name=val". The fragment identifier, which is identified by the # character, is + # not included. + # Corresponds to the JSON property `resource` + # @return [String] + attr_accessor :resource + + # Time this request spent in the pending request queue. + # Corresponds to the JSON property `pendingTime` + # @return [String] + attr_accessor :pending_time + + # HTTP response status code. Example: 200, 404. + # Corresponds to the JSON property `status` + # @return [Fixnum] + attr_accessor :status + + # Task name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskName` + # @return [String] + attr_accessor :task_name + + # File or class that handled the request. + # Corresponds to the JSON property `urlMapEntry` + # @return [String] + attr_accessor :url_map_entry + + # If the instance processing this request belongs to a manually scaled module, + # then this is the 0-based index of the instance. Otherwise, this value is -1. + # Corresponds to the JSON property `instanceIndex` + # @return [Fixnum] + attr_accessor :instance_index + + # Internet host and port number of the resource being requested. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Whether this request is finished or active. + # Corresponds to the JSON property `finished` + # @return [Boolean] + attr_accessor :finished + alias_method :finished?, :finished + + # HTTP version of request. Example: "HTTP/1.1". + # Corresponds to the JSON property `httpVersion` + # @return [String] + attr_accessor :http_version + + # Time when the request started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Latency of the request. + # Corresponds to the JSON property `latency` + # @return [String] + attr_accessor :latency + + # Origin IP address. + # Corresponds to the JSON property `ip` + # @return [String] + attr_accessor :ip + + # Application that handled this request. + # Corresponds to the JSON property `appId` + # @return [String] + attr_accessor :app_id + + # App Engine release version. + # Corresponds to the JSON property `appEngineRelease` + # @return [String] + attr_accessor :app_engine_release + + # Request method. Example: "GET", "HEAD", "PUT", "POST", "DELETE". + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # An indication of the relative cost of serving this request. + # Corresponds to the JSON property `cost` + # @return [Float] + attr_accessor :cost + + # An identifier for the instance that handled the request. + # Corresponds to the JSON property `instanceId` + # @return [String] + attr_accessor :instance_id + + # Number of CPU megacycles used to process request. + # Corresponds to the JSON property `megaCycles` + # @return [String] + attr_accessor :mega_cycles + + # Whether this is the first RequestLog entry for this request. If an active + # request has several RequestLog entries written to Stackdriver Logging, then + # this field will be set for one of them. + # Corresponds to the JSON property `first` + # @return [Boolean] + attr_accessor :first + alias_method :first?, :first + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @version_id = args[:version_id] if args.key?(:version_id) + @module_id = args[:module_id] if args.key?(:module_id) + @end_time = args[:end_time] if args.key?(:end_time) + @user_agent = args[:user_agent] if args.key?(:user_agent) + @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) + @source_reference = args[:source_reference] if args.key?(:source_reference) + @response_size = args[:response_size] if args.key?(:response_size) + @trace_id = args[:trace_id] if args.key?(:trace_id) + @line = args[:line] if args.key?(:line) + @referrer = args[:referrer] if args.key?(:referrer) + @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) + @request_id = args[:request_id] if args.key?(:request_id) + @nickname = args[:nickname] if args.key?(:nickname) + @resource = args[:resource] if args.key?(:resource) + @pending_time = args[:pending_time] if args.key?(:pending_time) + @status = args[:status] if args.key?(:status) + @task_name = args[:task_name] if args.key?(:task_name) + @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) + @instance_index = args[:instance_index] if args.key?(:instance_index) + @host = args[:host] if args.key?(:host) + @finished = args[:finished] if args.key?(:finished) + @http_version = args[:http_version] if args.key?(:http_version) + @start_time = args[:start_time] if args.key?(:start_time) + @latency = args[:latency] if args.key?(:latency) + @ip = args[:ip] if args.key?(:ip) + @app_id = args[:app_id] if args.key?(:app_id) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @cost = args[:cost] if args.key?(:cost) + @instance_id = args[:instance_id] if args.key?(:instance_id) + @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) + @first = args[:first] if args.key?(:first) + end + end + + # Result returned from ListMonitoredResourceDescriptors. + class ListMonitoredResourceDescriptorsResponse + include Google::Apis::Core::Hashable + + # A list of resource descriptors. + # Corresponds to the JSON property `resourceDescriptors` + # @return [Array<Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor>] + attr_accessor :resource_descriptors + + # If there might be more results than those appearing in this response, then + # nextPageToken is included. To get the next set of results, call this method + # again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A reference to a particular snapshot of the source tree used to build and + # deploy an application. + class SourceReference + include Google::Apis::Core::Hashable + + # Optional. A URI string identifying the repository. Example: "https://github. + # com/GoogleCloudPlatform/kubernetes.git" + # Corresponds to the JSON property `repository` + # @return [String] + attr_accessor :repository + + # The canonical and persistent identifier of the deployed revision. Example (git) + # : "0035781c50ec7aa23385dc841529ce8a4b70db1b" + # Corresponds to the JSON property `revisionId` + # @return [String] + attr_accessor :revision_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @repository = args[:repository] if args.key?(:repository) + @revision_id = args[:revision_id] if args.key?(:revision_id) end end end end end