- add warning about loading unvalidated credentials (#32121)
- Update minimum Ruby version to 3.0 (#29261)
- compatibility with GA releases of underlying versioned clients (#26361)
- Update minimum supported Ruby version to 2.7 (#25298)
- Fixed broken links in authentication documentation (#21619)
- update list logs response (#19285)
- update resource descriptor to handle paged enum (#18856)
- Update minimum Ruby version to 2.6 (#18444)
- Add documentation for quota_project Configuration attribute
- Update AUTHENTICATION.md in handwritten packages
- Drop support for Ruby 2.4 and add support for Ruby 3.0
- quota_project can be set via library configuration
This is a major update that removes the "low-level" client interface code, and
instead adds the new google-cloud-logging-v2 gem as a dependency.
The new dependency is a rewritten low-level client, produced by a next-
generation client code generator, with improved performance and stability.
This change should have no effect on the high-level interface that most users
will use. The one exception is that the (mostly undocumented) client_config
argument, for adjusting low-level parameters such as RPC retry settings on
client objects, has been removed. If you need to adjust these parameters, use
the configuration interface in google-cloud-logging-v2.
Substantial changes have been made in the low-level interfaces, however. If you
are using the low-level classes under the Google::Cloud::Logging::V2 module,
please review the docs for the new google-cloud-logging-v2 gem. In
particular:
- Some classes have been renamed, notably the client class itself.
- The client constructor takes a configuration block instead of configuration keyword arguments.
- All RPC method arguments are now keyword arguments.
- Improved field descriptions in the low-level interface.
- Provide more details on low-level monitored resource data types
- Fix a few broken links
- Adjusted some default timeout and retry settings
- Prevent error when calling stop! on unused AsyncWriter
- Fix some broken links in the Project and Sink docs
- Fix some broken links in the low-level interface documentation.
- Restore some path helpers in the low-level interface.
- Restore billing, folder, and organization path helpers in low-level interface
- support separate project setting for quota/billing
- Add LogBucket
- Add ConfigServiceV2Client#list_buckets
- Add ConfigServiceV2Client#get_bucket
- Add ConfigServiceV2Client#update_bucket
- Add LifecycleState enum
- Change name to positional param in ConfigServiceV2Client#get_cmek_settings
- Change name and cmek_settings to positional params in ConfigServiceV2Client#update_cmek_settings
- Remove billing, folder, and organization path helpers from ConfigServiceV2Client
- Remove LogEntry#metadata
- Remove previously deprecated project_ids from LoggingServiceV2Client#list_log_entries
- Remove log_path helpers from LoggingServiceV2Client
- Rename ConfigServiceV2Client#billing_path to #billing_account_path
- Rename LoggingServiceV2Client#billing_path to #billing_account_path
- Rename MetricsServiceV2Client#metric_path to #log_metric_path
- Update network configuration settings
- Fix doc links to Cmek methods in lower-level client
- Update copyright year
- Update description of MetricDescriptor#unit in lower-level API
- Fix MonitorMixin usage on Ruby 2.7
- Ruby 2.7 will error if new_cond is called before super().
- Make the call to super() be the first call in initialize
- Update docs for lower-level API call MetricDescriptorMetadata#unit
- Update minimum runtime dependencies
This release requires Ruby 2.4 or later.
- Clarify which Google Cloud Platform environments support automatic authentication
- Support additional fields of LogSink in the low-level interface
- Add LogSink#create_time field
- Add LogSink#update_time field
- Add LogSink#bigquery_options field
- Add BigQueryOptions type
- Update documentation
- Support overriding of service endpoint
- Fix max threads setting in thread pools
- Thread pools once again limit the number of threads allocated.
- Update documentation links
- Support overriding service host and port in the low-level interface.
- Add documentation for MetricDescriptor#launch_stage and MonitoredResourceDescriptor#launch_stage.
- Deprecate MetricDescriptor:: MetricDescriptorMetadata#launch_stage
- Use VERSION constant in GAPIC client
- Add AUTHENTICATION.md guide.
- Update generated documentation.
- Update generated code examples.
- Extract gRPC header values from request.
- Fix bug (typo) in retrieving default on_error proc.
- Update concurrent-ruby dependency
- AsyncWriter buffer entries and make batch API calls
- Update AsyncWriter to buffer log entries and batch API calls.
- Maintain backwards compatibility with the previous AsyncWriter's public API, although the implementation is changed.
- Back pressure is applied by limiting the number of queued API calls. Errors will now be raised when there are not enough resources.
- Errors are reported using the AsyncWriter#on_error callback.
- Pending log entries are sent before the process closes using at_exit.
- Add Logging on_error configuration.
- Add default insert_id value for Entry
- Add Entry.insert_id
- Add default insert_id value for Entry An Entry object is assigned an insert_id when created so that if the Entry object gets persisted multiple times it would know its insert_id value and not attempt to generate a new one for each persist attempt. An Entry object will still be considered empty if the only value it has is the insert_id.
- (This change does not use SecureRandom for performance reasons.)
- Add Logging trace_sampled
- Add Entry#trace_sampled attribute
- Add trace_sampled to Logger::RequestInfo
- Changes to Rails default Logger
- Delay updating the Rails default logger until the first web request.
- This will avoid issues with forking processes and gRPC resources.
- This is accomplished by adding the on_init argument to middleware.
- Add Railtie.set_default_logger
- This method can be called post-fork to update the Rails default logger.
- Delay updating the Rails default logger until the first web request.
- Make use of Credentials#project_id
- Use Credentials#project_id If a project_id is not provided, use the value on the Credentials object. This value was added in googleauth 0.7.0.
- Loosen googleauth dependency Allow for new releases up to 0.10. The googleauth devs have committed to maintaining the current API and will not make backwards compatible changes before 0.10.
- Direct logs for "/healthz" requests to the health check log.
- Update documentation.
- Add Google::Logging::V2::LogEntry#trace_sampled.
- Update low-level documentation.
- Use concurrent-ruby and ThreadLocalVar in Logger.
- Remove Monitor and synchronize blocks.
- Logger#thread_ids now only returns the current thread.
- Make Logger thread-safe.
- Update Logging generated files.
- Add Metric's MetricDescriptorMetadata.
- Update documentation.
- Change documentation URL to googleapis GitHub org.
- Fix circular require warning.
- Add missing documentation files to package.
- Update documentation.
- Update documentation.
- Fix bug in List classes by propagating arguments needed for pagination calls.
- Fix issue when disabling Stackdriver components with Rails.env.production.
- Reduce string memory usage.
- Add documentation for enabling gRPC logging.
- Use Google Cloud Shared Configuration.
- Deprecated Logging Sink attributes.
- Update google-gax dependency to 1.0.
- Refresh GAPIC layer (low-level API) based on updates to Protobuf types.
- Fix credentials verification bug in Railtie.
- Add
Google::Cloud::Logging::Credentialsclass. - Rename constructor arguments to
project_idandcredentials. (The previous argumentsprojectandkeyfileare still supported.) - Document
Google::Auth::Credentialsascredentialsvalue. - Add
partial_successoptional argument toProject#write_entries. - Deprecate
HttpRequest#method, useHttpRequest#request_methodinstead. - Update generated low level GAPIC code.
- Updated
google-gax(grpc,google-protobuf),googleauthdependencies.
- Updated protobuf classes.
- Updated README.
- Add
labelsconfiguration option toGoogle::Cloud::Logging::Middlewarefor Rails and other Rack-based framework integrations.
- stackdriver-core 1.2.0 release
- Update
labelsparameter inGoogle::Cloud::Logging::Logger#initializeto default to empty hash. - Update
Google::Cloud::Logging::Loggerto support the followingActiveSupport::Loggermethods::local_level,:local_level=,:silence,:silencer, and:unknown?. - Update GAPIC configuration to exclude
UNAVAILABLEerrors from automatic retry. - Update gem spec homepage links.
- Introduce new
Google::Cloud::Logging.configureinstrumentation configuration interface. - Google::Cloud::Logger now sends extra trace context information in log entries.
- Middleware constructor can be called without an explicit logger. This should make integration in non-Rails applications simpler.
- If Rails integration fails due to an auth error, the notice is now printed to STDOUT rather than STDERR, which should make it a bit less scary when displayed in Docker output.
- Release 1.0
- Added
#traceand#source_locationto Entry - Added listing of logs for the project
- Updated documentation
- Automatic retry on
UNAVAILABLEerrors
- No public API changes.
- Update GRPC header value sent to the Logging API.
- No public API changes.
- Update GRPC header value sent to the Logging API.
- Low level API adds new Protobuf types and GAPIC methods.
- Fix GRPC retry bug
- The client_config data structure has replaced retry_codes/retry_codes_def with retry_codes
- Update GRPC/Protobuf/GAX dependencies
Google::Cloud::Logging::Loggerdepended on standard logger but didn't require it. Fixed.
- Use the
stackdriver-coregem to obtain Trace ID, for compatibility with thegoogle-cloud-tracegem. Google::Cloud::Logging::Loggernow understands all remaining standard Logger methods.- Clean up
AsyncWriterthreads on VM exit, to prevent gRPC from crashing if it's still in the middle of a call. - Support setting log name by path, and direct App Engine health checks to a separate log by default.
- Minor improvements to warning messages.
- Add
resourcesmethod argument toProject#entries - Deprecate
projectsmethod argument fromProject#entries - Add
start_at,end_at, andwriter_identityattributes toSink - Add
start_at,end_at, andunique_writer_identityparameters toProject#create_sink - Add
unique_writer_identityparameter toSink#save - Many documentation improvements
- Add documentation for Low Level API
- Fix issue with uninitialized VERSION (remi)
- Upgraded Google::Cloud::Logging::Railtie to use AsyncWriter
- Added Rails configuration for custom monitored resource
- New service constructor Google::Cloud::Logging.new
- New constructor argument client_config
- Logger is now asynchronous
- AsyncWriter added
- Rails and Rack integration added
- Fix an issue with the GRPC client and forked sub-processes
This gem contains the Stackdriver Logging service implementation for the google-cloud gem. The google-cloud gem replaces the old gcloud gem. Legacy code can continue to use the gcloud gem.
- Namespace is now
Google::Cloud - The
google-cloudgem is now an umbrella package for individual gems