Class Sink
- java.lang.Object
-
- com.google.cloud.logging.SinkInfo
-
- com.google.cloud.logging.Sink
-
- All Implemented Interfaces:
Serializable
public class Sink extends SinkInfo
Cloud Logging sinks can be used to control the export of your logs. Each sink specifies the export of a set of log entries to a certain destination. A sink consists of a name, unique to the project, a filter for choosing the log entries to export and a destination for the log entries.Sink destination can either be a Google Cloud Storage bucket (see
SinkInfo.Destination.BucketDestination, a Google Cloud BigQuery dataset (seeSinkInfo.Destination.DatasetDestination) or a Google CloudPub/Sub topic (seeSinkInfo.Destination.TopicDestination).Sinkadds a layer of service-related functionality overSinkInfo. Objects of this class are immutable. To get aSinkobject with the most recent information usereload()orreloadAsync().- See Also:
- About Sinks, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSink.BuilderA builder forSinkobjects.-
Nested classes/interfaces inherited from class com.google.cloud.logging.SinkInfo
SinkInfo.Destination, SinkInfo.VersionFormat
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleandelete()Deletes this sink.com.google.api.core.ApiFuture<Boolean>deleteAsync()Sends a request for deleting this sink.booleanequals(Object obj)LogginggetLogging()Returns the sinks'sLoggingobject used to issue requests.inthashCode()Sinkreload()Fetches current sink's latest information.com.google.api.core.ApiFuture<Sink>reloadAsync()Sends a request to fetch current sink's latest information.Sink.BuildertoBuilder()Returns a builder for thisSinkInfoobject.Sinkupdate()Updates current sink.com.google.api.core.ApiFuture<Sink>updateAsync()Sends a request to update current sink.-
Methods inherited from class com.google.cloud.logging.SinkInfo
getDestination, getFilter, getName, getVersionFormat, newBuilder, of, toString
-
-
-
-
Method Detail
-
toBuilder
public Sink.Builder toBuilder()
Description copied from class:SinkInfoReturns a builder for thisSinkInfoobject.
-
getLogging
public Logging getLogging()
Returns the sinks'sLoggingobject used to issue requests.
-
delete
public boolean delete()
Deletes this sink.Example of deleting the sink.
boolean deleted = sink.delete(); if (deleted) { // the sink was deleted } else { // the sink was not found }- Returns:
trueif the sink was deleted,falseif it was not found- Throws:
LoggingException- upon failure
-
deleteAsync
public com.google.api.core.ApiFuture<Boolean> deleteAsync()
Sends a request for deleting this sink. This method returns aApiFutureobject to consume the result.Future.get()returnstrueif the sink was deleted,falseif it was not found.Example of asynchronously deleting the sink.
ApiFuture<Boolean> future = sink.deleteAsync(); // ... boolean deleted = future.get(); if (deleted) { // the sink was deleted } else { // the sink was not found }- Throws:
LoggingException- upon failure
-
reload
public Sink reload()
Fetches current sink's latest information. Returnsnullif the sink does not exist.Example of getting the sink's latest information.
Sink latestSink = sink.reload(); if (latestSink == null) { // the sink was not found }- Returns:
- a
Sinkobject with latest information ornullif not found - Throws:
LoggingException- upon failure
-
reloadAsync
public com.google.api.core.ApiFuture<Sink> reloadAsync()
Sends a request to fetch current sink's latest information. This method returns aApiFutureobject to consume the result.Future.get()returns aSinkobject with latest information ornullif not found.Example of asynchronously getting the sink's latest information.
ApiFuture<Sink> future = sink.reloadAsync(); // ... Sink latestSink = future.get(); if (latestSink == null) { // the sink was not found }- Throws:
LoggingException- upon failure
-
update
public Sink update()
Updates current sink. If the sink does not exist, it is created.Example of updating the sink's information.
Sink updatedSink = sink.toBuilder() .setFilter("severity<=ERROR") .build() .update();- Returns:
- a
Sinkobject with updated information - Throws:
LoggingException- upon failure
-
updateAsync
public com.google.api.core.ApiFuture<Sink> updateAsync()
Sends a request to update current sink. If the sink does not exist, it is created. This method returns aApiFutureobject to consume the result.Future.get()returns aSinkobject with updated information.Example of asynchronously updating the sink's information.
ApiFuture<Sink> future = sink.toBuilder() .setFilter("severity<=ERROR") .build() .updateAsync(); // ... Sink updatedSink = future.get();- Throws:
LoggingException- upon failure
-
-