docs: update generated docs (#981)

diff --git a/docs/dyn/cloudtrace_v2.projects.traces.html b/docs/dyn/cloudtrace_v2.projects.traces.html
index 387199a..da7b960 100644
--- a/docs/dyn/cloudtrace_v2.projects.traces.html
+++ b/docs/dyn/cloudtrace_v2.projects.traces.html
@@ -87,8 +87,6 @@
     <code class="details" id="batchWrite">batchWrite(name, body=None, x__xgafv=None)</code>
   <pre>Sends new spans to new or existing traces. You cannot update
 existing spans.
-In this case, writing traces is not considered an active developer
-method since traces are machine generated.
 
 Args:
   name: string, Required. The name of the project where the spans belong. The format is
@@ -105,12 +103,144 @@
           # its sub-operations. A trace can also contain multiple root spans,
           # or none at all. Spans do not need to be contiguous&amp;mdash;there may be
           # gaps or overlaps between spans in a trace.
-        &quot;childSpanCount&quot;: 42, # Optional. The number of child spans that were generated while this span
-            # was active. If set, allows implementation to detect missing child spans.
-        &quot;sameProcessAsParentSpan&quot;: True or False, # Optional. Set this parameter to indicate whether this span is in
-            # the same process as its parent. If you do not set this parameter,
-            # Stackdriver Trace is unable to take advantage of this helpful
-            # information.
+        &quot;displayName&quot;: { # Represents a string that might be shortened to a specified length. # Required. A description of the span&#x27;s operation (up to 128 bytes).
+            # Trace displays the description in the
+            # Google Cloud Platform Console.
+            # For example, the display name can be a qualified method name or a file name
+            # and a line number where the operation is called. A best practice is to use
+            # the same display name within an application and at the same call point.
+            # This makes it easier to correlate spans in different traces.
+          &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+              # bytes long and the limit of the string is 128 bytes, then
+              # `value` contains the first 128 bytes of the 500-byte string.
+              #
+              # Truncation always happens on a UTF8 character boundary. If there
+              # are multi-byte characters in the string, then the length of the
+              # shortened string might be less than the size limit.
+          &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+              # value is 0, then the string was not shortened.
+        },
+        &quot;links&quot;: { # A collection of links, which are references from this span to a span # Links associated with the span. You can have up to 128 links per Span.
+            # in the same or different trace.
+          &quot;link&quot;: [ # A collection of links.
+            { # A pointer from the current span to another span in the same trace or in a
+                # different trace. For example, this can be used in batching operations,
+                # where a single batch handler processes multiple requests from different
+                # traces or when the handler receives a request from a different project.
+              &quot;traceId&quot;: &quot;A String&quot;, # The [TRACE_ID] for a trace within a project.
+              &quot;type&quot;: &quot;A String&quot;, # The relationship of the current span relative to the linked span.
+              &quot;spanId&quot;: &quot;A String&quot;, # The [SPAN_ID] for a span within a trace.
+              &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the link. You have have up to  32 attributes per
+                  # link.
+                &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
+                    # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
+                    # or the Boolean values `true` and `false`. For example:
+                    #
+                    #     &quot;/instance_id&quot;: { &quot;string_value&quot;: { &quot;value&quot;: &quot;my-instance&quot; } }
+                    #     &quot;/http/request_bytes&quot;: { &quot;int_value&quot;: 300 }
+                    #     &quot;abc.com/myattribute&quot;: { &quot;bool_value&quot;: false }
+                  &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
+                    &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
+                      &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                          # bytes long and the limit of the string is 128 bytes, then
+                          # `value` contains the first 128 bytes of the 500-byte string.
+                          #
+                          # Truncation always happens on a UTF8 character boundary. If there
+                          # are multi-byte characters in the string, then the length of the
+                          # shortened string might be less than the size limit.
+                      &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                          # value is 0, then the string was not shortened.
+                    },
+                    &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
+                    &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
+                  },
+                },
+                &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
+                    # because their keys are too long or because there are too many attributes.
+                    # If this value is 0 then all attributes are valid.
+              },
+            },
+          ],
+          &quot;droppedLinksCount&quot;: 42, # The number of dropped links after the maximum size was enforced. If
+              # this value is 0, then no links were dropped.
+        },
+        &quot;parentSpanId&quot;: &quot;A String&quot;, # The [SPAN_ID] of this span&#x27;s parent span. If this is a root span,
+            # then this field must be empty.
+        &quot;timeEvents&quot;: { # A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation # A set of time events. You can have up to 32 annotations and 128 message
+            # events per span.
+            # on the span, consisting of either user-supplied key:value pairs, or
+            # details of a message sent/received between Spans.
+          &quot;droppedMessageEventsCount&quot;: 42, # The number of dropped message events in all the included time events.
+              # If the value is 0, then no message events were dropped.
+          &quot;timeEvent&quot;: [ # A collection of `TimeEvent`s.
+            { # A time-stamped annotation or message event in the Span.
+              &quot;time&quot;: &quot;A String&quot;, # The timestamp indicating the time the event occurred.
+              &quot;annotation&quot;: { # Text annotation with a set of attributes. # Text annotation with a set of attributes.
+                &quot;description&quot;: { # Represents a string that might be shortened to a specified length. # A user-supplied message describing the event. The maximum length for
+                    # the description is 256 bytes.
+                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                      # bytes long and the limit of the string is 128 bytes, then
+                      # `value` contains the first 128 bytes of the 500-byte string.
+                      #
+                      # Truncation always happens on a UTF8 character boundary. If there
+                      # are multi-byte characters in the string, then the length of the
+                      # shortened string might be less than the size limit.
+                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                      # value is 0, then the string was not shortened.
+                },
+                &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the annotation. You can have up to 4 attributes
+                    # per Annotation.
+                  &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
+                      # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
+                      # or the Boolean values `true` and `false`. For example:
+                      #
+                      #     &quot;/instance_id&quot;: { &quot;string_value&quot;: { &quot;value&quot;: &quot;my-instance&quot; } }
+                      #     &quot;/http/request_bytes&quot;: { &quot;int_value&quot;: 300 }
+                      #     &quot;abc.com/myattribute&quot;: { &quot;bool_value&quot;: false }
+                    &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
+                      &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
+                        &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                            # bytes long and the limit of the string is 128 bytes, then
+                            # `value` contains the first 128 bytes of the 500-byte string.
+                            #
+                            # Truncation always happens on a UTF8 character boundary. If there
+                            # are multi-byte characters in the string, then the length of the
+                            # shortened string might be less than the size limit.
+                        &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                            # value is 0, then the string was not shortened.
+                      },
+                      &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
+                      &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
+                    },
+                  },
+                  &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
+                      # because their keys are too long or because there are too many attributes.
+                      # If this value is 0 then all attributes are valid.
+                },
+              },
+              &quot;messageEvent&quot;: { # An event describing a message sent/received between Spans. # An event describing a message sent/received between Spans.
+                &quot;compressedSizeBytes&quot;: &quot;A String&quot;, # The number of compressed bytes sent or received. If missing assumed to
+                    # be the same size as uncompressed.
+                &quot;uncompressedSizeBytes&quot;: &quot;A String&quot;, # The number of uncompressed bytes sent or received.
+                &quot;id&quot;: &quot;A String&quot;, # An identifier for the MessageEvent&#x27;s message that can be used to match
+                    # SENT and RECEIVED MessageEvents. It is recommended to be unique within
+                    # a Span.
+                &quot;type&quot;: &quot;A String&quot;, # Type of MessageEvent. Indicates whether the message was sent or
+                    # received.
+              },
+            },
+          ],
+          &quot;droppedAnnotationsCount&quot;: 42, # The number of dropped annotations in all the included time events.
+              # If the value is 0, then no annotations were dropped.
+        },
+        &quot;name&quot;: &quot;A String&quot;, # Required. The resource name of the span in the following format:
+            #
+            #     projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;
+            # it is a 32-character hexadecimal encoding of a 16-byte array.
+            #
+            # [SPAN_ID] is a unique identifier for a span within a trace; it
+            # is a 16-character hexadecimal encoding of an 8-byte array. It should not
+            # be zero.
         &quot;status&quot;: { # The `Status` type defines a logical error model that is suitable for # Optional. The final status for this span.
             # different programming environments, including REST APIs and RPC APIs. It is
             # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -118,111 +248,20 @@
             #
             # You can find out more about this error model and how to work with it in the
             # [API Design Guide](https://cloud.google.com/apis/design/errors).
-          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-              # user-facing error message should be localized and sent in the
-              # google.rpc.Status.details field, or localized by the client.
           &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
               # message types for APIs to use.
             {
               &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
             },
           ],
+          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+              # user-facing error message should be localized and sent in the
+              # google.rpc.Status.details field, or localized by the client.
           &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
         },
-        &quot;name&quot;: &quot;A String&quot;, # The resource name of the span in the following format:
-            #
-            #     projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;
-            # it is a 32-character hexadecimal encoding of a 16-byte array.
-            #
-            # [SPAN_ID] is a unique identifier for a span within a trace; it
-            # is a 16-character hexadecimal encoding of an 8-byte array.
+        &quot;childSpanCount&quot;: 42, # Optional. The number of child spans that were generated while this span
+            # was active. If set, allows implementation to detect missing child spans.
         &quot;stackTrace&quot;: { # A call stack appearing in a trace. # Stack trace captured at the start of the span.
-          &quot;stackFrames&quot;: { # A collection of stack frames, which can be truncated. # Stack frames in this stack trace. A maximum of 128 frames are allowed.
-            &quot;frame&quot;: [ # Stack frames in this call stack.
-              { # Represents a single stack frame in a stack trace.
-                &quot;lineNumber&quot;: &quot;A String&quot;, # The line number in `file_name` where the function call appears.
-                &quot;loadModule&quot;: { # Binary module. # The binary module from where the code was loaded.
-                  &quot;module&quot;: { # Represents a string that might be shortened to a specified length. # For example: main binary, kernel modules, and dynamic libraries
-                      # such as libc.so, sharedlib.so (up to 256 bytes).
-                    &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                        # value is 0, then the string was not shortened.
-                    &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                        # bytes long and the limit of the string is 128 bytes, then
-                        # `value` contains the first 128 bytes of the 500-byte string.
-                        #
-                        # Truncation always happens on a UTF8 character boundary. If there
-                        # are multi-byte characters in the string, then the length of the
-                        # shortened string might be less than the size limit.
-                  },
-                  &quot;buildId&quot;: { # Represents a string that might be shortened to a specified length. # A unique identifier for the module, usually a hash of its
-                      # contents (up to 128 bytes).
-                    &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                        # value is 0, then the string was not shortened.
-                    &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                        # bytes long and the limit of the string is 128 bytes, then
-                        # `value` contains the first 128 bytes of the 500-byte string.
-                        #
-                        # Truncation always happens on a UTF8 character boundary. If there
-                        # are multi-byte characters in the string, then the length of the
-                        # shortened string might be less than the size limit.
-                  },
-                },
-                &quot;columnNumber&quot;: &quot;A String&quot;, # The column number where the function call appears, if available.
-                    # This is important in JavaScript because of its anonymous functions.
-                &quot;fileName&quot;: { # Represents a string that might be shortened to a specified length. # The name of the source file where the function call appears (up to 256
-                    # bytes).
-                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                      # value is 0, then the string was not shortened.
-                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                      # bytes long and the limit of the string is 128 bytes, then
-                      # `value` contains the first 128 bytes of the 500-byte string.
-                      #
-                      # Truncation always happens on a UTF8 character boundary. If there
-                      # are multi-byte characters in the string, then the length of the
-                      # shortened string might be less than the size limit.
-                },
-                &quot;sourceVersion&quot;: { # Represents a string that might be shortened to a specified length. # The version of the deployed source code (up to 128 bytes).
-                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                      # value is 0, then the string was not shortened.
-                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                      # bytes long and the limit of the string is 128 bytes, then
-                      # `value` contains the first 128 bytes of the 500-byte string.
-                      #
-                      # Truncation always happens on a UTF8 character boundary. If there
-                      # are multi-byte characters in the string, then the length of the
-                      # shortened string might be less than the size limit.
-                },
-                &quot;originalFunctionName&quot;: { # Represents a string that might be shortened to a specified length. # An un-mangled function name, if `function_name` is
-                    # [mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can
-                    # be fully-qualified (up to 1024 bytes).
-                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                      # value is 0, then the string was not shortened.
-                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                      # bytes long and the limit of the string is 128 bytes, then
-                      # `value` contains the first 128 bytes of the 500-byte string.
-                      #
-                      # Truncation always happens on a UTF8 character boundary. If there
-                      # are multi-byte characters in the string, then the length of the
-                      # shortened string might be less than the size limit.
-                },
-                &quot;functionName&quot;: { # Represents a string that might be shortened to a specified length. # The fully-qualified name that uniquely identifies the function or
-                    # method that is active in this frame (up to 1024 bytes).
-                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                      # value is 0, then the string was not shortened.
-                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                      # bytes long and the limit of the string is 128 bytes, then
-                      # `value` contains the first 128 bytes of the 500-byte string.
-                      #
-                      # Truncation always happens on a UTF8 character boundary. If there
-                      # are multi-byte characters in the string, then the length of the
-                      # shortened string might be less than the size limit.
-                },
-              },
-            ],
-            &quot;droppedFramesCount&quot;: 42, # The number of stack frames that were dropped because there
-                # were too many stack frames.
-                # If this value is 0, then no stack frames were dropped.
-          },
           &quot;stackTraceHashId&quot;: &quot;A String&quot;, # The hash ID is used to conserve network bandwidth for duplicate
               # stack traces within a single trace.
               #
@@ -232,48 +271,15 @@
               #
               # Subsequent spans within the same request can refer
               # to that stack trace by only setting `stackTraceHashId`.
-        },
-        &quot;parentSpanId&quot;: &quot;A String&quot;, # The [SPAN_ID] of this span&#x27;s parent span. If this is a root span,
-            # then this field must be empty.
-        &quot;endTime&quot;: &quot;A String&quot;, # Required. The end time of the span. On the client side, this is the time kept by
-            # the local machine where the span execution ends. On the server side, this
-            # is the time when the server application handler stops running.
-        &quot;spanKind&quot;: &quot;A String&quot;, # Distinguishes between spans generated in a particular context. For example,
-            # two spans with the same name may be distinguished using `CLIENT` (caller)
-            # and `SERVER` (callee) to identify an RPC call.
-        &quot;startTime&quot;: &quot;A String&quot;, # Required. The start time of the span. On the client side, this is the time kept by
-            # the local machine where the span execution starts. On the server side, this
-            # is the time when the server&#x27;s application handler starts running.
-        &quot;displayName&quot;: { # Represents a string that might be shortened to a specified length. # Required. A description of the span&#x27;s operation (up to 128 bytes).
-            # Stackdriver Trace displays the description in the
-            # Google Cloud Platform Console.
-            # For example, the display name can be a qualified method name or a file name
-            # and a line number where the operation is called. A best practice is to use
-            # the same display name within an application and at the same call point.
-            # This makes it easier to correlate spans in different traces.
-          &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-              # value is 0, then the string was not shortened.
-          &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-              # bytes long and the limit of the string is 128 bytes, then
-              # `value` contains the first 128 bytes of the 500-byte string.
-              #
-              # Truncation always happens on a UTF8 character boundary. If there
-              # are multi-byte characters in the string, then the length of the
-              # shortened string might be less than the size limit.
-        },
-        &quot;timeEvents&quot;: { # A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation # A set of time events. You can have up to 32 annotations and 128 message
-            # events per span.
-            # on the span, consisting of either user-supplied key:value pairs, or
-            # details of a message sent/received between Spans.
-          &quot;droppedMessageEventsCount&quot;: 42, # The number of dropped message events in all the included time events.
-              # If the value is 0, then no message events were dropped.
-          &quot;timeEvent&quot;: [ # A collection of `TimeEvent`s.
-            { # A time-stamped annotation or message event in the Span.
-              &quot;annotation&quot;: { # Text annotation with a set of attributes. # Text annotation with a set of attributes.
-                &quot;description&quot;: { # Represents a string that might be shortened to a specified length. # A user-supplied message describing the event. The maximum length for
-                    # the description is 256 bytes.
-                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                      # value is 0, then the string was not shortened.
+          &quot;stackFrames&quot;: { # A collection of stack frames, which can be truncated. # Stack frames in this stack trace. A maximum of 128 frames are allowed.
+            &quot;droppedFramesCount&quot;: 42, # The number of stack frames that were dropped because there
+                # were too many stack frames.
+                # If this value is 0, then no stack frames were dropped.
+            &quot;frame&quot;: [ # Stack frames in this call stack.
+              { # Represents a single stack frame in a stack trace.
+                &quot;lineNumber&quot;: &quot;A String&quot;, # The line number in `file_name` where the function call appears.
+                &quot;functionName&quot;: { # Represents a string that might be shortened to a specified length. # The fully-qualified name that uniquely identifies the function or
+                    # method that is active in this frame (up to 1024 bytes).
                   &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
                       # bytes long and the limit of the string is 128 bytes, then
                       # `value` contains the first 128 bytes of the 500-byte string.
@@ -281,102 +287,79 @@
                       # Truncation always happens on a UTF8 character boundary. If there
                       # are multi-byte characters in the string, then the length of the
                       # shortened string might be less than the size limit.
+                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                      # value is 0, then the string was not shortened.
                 },
-                &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the annotation. You can have up to 4 attributes
-                    # per Annotation.
-                  &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
-                      # because their keys are too long or because there are too many attributes.
-                      # If this value is 0 then all attributes are valid.
-                  &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
-                      # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
-                      # or the Boolean values `true` and `false`. For example:
+                &quot;sourceVersion&quot;: { # Represents a string that might be shortened to a specified length. # The version of the deployed source code (up to 128 bytes).
+                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                      # bytes long and the limit of the string is 128 bytes, then
+                      # `value` contains the first 128 bytes of the 500-byte string.
                       #
-                      #     &quot;/instance_id&quot;: { &quot;string_value&quot;: { &quot;value&quot;: &quot;my-instance&quot; } }
-                      #     &quot;/http/request_bytes&quot;: { &quot;int_value&quot;: 300 }
-                      #     &quot;abc.com/myattribute&quot;: { &quot;bool_value&quot;: false }
-                    &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
-                      &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
-                      &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
-                        &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                            # value is 0, then the string was not shortened.
-                        &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                            # bytes long and the limit of the string is 128 bytes, then
-                            # `value` contains the first 128 bytes of the 500-byte string.
-                            #
-                            # Truncation always happens on a UTF8 character boundary. If there
-                            # are multi-byte characters in the string, then the length of the
-                            # shortened string might be less than the size limit.
-                      },
-                      &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
-                    },
+                      # Truncation always happens on a UTF8 character boundary. If there
+                      # are multi-byte characters in the string, then the length of the
+                      # shortened string might be less than the size limit.
+                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                      # value is 0, then the string was not shortened.
+                },
+                &quot;loadModule&quot;: { # Binary module. # The binary module from where the code was loaded.
+                  &quot;buildId&quot;: { # Represents a string that might be shortened to a specified length. # A unique identifier for the module, usually a hash of its
+                      # contents (up to 128 bytes).
+                    &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                        # bytes long and the limit of the string is 128 bytes, then
+                        # `value` contains the first 128 bytes of the 500-byte string.
+                        #
+                        # Truncation always happens on a UTF8 character boundary. If there
+                        # are multi-byte characters in the string, then the length of the
+                        # shortened string might be less than the size limit.
+                    &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                        # value is 0, then the string was not shortened.
+                  },
+                  &quot;module&quot;: { # Represents a string that might be shortened to a specified length. # For example: main binary, kernel modules, and dynamic libraries
+                      # such as libc.so, sharedlib.so (up to 256 bytes).
+                    &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                        # bytes long and the limit of the string is 128 bytes, then
+                        # `value` contains the first 128 bytes of the 500-byte string.
+                        #
+                        # Truncation always happens on a UTF8 character boundary. If there
+                        # are multi-byte characters in the string, then the length of the
+                        # shortened string might be less than the size limit.
+                    &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                        # value is 0, then the string was not shortened.
                   },
                 },
-              },
-              &quot;messageEvent&quot;: { # An event describing a message sent/received between Spans. # An event describing a message sent/received between Spans.
-                &quot;id&quot;: &quot;A String&quot;, # An identifier for the MessageEvent&#x27;s message that can be used to match
-                    # SENT and RECEIVED MessageEvents. It is recommended to be unique within
-                    # a Span.
-                &quot;compressedSizeBytes&quot;: &quot;A String&quot;, # The number of compressed bytes sent or received. If missing assumed to
-                    # be the same size as uncompressed.
-                &quot;uncompressedSizeBytes&quot;: &quot;A String&quot;, # The number of uncompressed bytes sent or received.
-                &quot;type&quot;: &quot;A String&quot;, # Type of MessageEvent. Indicates whether the message was sent or
-                    # received.
-              },
-              &quot;time&quot;: &quot;A String&quot;, # The timestamp indicating the time the event occurred.
-            },
-          ],
-          &quot;droppedAnnotationsCount&quot;: 42, # The number of dropped annotations in all the included time events.
-              # If the value is 0, then no annotations were dropped.
-        },
-        &quot;links&quot;: { # A collection of links, which are references from this span to a span # Links associated with the span. You can have up to 128 links per Span.
-            # in the same or different trace.
-          &quot;link&quot;: [ # A collection of links.
-            { # A pointer from the current span to another span in the same trace or in a
-                # different trace. For example, this can be used in batching operations,
-                # where a single batch handler processes multiple requests from different
-                # traces or when the handler receives a request from a different project.
-              &quot;type&quot;: &quot;A String&quot;, # The relationship of the current span relative to the linked span.
-              &quot;traceId&quot;: &quot;A String&quot;, # The [TRACE_ID] for a trace within a project.
-              &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the link. You have have up to  32 attributes per
-                  # link.
-                &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
-                    # because their keys are too long or because there are too many attributes.
-                    # If this value is 0 then all attributes are valid.
-                &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
-                    # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
-                    # or the Boolean values `true` and `false`. For example:
-                    #
-                    #     &quot;/instance_id&quot;: { &quot;string_value&quot;: { &quot;value&quot;: &quot;my-instance&quot; } }
-                    #     &quot;/http/request_bytes&quot;: { &quot;int_value&quot;: 300 }
-                    #     &quot;abc.com/myattribute&quot;: { &quot;bool_value&quot;: false }
-                  &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
-                    &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
-                    &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
-                      &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                          # value is 0, then the string was not shortened.
-                      &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
-                          # bytes long and the limit of the string is 128 bytes, then
-                          # `value` contains the first 128 bytes of the 500-byte string.
-                          #
-                          # Truncation always happens on a UTF8 character boundary. If there
-                          # are multi-byte characters in the string, then the length of the
-                          # shortened string might be less than the size limit.
-                    },
-                    &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
-                  },
+                &quot;columnNumber&quot;: &quot;A String&quot;, # The column number where the function call appears, if available.
+                    # This is important in JavaScript because of its anonymous functions.
+                &quot;originalFunctionName&quot;: { # Represents a string that might be shortened to a specified length. # An un-mangled function name, if `function_name` is
+                    # [mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can
+                    # be fully-qualified (up to 1024 bytes).
+                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                      # bytes long and the limit of the string is 128 bytes, then
+                      # `value` contains the first 128 bytes of the 500-byte string.
+                      #
+                      # Truncation always happens on a UTF8 character boundary. If there
+                      # are multi-byte characters in the string, then the length of the
+                      # shortened string might be less than the size limit.
+                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                      # value is 0, then the string was not shortened.
+                },
+                &quot;fileName&quot;: { # Represents a string that might be shortened to a specified length. # The name of the source file where the function call appears (up to 256
+                    # bytes).
+                  &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
+                      # bytes long and the limit of the string is 128 bytes, then
+                      # `value` contains the first 128 bytes of the 500-byte string.
+                      #
+                      # Truncation always happens on a UTF8 character boundary. If there
+                      # are multi-byte characters in the string, then the length of the
+                      # shortened string might be less than the size limit.
+                  &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                      # value is 0, then the string was not shortened.
                 },
               },
-              &quot;spanId&quot;: &quot;A String&quot;, # The [SPAN_ID] for a span within a trace.
-            },
-          ],
-          &quot;droppedLinksCount&quot;: 42, # The number of dropped links after the maximum size was enforced. If
-              # this value is 0, then no links were dropped.
+            ],
+          },
         },
         &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the span. You can have up to 32 attributes per
             # span.
-          &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
-              # because their keys are too long or because there are too many attributes.
-              # If this value is 0 then all attributes are valid.
           &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
               # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
               # or the Boolean values `true` and `false`. For example:
@@ -385,10 +368,7 @@
               #     &quot;/http/request_bytes&quot;: { &quot;int_value&quot;: 300 }
               #     &quot;abc.com/myattribute&quot;: { &quot;bool_value&quot;: false }
             &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
-              &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
               &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
-                &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
-                    # value is 0, then the string was not shortened.
                 &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
                     # bytes long and the limit of the string is 128 bytes, then
                     # `value` contains the first 128 bytes of the 500-byte string.
@@ -396,12 +376,30 @@
                     # Truncation always happens on a UTF8 character boundary. If there
                     # are multi-byte characters in the string, then the length of the
                     # shortened string might be less than the size limit.
+                &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
+                    # value is 0, then the string was not shortened.
               },
+              &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
               &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
             },
           },
+          &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
+              # because their keys are too long or because there are too many attributes.
+              # If this value is 0 then all attributes are valid.
         },
+        &quot;spanKind&quot;: &quot;A String&quot;, # Optional. Distinguishes between spans generated in a particular context. For example,
+            # two spans with the same name may be distinguished using `CLIENT` (caller)
+            # and `SERVER` (callee) to identify an RPC call.
+        &quot;endTime&quot;: &quot;A String&quot;, # Required. The end time of the span. On the client side, this is the time kept by
+            # the local machine where the span execution ends. On the server side, this
+            # is the time when the server application handler stops running.
+        &quot;startTime&quot;: &quot;A String&quot;, # Required. The start time of the span. On the client side, this is the time kept by
+            # the local machine where the span execution starts. On the server side, this
+            # is the time when the server&#x27;s application handler starts running.
         &quot;spanId&quot;: &quot;A String&quot;, # Required. The [SPAN_ID] portion of the span&#x27;s resource name.
+        &quot;sameProcessAsParentSpan&quot;: True or False, # Optional. Set this parameter to indicate whether this span is in
+            # the same process as its parent. If you do not set this parameter,
+            # Trace is unable to take advantage of this helpful information.
       },
     ],
   }