A Snapshot object will give you access to your Cloud Pub/Sub snapshot.
Snapshots are sometimes retrieved when using various methods:
Snapshots may be created with:
-
Package
@google-cloud/pubsub
Example
//-
// From {@link PubSub#getSnapshots}:
//-
pubsub.getSnapshots((err, snapshots) => {
// `snapshots` is an array of Snapshot objects.
});
//-
// From {@link PubSub#getSnapshotsStream}:
//-
pubsub.getSnapshotsStream()
.on('error', console.error)
.on('data', (snapshot) => {
// `snapshot` is a Snapshot object.
});
//-
// From {@link PubSub#snapshot}:
//-
const snapshot = pubsub.snapshot('my-snapshot');
// snapshot is a Snapshot object.
//-
// Create a snapshot with {module:pubsub/subscription#createSnapshot}:
//-
const subscription = pubsub.subscription('my-subscription');
subscription.createSnapshot('my-snapshot', (err, snapshot) => {
if (!err) {
// `snapshot` is a Snapshot object.
}
});
//-
// Seek to your snapshot:
//-
const subscription = pubsub.subscription('my-subscription');
subscription.seek('my-snapshot', (err) => {
if (err) {
// Error handling omitted.
}
});
Constructors
(constructor)(parent, name)
constructor(parent: Subscription | PubSub, name: string);
Constructs a new instance of the Snapshot
class
Properties
metadata?: google.pubsub.v1.ISnapshot;
name
parent
parent: Subscription | PubSub;
Methods
create(gaxOpts)
create(gaxOpts?: CallOptions): Promise<CreateSnapshotResponse>;
Create a snapshot with the given name.
**This is only available if you accessed this object through .**
Snapshot#create
Parameter |
Name |
Description |
gaxOpts |
CallOptions
|
Example
const subscription = pubsub.subscription('my-subscription');
const snapshot = subscription.snapshot('my-snapshot');
const callback = (err, snapshot, apiResponse) => {
if (!err) {
// The snapshot was created successfully.
}
};
snapshot.create('my-snapshot', callback);
//-
// If the callback is omitted, we'll return a Promise.
//-
snapshot.create('my-snapshot').then((data) => {
const snapshot = data[0];
const apiResponse = data[1];
});
create(callback)
create(callback: CreateSnapshotCallback): void;
Returns |
Type |
Description |
void |
|
create(gaxOpts, callback)
create(gaxOpts: CallOptions, callback: CreateSnapshotCallback): void;
Returns |
Type |
Description |
void |
|
delete()
delete(): Promise<EmptyResponse>;
Example
snapshot.delete((err, apiResponse) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
snapshot.delete().then((data) => {
const apiResponse = data[0];
});
delete(callback)
delete(callback: EmptyCallback): void;
Returns |
Type |
Description |
void |
|
static formatName_(projectId: string, name: string): string;
Parameters |
Name |
Description |
projectId |
string
|
name |
string
|
Returns |
Type |
Description |
string |
|
seek(gaxOpts)
seek(gaxOpts?: CallOptions): Promise<SeekResponse>;
Seeks an existing subscription to the snapshot.
**This is only available if you accessed this object through .**
Snapshot#seek
Parameter |
Name |
Description |
gaxOpts |
CallOptions
|
Example
const subscription = pubsub.subscription('my-subscription');
const snapshot = subscription.snapshot('my-snapshot');
snapshot.seek((err, apiResponse) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
snapshot.seek().then((data) => {
const apiResponse = data[0];
});
seek(callback)
seek(callback: SeekCallback): void;
Returns |
Type |
Description |
void |
|
seek(gaxOpts, callback)
seek(gaxOpts: CallOptions, callback: SeekCallback): void;
Parameters |
Name |
Description |
gaxOpts |
CallOptions
|
callback |
SeekCallback
|
Returns |
Type |
Description |
void |
|