diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml
deleted file mode 100644
index 359fe71c1..000000000
--- a/.github/.OwlBot.lock.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 2024 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-docker:
- image: gcr.io/cloud-devrel-public-resources/owlbot-java:latest
- digest: sha256:72f0d373307d128b2cb720c5cb4d90b31f0e86529dd138c632710ae0c69efae3
-# created: 2024-06-05T18:32:21.724930324Z
diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml
index f907b699e..9ece4d71a 100644
--- a/.github/sync-repo-settings.yaml
+++ b/.github/sync-repo-settings.yaml
@@ -15,7 +15,6 @@ branchProtectionRules:
- units (11)
- 'Kokoro - Test: Integration'
- cla/google
- - OwlBot Post Processor
- 'Kokoro - Test: Java GraalVM Native Image'
- 'Kokoro - Test: Java 17 GraalVM Native Image'
- javadoc
@@ -33,7 +32,6 @@ branchProtectionRules:
- units (11)
- 'Kokoro - Test: Integration'
- cla/google
- - OwlBot Post Processor
- pattern: 3.7.x
isAdminEnforced: true
requiredApprovingReviewCount: 1
@@ -48,7 +46,6 @@ branchProtectionRules:
- units (11)
- 'Kokoro - Test: Integration'
- cla/google
- - OwlBot Post Processor
- pattern: 3.13.x
isAdminEnforced: true
requiredApprovingReviewCount: 1
@@ -63,7 +60,6 @@ branchProtectionRules:
- units (11)
- 'Kokoro - Test: Integration'
- cla/google
- - OwlBot Post Processor
- 'Kokoro - Test: Java GraalVM Native Image'
- 'Kokoro - Test: Java 17 GraalVM Native Image'
permissionRules:
diff --git a/.readme-partials.yaml b/.readme-partials.yaml
index 588c70420..27cf6092f 100644
--- a/.readme-partials.yaml
+++ b/.readme-partials.yaml
@@ -227,4 +227,17 @@ custom_content: |
google-cloud-logging-servlet-initializer
```
+ #### Population of Trace/Span ID fields in a LogEntry
+ Cloud Logging libraries use [trace fields within LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace) to capture trace contexts, which enables the [correlation of logs and traces](https://cloud.google.com/logging/docs/view/correlate-logs), and distributed tracing troubleshooting.
+ These tracing fields, including [trace](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace), [spanId](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.span_id), and [traceSampled](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace_sampled), define the trace context for a `LogEntry`.
+
+ Tracing information set manually takes precedence over information set by the following methods:
+
+ * Auto-populate Trace/Span ID from OpenTelemetry Context
+ If you are using OpenTelemetry and there is an active span in the OpenTelemetry Context, the `trace`, `span_id`, and `trace_sampled` fields in the log entry are populated from the active span. More information about OpenTelemetry can be found [here](https://opentelemetry.io/docs/languages/java/).
+
+ * Use the [servlet initializer](https://github.com/googleapis/java-logging-servlet-initializer) to Populate Trace/Span ID from HTTP Headers
+ If trace/span Id are not manually set or auto-populated from OpenTelemetry context, you can use the [servlet initializer](https://github.com/googleapis/java-logging-servlet-initializer) to populate trace/span Id from HTTP headers.
+ This package filters all servlet requests to automatically capture the execution context of the servlet request and stores it by using ContextHandler class. Http request and trace/span Id information are populated from the stored Context class instances.
+ Using this method, trace/span Id can be automatically populated from either the [W3C Traceparent](https://www.w3.org/TR/trace-context) or [X-Cloud-Trace-Context](https://cloud.google.com/trace/docs/trace-context#legacy-http-header) headers.
diff --git a/.repo-metadata.json b/.repo-metadata.json
index 5fd7eb1c6..670c70a55 100644
--- a/.repo-metadata.json
+++ b/.repo-metadata.json
@@ -2,17 +2,18 @@
"api_shortname": "logging",
"name_pretty": "Cloud Logging",
"product_documentation": "https://cloud.google.com/logging/docs",
+ "api_description": "allows you to store, search, analyze, monitor, and alert on log data and events from Google Cloud and Amazon Web Services. Using the BindPlane service, you can also collect this data from over 150 common application components, on-premises systems, and hybrid cloud systems. BindPlane is included with your Google Cloud project at no additional cost.",
"client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-logging/latest/history",
- "issue_tracker": "https://issuetracker.google.com/savedsearches/559764",
"release_level": "stable",
+ "transport": "grpc",
"language": "java",
"repo": "googleapis/java-logging",
"repo_short": "java-logging",
"distribution_name": "com.google.cloud:google-cloud-logging",
"api_id": "logging.googleapis.com",
- "transport": "grpc",
"library_type": "GAPIC_COMBO",
- "api_description": "allows you to store, search, analyze, monitor, and alert on log data and events from Google Cloud and Amazon Web Services. Using the BindPlane service, you can also collect this data from over 150 common application components, on-premises systems, and hybrid cloud systems. BindPlane is included with your Google Cloud project at no additional cost.",
+ "requires_billing": true,
"codeowner_team": "@googleapis/api-logging @googleapis/yoshi-java @googleapis/api-logging-partners",
+ "issue_tracker": "https://issuetracker.google.com/savedsearches/559764",
"recommended_package": "com.google.cloud.logging"
-}
+}
\ No newline at end of file
diff --git a/README.md b/README.md
index 02feda489..d0cddab96 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
com.google.cloud
libraries-bom
- 26.40.0
+ 26.43.0
pom
import
@@ -52,7 +52,7 @@ If you are using Maven without the BOM, add this to your dependencies:
If you are using Gradle 5.x or later, add this to your dependencies:
```Groovy
-implementation platform('com.google.cloud:libraries-bom:26.42.0')
+implementation platform('com.google.cloud:libraries-bom:26.43.0')
implementation 'com.google.cloud:google-cloud-logging'
```
@@ -82,7 +82,7 @@ The client application making API calls must be granted [authorization scopes][a
### Prerequisites
You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Logging [API enabled][enable-api].
-
+You will need to [enable billing][enable-billing] to use Google Cloud Logging.
[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
@@ -282,7 +282,7 @@ Cloud Function or GKE. The logger agent installed on these environments can capt
The agent can parse structured logs printed to STDOUT and capture additional log metadata beside the log payload.
The parsed information includes severity, source location, user labels, http request and tracing information.
-#### Auto-population of log entrys' metadata
+#### Auto-population of Metadata in a LogEntry
LogEntry object metadata information such as [monitored resource](https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource),
[Http request](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#HttpRequest) or
@@ -329,6 +329,19 @@ If you use Maven, to use the servlet initializer add the following dependency to
google-cloud-logging-servlet-initializer
```
+#### Population of Trace/Span ID fields in a LogEntry
+Cloud Logging libraries use [trace fields within LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace) to capture trace contexts, which enables the [correlation of logs and traces](https://cloud.google.com/logging/docs/view/correlate-logs), and distributed tracing troubleshooting.
+These tracing fields, including [trace](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace), [spanId](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.span_id), and [traceSampled](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry#FIELDS.trace_sampled), define the trace context for a `LogEntry`.
+
+Tracing information set manually takes precedence over information set by the following methods:
+
+* Auto-populate Trace/Span ID from OpenTelemetry Context
+If you are using OpenTelemetry and there is an active span in the OpenTelemetry Context, the `trace`, `span_id`, and `trace_sampled` fields in the log entry are populated from the active span. More information about OpenTelemetry can be found [here](https://opentelemetry.io/docs/languages/java/).
+
+* Use the [servlet initializer](https://github.com/googleapis/java-logging-servlet-initializer) to Populate Trace/Span ID from HTTP Headers
+If trace/span Id are not manually set or auto-populated from OpenTelemetry context, you can use the [servlet initializer](https://github.com/googleapis/java-logging-servlet-initializer) to populate trace/span Id from HTTP headers.
+This package filters all servlet requests to automatically capture the execution context of the servlet request and stores it by using ContextHandler class. Http request and trace/span Id information are populated from the stored Context class instances.
+Using this method, trace/span Id can be automatically populated from either the [W3C Traceparent](https://www.w3.org/TR/trace-context) or [X-Cloud-Trace-Context](https://cloud.google.com/trace/docs/trace-context#legacy-http-header) headers.
@@ -464,7 +477,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
[contributing]: https://github.com/googleapis/java-logging/blob/main/CONTRIBUTING.md
[code-of-conduct]: https://github.com/googleapis/java-logging/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
[license]: https://github.com/googleapis/java-logging/blob/main/LICENSE
-
+[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing
[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=logging.googleapis.com
[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM
[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
diff --git a/samples/native-image-sample/pom.xml b/samples/native-image-sample/pom.xml
index 4db771309..d912e2d2d 100644
--- a/samples/native-image-sample/pom.xml
+++ b/samples/native-image-sample/pom.xml
@@ -29,7 +29,7 @@
com.google.cloud
libraries-bom
- 26.40.0
+ 26.43.0
pom
import
diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml
index 1f2e58b3a..011ff3652 100644
--- a/samples/snippets/pom.xml
+++ b/samples/snippets/pom.xml
@@ -29,7 +29,7 @@
com.google.cloud
libraries-bom
- 26.40.0
+ 26.43.0
pom
import