- Notifications
You must be signed in to change notification settings - Fork5
License
googleapis/java-logging-servlet-initializer
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Java EE idiomatic servlet container initializer to capture Http request context.
NOTE: This client is a work-in-progress, and may occasionallymake backwards-incompatible changes.
If you are using Maven, add this to your pom.xml file:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-logging-servlet-initializer</artifactId></dependency>
If you are using Gradle without BOM, add this to your dependencies
implementation'com.google.cloud:google-cloud-logging-servlet-initializer'If you are using SBT, add this to your dependencies
libraryDependencies+="com.google.cloud"%"google-cloud-logging-servlet-initializer"
You'll need to obtain thegoogle-cloud-logging-servlet-initializer library. See theQuickstart sectionto addgoogle-cloud-logging-servlet-initializer as a dependency in your code.
Cloud Logging Servlet Initializer saves you an effort to capture the logging context of the servlet request.The captured context includesHttp request and tracing information such as trace and span Ids.The initializer is registered usingService Provider Interface with the Java EE Servlet Container and adds a listener for servlet request events to capture the current context of the servlet requests.
Using Cloud Logging Servlet Initializer developers can enrich logs they write to Cloud Logging with Http request and tracing information without adding a single line of code.
Add the library to your pom.xml in addition togoogle-cloud-logging orgoogle-cloud-logging-logback.If you use asynchronous execution to process servlet requests and need to propogate the context to child threads (threads that are forked from the request handler's thread) you would need to set theuseInheritedContext property in the logging configuration totrue. Remember to provide the path to the configuration file as a system property:-Djava.util.logging.config.file=/path/to/logging.properties.
com.google.cloud.logging.ContextHandler.useInheritedContext=trueWhen theuseInheritedContext property is set totrue, the context stored for the request handler's thread will be inherited by all child threads that the thread creates.
NOTE: If child threads are not disposed at the end of the request handling, consider avoiding context inheritance.Context clean up removes the context for the request handler's threadONLY.
By default the context is saved for the request handler's thread only. If you do not use theuseInheritedContext property, you can set the context for other threads explicitly using thecom.google.cloud.logging.ContextHandler class.
Samples are in thesamples/ directory.
To get help, follow the instructions in theshared Troubleshooting document.
Java 8 or above is required for using this client.
Google's Java client libraries,Google Cloud Client Librariesfollow theOracle Java SE support roadmap(see the Oracle Java SE Product Releases section).
The library uses Jakarta Servlet package version 4.0.4. Older versions ofjavax.servlet are not supported.
In general, new feature development occurs with support for the lowest JavaLTS version covered by Oracle's Premier Support (which typically lasts 5 yearsfrom initial General Availability). If the minimum required JVM for a givenlibrary is changed, it is accompanied by asemver major release.
Java 11 and (in September 2021) Java 17 are the best choices for newdevelopment.
Google tests its client libraries with all current LTS versions covered byOracle's Extended Support (which typically lasts 8 years from initialGeneral Availability).
Google's client libraries support legacy versions of Java runtimes with longterm stable libraries that don't receive feature updates on a best efforts basisas it may not be possible to backport all patches.
Google provides updates on a best efforts basis to apps that continue to useJava 7, though apps might need to upgrade to current versions of the librarythat supports their JVM.
The latest versions and the supported Java versions are identified onthe individual GitHub repositorygithub.com/GoogleAPIs/java-SERVICENAMEand ongoogle-cloud-java.
This library followsSemantic Versioning.
It is currently in major version zero (0.y.z-alpha), which means that anything may change at any timeand the public API should not be considered stable.
Contributions to this library are always welcome and highly encouraged.
SeeCONTRIBUTING for more information how to get started.
Please note that this project is released with a Contributor Code of Conduct. By participating inthis project you agree to abide by its terms. SeeCode of Conduct for moreinformation.
Apache 2.0 - SeeLICENSE for more information.
| Java Version | Status |
|---|---|
| Java 8 | |
| Java 8 OSX | |
| Java 8 Windows | |
| Java 11 |
Java is a registered trademark of Oracle and/or its affiliates.
About
Resources
License
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.