@google-cloud/pubsub 4.6.0 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +2 -1
  3. package/build/src/iam.d.ts +11 -2
  4. package/build/src/iam.js +12 -2
  5. package/build/src/iam.js.map +1 -1
  6. package/build/src/index.d.ts +2 -0
  7. package/build/src/index.js +5 -1
  8. package/build/src/index.js.map +1 -1
  9. package/build/src/lease-manager.d.ts +2 -2
  10. package/build/src/lease-manager.js +19 -3
  11. package/build/src/lease-manager.js.map +1 -1
  12. package/build/src/message-queues.d.ts +8 -3
  13. package/build/src/message-queues.js +17 -8
  14. package/build/src/message-queues.js.map +1 -1
  15. package/build/src/publisher/flow-publisher.js +5 -0
  16. package/build/src/publisher/flow-publisher.js.map +1 -1
  17. package/build/src/publisher/index.d.ts +3 -2
  18. package/build/src/publisher/index.js +24 -46
  19. package/build/src/publisher/index.js.map +1 -1
  20. package/build/src/publisher/message-batch.d.ts +13 -1
  21. package/build/src/publisher/message-batch.js +11 -1
  22. package/build/src/publisher/message-batch.js.map +1 -1
  23. package/build/src/publisher/message-queues.js +32 -6
  24. package/build/src/publisher/message-queues.js.map +1 -1
  25. package/build/src/publisher/pubsub-message.d.ts +43 -1
  26. package/build/src/publisher/pubsub-message.js +29 -0
  27. package/build/src/publisher/pubsub-message.js.map +1 -1
  28. package/build/src/pubsub.d.ts +5 -0
  29. package/build/src/pubsub.js +4 -14
  30. package/build/src/pubsub.js.map +1 -1
  31. package/build/src/subscriber.d.ts +72 -6
  32. package/build/src/subscriber.js +179 -51
  33. package/build/src/subscriber.js.map +1 -1
  34. package/build/src/subscription.d.ts +3 -2
  35. package/build/src/subscription.js +7 -4
  36. package/build/src/subscription.js.map +1 -1
  37. package/build/src/telemetry-tracing.d.ts +257 -0
  38. package/build/src/telemetry-tracing.js +648 -0
  39. package/build/src/telemetry-tracing.js.map +1 -0
  40. package/build/src/topic.d.ts +2 -1
  41. package/build/src/topic.js +8 -4
  42. package/build/src/topic.js.map +1 -1
  43. package/package.json +5 -4
  44. package/build/src/opentelemetry-tracing.d.ts +0 -23
  45. package/build/src/opentelemetry-tracing.js +0 -41
  46. package/build/src/opentelemetry-tracing.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,13 @@
4
4
 
5
5
  [1]: https://www.npmjs.com/package/@google-cloud/pubsub?activeTab=versions
6
6
 
7
+ ## [4.7.0](https://github.com/googleapis/nodejs-pubsub/compare/v4.6.0...v4.7.0) (2024-08-24)
8
+
9
+
10
+ ### Features
11
+
12
+ * Add support for OTel context propagation and harmonized spans ([#1833](https://github.com/googleapis/nodejs-pubsub/issues/1833)) ([4b5c90d](https://github.com/googleapis/nodejs-pubsub/commit/4b5c90dc334e90cefb4da3c6fe9ce027b50aacb8))
13
+
7
14
  ## [4.6.0](https://github.com/googleapis/nodejs-pubsub/compare/v4.5.0...v4.6.0) (2024-07-12)
8
15
 
9
16
 
package/README.md CHANGED
@@ -163,8 +163,8 @@ Samples are in the [`samples/`](https://github.com/googleapis/nodejs-pubsub/tree
163
163
  | Listen with exactly-once delivery | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/listenForMessagesWithExactlyOnceDelivery.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/listenForMessagesWithExactlyOnceDelivery.js,samples/README.md) |
164
164
  | Listen For Protobuf Messages | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/listenForProtobufMessages.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/listenForProtobufMessages.js,samples/README.md) |
165
165
  | Listen For Messages With Custom Attributes | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/listenWithCustomAttributes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/listenWithCustomAttributes.js,samples/README.md) |
166
+ | Subscribe with OpenTelemetry Tracing | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/listenWithOpenTelemetryTracing.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/listenWithOpenTelemetryTracing.js,samples/README.md) |
166
167
  | Modify Push Configuration | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/modifyPushConfig.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/modifyPushConfig.js,samples/README.md) |
167
- | OpenTelemetry Tracing | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/openTelemetryTracing.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/openTelemetryTracing.js,samples/README.md) |
168
168
  | Publish Avro Records to a Topic | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishAvroRecords.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishAvroRecords.js,samples/README.md) |
169
169
  | Publish Batched Messages | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishBatchedMessages.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishBatchedMessages.js,samples/README.md) |
170
170
  | Publish Message | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishMessage.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishMessage.js,samples/README.md) |
@@ -172,6 +172,7 @@ Samples are in the [`samples/`](https://github.com/googleapis/nodejs-pubsub/tree
172
172
  | Publish Ordered Message | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishOrderedMessage.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishOrderedMessage.js,samples/README.md) |
173
173
  | Publish Protobuf Messages to a Topic | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishProtobufMessages.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishProtobufMessages.js,samples/README.md) |
174
174
  | Publish with flow control | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishWithFlowControl.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishWithFlowControl.js,samples/README.md) |
175
+ | Publish with OpenTelemetry Tracing | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishWithOpenTelemetryTracing.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishWithOpenTelemetryTracing.js,samples/README.md) |
175
176
  | Publish With Retry Settings | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/publishWithRetrySettings.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/publishWithRetrySettings.js,samples/README.md) |
176
177
  | Quickstart | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) |
177
178
  | Remove Dead Letter Policy | [source code](https://github.com/googleapis/nodejs-pubsub/blob/main/samples/removeDeadLetterPolicy.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-pubsub&page=editor&open_in_editor=samples/removeDeadLetterPolicy.js,samples/README.md) |
@@ -22,6 +22,14 @@ export type GetPolicyCallback = RequestCallback<Policy>;
22
22
  export type SetPolicyCallback = RequestCallback<Policy>;
23
23
  export type SetPolicyResponse = [Policy];
24
24
  export type GetPolicyResponse = [Policy];
25
+ /**
26
+ * Allows us to get the most up to date full name of an object.
27
+ *
28
+ * @private
29
+ */
30
+ export interface Nameable {
31
+ name: string;
32
+ }
25
33
  /**
26
34
  * Shows which IAM permissions is allowed.
27
35
  * The key to this object are the IAM permissions (string) and the values are
@@ -78,8 +86,9 @@ export type TestIamPermissionsCallback = ResourceCallback<IamPermissionsMap, Iam
78
86
  export declare class IAM {
79
87
  pubsub: PubSub;
80
88
  request: typeof PubSub.prototype.request;
81
- id: string;
82
- constructor(pubsub: PubSub, id: string);
89
+ private nameable_;
90
+ constructor(pubsub: PubSub, nameOrNameable: Nameable | string);
91
+ get id(): string;
83
92
  /**
84
93
  * @typedef {array} GetPolicyResponse
85
94
  * @property {object} 0 The policy.
package/build/src/iam.js CHANGED
@@ -62,10 +62,20 @@ const util_1 = require("./util");
62
62
  * ```
63
63
  */
64
64
  class IAM {
65
- constructor(pubsub, id) {
65
+ constructor(pubsub, nameOrNameable) {
66
66
  this.pubsub = pubsub;
67
67
  this.request = pubsub.request.bind(pubsub);
68
- this.id = id;
68
+ if (typeof nameOrNameable === 'string') {
69
+ this.nameable_ = {
70
+ name: nameOrNameable,
71
+ };
72
+ }
73
+ else {
74
+ this.nameable_ = nameOrNameable;
75
+ }
76
+ }
77
+ get id() {
78
+ return this.nameable_.name;
69
79
  }
70
80
  getPolicy(optsOrCallback, callback) {
71
81
  const gaxOpts = typeof optsOrCallback === 'object' ? optsOrCallback : {};
@@ -1 +1 @@
1
- {"version":3,"file":"iam.js","sourceRoot":"","sources":["../../src/iam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AAEH,iCAAkC;AAIlC,iCAAqC;AA8BrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAa,GAAG;IAKd,YAAY,MAAc,EAAE,EAAU;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IA8CD,SAAS,CACP,cAAgD,EAChD,QAA4B;QAE5B,MAAM,OAAO,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,QAAQ,GAAG,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,IAAI,CAAC,EAAE;SAClB,CAAC;QAEF,IAAI,CAAC,OAAO,CACV;YACE,MAAM,EAAE,kBAAkB;YAC1B,MAAM,EAAE,cAAc;YACtB,OAAO;YACP,OAAO;SACR,EACD,QAAS,CACV,CAAC;IACJ,CAAC;IAoED,SAAS,CACP,MAAc,EACd,cAAgD,EAChD,QAA4B;QAE5B,IAAI,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,QAAQ,GAAG,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,MAAM;SACP,CAAC;QAEF,IAAI,CAAC,OAAO,CACV;YACE,MAAM,EAAE,kBAAkB;YAC1B,MAAM,EAAE,cAAc;YACtB,OAAO;YACP,OAAO;SACR,EACD,QAAS,CACV,CAAC;IACJ,CAAC;IA6FD,eAAe,CACb,WAA8B,EAC9B,cAAyD,EACzD,QAAqC;QAErC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,WAAW,KAAK,QAAQ,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,QAAQ,GAAG,OAAO,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;SACjC,CAAC;QAEF,IAAI,CAAC,OAAO,CACV;YACE,MAAM,EAAE,kBAAkB;YAC1B,MAAM,EAAE,oBAAoB;YAC5B,OAAO;YACP,OAAO;SACR,EACD,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACZ,IAAI,GAAG,EAAE,CAAC;gBACR,QAAS,CAAC,GAAG,EAAE,IAAI,EAAE,IAAK,CAAC,CAAC;gBAC5B,OAAO;YACT,CAAC;YAED,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAK,CAAC,WAAY,CAAC,CAAC;YACxD,MAAM,cAAc,GAClB,WACD,CAAC,MAAM,CACN,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;gBAClB,GAAG,CAAC,UAAU,CAAC,GAAG,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,OAAO,GAAG,CAAC;YACb,CAAC,EACD,EAA8B,CAC/B,CAAC;YACF,QAAS,CAAC,IAAI,EAAE,cAAc,EAAE,IAAK,CAAC,CAAC;QACzC,CAAC,CACF,CAAC;IACJ,CAAC;CACF;AAlTD,kBAkTC;AAED;;;;;GAKG;AACH,IAAA,oBAAa,EAAC,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE;IAChC,WAAW;IACX,WAAW;IACX,iBAAiB;CAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"iam.js","sourceRoot":"","sources":["../../src/iam.ts"],"names":[],"mappings":"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"}
@@ -98,3 +98,5 @@ export { Duration, TotalOfUnit, DurationLike } from './temporal';
98
98
  export { DebugMessage } from './debug';
99
99
  import * as protos from '../protos/protos';
100
100
  export { protos };
101
+ import { legacyExports } from './telemetry-tracing';
102
+ export { legacyExports as openTelemetry };
@@ -15,7 +15,7 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.protos = exports.DebugMessage = exports.Duration = exports.Topic = exports.AckResponses = exports.AckError = exports.Subscription = exports.Encodings = exports.SchemaViews = exports.SchemaTypes = exports.Schema = exports.Message = exports.Snapshot = exports.PubSub = exports.PublishError = exports.IAM = exports.v1 = void 0;
18
+ exports.openTelemetry = exports.protos = exports.DebugMessage = exports.Duration = exports.Topic = exports.AckResponses = exports.AckError = exports.Subscription = exports.Encodings = exports.SchemaViews = exports.SchemaTypes = exports.Schema = exports.Message = exports.Snapshot = exports.PubSub = exports.PublishError = exports.IAM = exports.v1 = void 0;
19
19
  /**
20
20
  * @namespace google.pubsub.v1
21
21
  */
@@ -118,4 +118,8 @@ if (process.env.DEBUG_GRPC) {
118
118
  }
119
119
  const protos = require("../protos/protos");
120
120
  exports.protos = protos;
121
+ // Deprecated; please see the updated OpenTelemetry sample
122
+ // for an example of how to use telemetry in this library.
123
+ const telemetry_tracing_1 = require("./telemetry-tracing");
124
+ Object.defineProperty(exports, "openTelemetry", { enumerable: true, get: function () { return telemetry_tracing_1.legacyExports; } });
121
125
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;GAWG;AACH,2BAA2B;AACnB,gBAAE;AAEV,6BAUe;AADb,0FAAA,GAAG,OAAA;AAIL,2DAAuD;AAA/C,6GAAA,YAAY,OAAA;AAEpB,mCAckB;AAFhB,gGAAA,MAAM,OAAA;AAGR,uCAMoB;AADlB,oGAAA,QAAQ,OAAA;AAEV,2CAAwD;AAAhD,qGAAA,OAAO,OAAA;AACf,mCAYkB;AAXhB,gGAAA,MAAM,OAAA;AAIN,qGAAA,WAAW,OAAA;AAIX,qGAAA,WAAW,OAAA;AACX,mGAAA,SAAS,OAAA;AAGX,+CAmBwB;AAJtB,4GAAA,YAAY,OAAA;AACZ,wGAAA,QAAQ,OAAA;AAER,4GAAA,YAAY,OAAA;AAEd,iCAciB;AAFf,8FAAA,KAAK,OAAA;AAGP,uCAA+D;AAAvD,oGAAA,QAAQ,OAAA;AAChB,iCAAqC;AAA7B,qGAAA,YAAY,OAAA;AAEpB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;IACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AACD,2CAA2C;AACnC,wBAAM"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;GAWG;AACH,2BAA2B;AACnB,gBAAE;AAEV,6BAUe;AADb,0FAAA,GAAG,OAAA;AAIL,2DAAuD;AAA/C,6GAAA,YAAY,OAAA;AAEpB,mCAckB;AAFhB,gGAAA,MAAM,OAAA;AAGR,uCAMoB;AADlB,oGAAA,QAAQ,OAAA;AAEV,2CAAwD;AAAhD,qGAAA,OAAO,OAAA;AACf,mCAYkB;AAXhB,gGAAA,MAAM,OAAA;AAIN,qGAAA,WAAW,OAAA;AAIX,qGAAA,WAAW,OAAA;AACX,mGAAA,SAAS,OAAA;AAGX,+CAmBwB;AAJtB,4GAAA,YAAY,OAAA;AACZ,wGAAA,QAAQ,OAAA;AAER,4GAAA,YAAY,OAAA;AAEd,iCAciB;AAFf,8FAAA,KAAK,OAAA;AAGP,uCAA+D;AAAvD,oGAAA,QAAQ,OAAA;AAChB,iCAAqC;AAA7B,qGAAA,YAAY,OAAA;AAEpB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;IACxC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AACD,2CAA2C;AACnC,wBAAM;AAEd,0DAA0D;AAC1D,0DAA0D;AAC1D,2DAAkD;AACzB,8FADjB,iCAAa,OACiB"}
@@ -80,10 +80,10 @@ export declare class LeaseManager extends EventEmitter {
80
80
  */
81
81
  add(message: Message): void;
82
82
  /**
83
- * Removes ALL messages from inventory.
83
+ * Removes ALL messages from inventory, and returns the ones removed.
84
84
  * @private
85
85
  */
86
- clear(): void;
86
+ clear(): Message[];
87
87
  /**
88
88
  * Indicates if we're at or over capacity.
89
89
  *
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.LeaseManager = void 0;
19
19
  const events_1 = require("events");
20
20
  const default_options_1 = require("./default-options");
21
+ const temporal_1 = require("./temporal");
21
22
  /**
22
23
  * @typedef {object} FlowControlOptions
23
24
  * @property {boolean} [allowExcessMessages=true] PubSub delivers messages in
@@ -83,6 +84,7 @@ class LeaseManager extends events_1.EventEmitter {
83
84
  const wasFull = this.isFull();
84
85
  this._messages.add(message);
85
86
  this.bytes += message.length;
87
+ message.subSpans.flowStart();
86
88
  if (allowExcessMessages || !wasFull) {
87
89
  this._dispense(message);
88
90
  }
@@ -98,18 +100,20 @@ class LeaseManager extends events_1.EventEmitter {
98
100
  }
99
101
  }
100
102
  /**
101
- * Removes ALL messages from inventory.
103
+ * Removes ALL messages from inventory, and returns the ones removed.
102
104
  * @private
103
105
  */
104
106
  clear() {
105
107
  const wasFull = this.isFull();
106
108
  this._pending = [];
109
+ const remaining = Array.from(this._messages);
107
110
  this._messages.clear();
108
111
  this.bytes = 0;
109
112
  if (wasFull) {
110
113
  process.nextTick(() => this.emit('free'));
111
114
  }
112
115
  this._cancelExtension();
116
+ return remaining;
113
117
  }
114
118
  /**
115
119
  * Indicates if we're at or over capacity.
@@ -204,7 +208,11 @@ class LeaseManager extends events_1.EventEmitter {
204
208
  */
205
209
  _dispense(message) {
206
210
  if (this._subscriber.isOpen) {
207
- process.nextTick(() => this._subscriber.emit('message', message));
211
+ message.subSpans.flowEnd();
212
+ process.nextTick(() => {
213
+ message.subSpans.processingStart(this._subscriber.name);
214
+ this._subscriber.emit('message', message);
215
+ });
208
216
  }
209
217
  }
210
218
  /**
@@ -219,16 +227,24 @@ class LeaseManager extends events_1.EventEmitter {
219
227
  // Lifespan here is in minutes.
220
228
  const lifespan = (Date.now() - message.received) / (60 * 1000);
221
229
  if (lifespan < this._options.maxExtensionMinutes) {
230
+ const deadlineDuration = temporal_1.Duration.from({ seconds: deadline });
231
+ message.subSpans.modAckStart(deadlineDuration, false);
222
232
  if (this._subscriber.isExactlyOnceDelivery) {
223
- message.modAckWithResponse(deadline).catch(e => {
233
+ message
234
+ .modAckWithResponse(deadline)
235
+ .catch(e => {
224
236
  // In the case of a permanent failure (temporary failures are retried),
225
237
  // we need to stop trying to lease-manage the message.
226
238
  message.ackFailed(e);
227
239
  this.remove(message);
240
+ })
241
+ .finally(() => {
242
+ message.subSpans.modAckEnd();
228
243
  });
229
244
  }
230
245
  else {
231
246
  message.modAck(deadline);
247
+ message.subSpans.modAckStart(deadlineDuration, false);
232
248
  }
233
249
  }
234
250
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"lease-manager.js","sourceRoot":"","sources":["../../src/lease-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lease-manager.js","sourceRoot":"","sources":["../../src/lease-manager.ts"],"names":[],"mappings":"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"}
@@ -18,11 +18,16 @@ import defer = require('p-defer');
18
18
  import { ExponentialRetry } from './exponential-retry';
19
19
  import { AckResponse, Message, Subscriber } from './subscriber';
20
20
  import { DebugMessage } from './debug';
21
+ import * as tracing from './telemetry-tracing';
22
+ export interface ReducedMessage {
23
+ ackId: string;
24
+ tracingSpan?: tracing.Span;
25
+ }
21
26
  /**
22
27
  * @private
23
28
  */
24
29
  export interface QueuedMessage {
25
- ackId: string;
30
+ message: ReducedMessage;
26
31
  deadline?: number;
27
32
  responsePromise?: defer.DeferredPromise<void>;
28
33
  retryCount: number;
@@ -108,10 +113,10 @@ export declare abstract class MessageQueue {
108
113
  * Adds a message to the queue.
109
114
  *
110
115
  * @param {Message} message The message to add.
111
- * @param {number} [deadline] The deadline.
116
+ * @param {number} [deadline] The deadline in seconds.
112
117
  * @private
113
118
  */
114
- add({ ackId }: Message, deadline?: number): Promise<void>;
119
+ add(message: Message, deadline?: number): Promise<void>;
115
120
  /**
116
121
  * Retry handler for acks/modacks that have transient failures. Unless
117
122
  * it's passed the final deadline, we will just re-queue it for sending.
@@ -24,6 +24,7 @@ const subscriber_1 = require("./subscriber");
24
24
  const temporal_1 = require("./temporal");
25
25
  const util_1 = require("./util");
26
26
  const debug_1 = require("./debug");
27
+ const tracing = require("./telemetry-tracing");
27
28
  /**
28
29
  * Error class used to signal a batch failure.
29
30
  *
@@ -115,10 +116,10 @@ class MessageQueue {
115
116
  * Adds a message to the queue.
116
117
  *
117
118
  * @param {Message} message The message to add.
118
- * @param {number} [deadline] The deadline.
119
+ * @param {number} [deadline] The deadline in seconds.
119
120
  * @private
120
121
  */
121
- add({ ackId }, deadline) {
122
+ add(message, deadline) {
122
123
  if (this._closed) {
123
124
  if (this._subscriber.isExactlyOnceDelivery) {
124
125
  throw new subscriber_1.AckError(subscriber_1.AckResponses.Invalid, 'Subscriber closed');
@@ -130,7 +131,10 @@ class MessageQueue {
130
131
  const { maxMessages, maxMilliseconds } = this._options;
131
132
  const responsePromise = defer();
132
133
  this._requests.push({
133
- ackId,
134
+ message: {
135
+ ackId: message.ackId,
136
+ tracingSpan: message.parentSpan,
137
+ },
134
138
  deadline,
135
139
  responsePromise,
136
140
  retryCount: 0,
@@ -288,9 +292,9 @@ class MessageQueue {
288
292
  : undefined;
289
293
  const codes = (0, ack_metadata_1.processAckErrorInfo)(rpcError);
290
294
  for (const m of batch) {
291
- if (codes.has(m.ackId)) {
295
+ if (codes.has(m.message.ackId)) {
292
296
  // This ack has an ErrorInfo entry, so use that to route it.
293
- const code = codes.get(m.ackId);
297
+ const code = codes.get(m.message.ackId);
294
298
  if (code.transient) {
295
299
  // Transient errors get retried.
296
300
  toRetry.push(m);
@@ -319,7 +323,7 @@ class MessageQueue {
319
323
  // stream message if an unknown error happens during ack.
320
324
  const others = toError.get(subscriber_1.AckResponses.Other);
321
325
  if (others === null || others === void 0 ? void 0 : others.length) {
322
- const otherIds = others.map(e => e.ackId);
326
+ const otherIds = others.map(e => e.message.ackId);
323
327
  const debugMsg = new BatchError(rpcError, otherIds, operation);
324
328
  this._subscriber.emit('debug', debugMsg);
325
329
  }
@@ -379,13 +383,15 @@ class AckQueue extends MessageQueue {
379
383
  * @return {Promise}
380
384
  */
381
385
  async _sendBatch(batch) {
386
+ const responseSpan = tracing.PubsubSpans.createAckRpcSpan(batch.map(b => b.message.tracingSpan), this._subscriber.name, 'AckQueue._sendBatch');
382
387
  const client = await this._subscriber.getClient();
383
- const ackIds = batch.map(({ ackId }) => ackId);
388
+ const ackIds = batch.map(({ message }) => message.ackId);
384
389
  const reqOpts = { subscription: this._subscriber.name, ackIds };
385
390
  try {
386
391
  await client.acknowledge(reqOpts, this.getCallOptions());
387
392
  // It's okay if these pass through since they're successful anyway.
388
393
  this.handleAckSuccesses(batch);
394
+ responseSpan === null || responseSpan === void 0 ? void 0 : responseSpan.end();
389
395
  return [];
390
396
  }
391
397
  catch (e) {
@@ -414,6 +420,7 @@ class AckQueue extends MessageQueue {
414
420
  var _a;
415
421
  (_a = m.responsePromise) === null || _a === void 0 ? void 0 : _a.reject(exc);
416
422
  });
423
+ responseSpan === null || responseSpan === void 0 ? void 0 : responseSpan.end();
417
424
  return [];
418
425
  }
419
426
  }
@@ -450,11 +457,13 @@ class ModAckQueue extends MessageQueue {
450
457
  const callOptions = this.getCallOptions();
451
458
  const modAckRequests = Object.keys(modAckTable).map(async (deadline) => {
452
459
  const messages = modAckTable[deadline];
453
- const ackIds = messages.map(m => m.ackId);
460
+ const ackIds = messages.map(m => m.message.ackId);
454
461
  const ackDeadlineSeconds = Number(deadline);
455
462
  const reqOpts = { subscription, ackIds, ackDeadlineSeconds };
463
+ const responseSpan = tracing.PubsubSpans.createModackRpcSpan(messages.map(b => b.message.tracingSpan), this._subscriber.name, ackDeadlineSeconds === 0 ? 'nack' : 'modack', 'ModAckQueue._sendBatch', temporal_1.Duration.from({ seconds: ackDeadlineSeconds }));
456
464
  try {
457
465
  await client.modifyAckDeadline(reqOpts, callOptions);
466
+ responseSpan === null || responseSpan === void 0 ? void 0 : responseSpan.end();
458
467
  // It's okay if these pass through since they're successful anyway.
459
468
  this.handleAckSuccesses(messages);
460
469
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"message-queues.js","sourceRoot":"","sources":["../../src/message-queues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-queues.js","sourceRoot":"","sources":["../../src/message-queues.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.FlowControlledPublisher = void 0;
19
19
  const pubsub_message_1 = require("./pubsub-message");
20
+ const tracing = require("../telemetry-tracing");
20
21
  /**
21
22
  * Encapsulates a series of message publishes from a rapid loop (or similar
22
23
  * circumstance).
@@ -69,7 +70,11 @@ class FlowControlledPublisher {
69
70
  * ```
70
71
  */
71
72
  publish(message) {
73
+ const flowSpan = message.parentSpan
74
+ ? tracing.PubsubSpans.createPublishFlowSpan(message)
75
+ : undefined;
72
76
  const doPublish = () => {
77
+ flowSpan === null || flowSpan === void 0 ? void 0 : flowSpan.end();
73
78
  this.doPublish(message);
74
79
  };
75
80
  const size = (0, pubsub_message_1.calculateMessageSize)(message);
@@ -1 +1 @@
1
- {"version":3,"file":"flow-publisher.js","sourceRoot":"","sources":["../../../src/publisher/flow-publisher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAIH,qDAAqE;AAErE;;;;;;;;;GASG;AACH,MAAa,uBAAuB;IAKlC,YAAY,SAAoB;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,OAAsB;QAChC,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,OAAsB;QAC5B,MAAM,SAAS,GAAG,GAAG,EAAE;YACrB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,IAAA,qCAAoB,EAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACvD,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClD,SAAS,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,OAAsB;QAC/B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAEO,SAAS,CAAC,OAAsB;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEvD,0CAA0C;QAC1C,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7B,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAExC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,GAAG;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAhHD,0DAgHC"}
1
+ {"version":3,"file":"flow-publisher.js","sourceRoot":"","sources":["../../../src/publisher/flow-publisher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAIH,qDAAqE;AACrE,gDAAgD;AAEhD;;;;;;;;;GASG;AACH,MAAa,uBAAuB;IAKlC,YAAY,SAAoB;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,OAAsB;QAChC,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,OAAsB;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU;YACjC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,OAAO,CAAC;YACpD,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,SAAS,GAAG,GAAG,EAAE;YACrB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,IAAA,qCAAoB,EAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACvD,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClD,SAAS,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,OAAsB;QAC/B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAEO,SAAS,CAAC,OAAsB;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEvD,0CAA0C;QAC1C,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAA,qCAAoB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7B,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAExC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,GAAG;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AApHD,0DAoHC"}
@@ -28,6 +28,7 @@ export interface PublishOptions {
28
28
  flowControlOptions?: FlowControlOptions;
29
29
  gaxOpts?: CallOptions;
30
30
  messageOrdering?: boolean;
31
+ /** @deprecated Unset and use context propagation. */
31
32
  enableOpenTelemetryTracing?: boolean;
32
33
  }
33
34
  /**
@@ -134,11 +135,11 @@ export declare class Publisher {
134
135
  */
135
136
  setOptions(options?: PublishOptions): void;
136
137
  /**
137
- * Constructs an OpenTelemetry span
138
+ * Finds or constructs an telemetry publish/parent span for a message.
138
139
  *
139
140
  * @private
140
141
  *
141
142
  * @param {PubsubMessage} message The message to create a span for
142
143
  */
143
- constructSpan(message: PubsubMessage): Span | undefined;
144
+ getParentSpan(message: PubsubMessage, caller: string): Span | undefined;
144
145
  }
@@ -17,11 +17,10 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.Publisher = exports.flowControlDefaults = exports.BATCH_LIMITS = void 0;
19
19
  const extend = require("extend");
20
- const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
21
20
  const api_1 = require("@opentelemetry/api");
22
21
  const message_queues_1 = require("./message-queues");
23
22
  const default_options_1 = require("../default-options");
24
- const opentelemetry_tracing_1 = require("../opentelemetry-tracing");
23
+ const tracing = require("../telemetry-tracing");
25
24
  const flow_control_1 = require("./flow-control");
26
25
  const util_1 = require("../util");
27
26
  /**
@@ -108,24 +107,21 @@ class Publisher {
108
107
  \nInvalid value of type "${typeof value}" provided for "${key}".`);
109
108
  }
110
109
  }
111
- const span = this.constructSpan(message);
110
+ // Ensure that there's a parent span for subsequent publishes
111
+ // to hang off of.
112
+ this.getParentSpan(message, 'Publisher.publishMessage');
112
113
  if (!message.orderingKey) {
113
114
  this.queue.add(message, callback);
114
- if (span) {
115
- span.end();
116
- }
117
- return;
118
- }
119
- const key = message.orderingKey;
120
- if (!this.orderedQueues.has(key)) {
121
- const queue = new message_queues_1.OrderedQueue(this, key);
122
- this.orderedQueues.set(key, queue);
123
- queue.once('drain', () => this.orderedQueues.delete(key));
124
115
  }
125
- const queue = this.orderedQueues.get(key);
126
- queue.add(message, callback);
127
- if (span) {
128
- span.end();
116
+ else {
117
+ const key = message.orderingKey;
118
+ if (!this.orderedQueues.has(key)) {
119
+ const queue = new message_queues_1.OrderedQueue(this, key);
120
+ this.orderedQueues.set(key, queue);
121
+ queue.once('drain', () => this.orderedQueues.delete(key));
122
+ }
123
+ const queue = this.orderedQueues.get(key);
124
+ queue.add(message, callback);
129
125
  }
130
126
  }
131
127
  /**
@@ -204,42 +200,24 @@ class Publisher {
204
200
  this.flowControl.setOptions(this.settings.flowControlOptions);
205
201
  }
206
202
  /**
207
- * Constructs an OpenTelemetry span
203
+ * Finds or constructs an telemetry publish/parent span for a message.
208
204
  *
209
205
  * @private
210
206
  *
211
207
  * @param {PubsubMessage} message The message to create a span for
212
208
  */
213
- constructSpan(message) {
214
- var _a;
215
- if (!this.settings.enableOpenTelemetryTracing) {
209
+ getParentSpan(message, caller) {
210
+ const enabled = tracing.isEnabled(this.settings);
211
+ if (!enabled) {
216
212
  return undefined;
217
213
  }
218
- const spanAttributes = {
219
- // Add Opentelemetry semantic convention attributes to the span, based on:
220
- // https://github.com/open-telemetry/opentelemetry-specification/blob/v1.1.0/specification/trace/semantic_conventions/messaging.md
221
- [semantic_conventions_1.SemanticAttributes.MESSAGING_TEMP_DESTINATION]: false,
222
- [semantic_conventions_1.SemanticAttributes.MESSAGING_SYSTEM]: 'pubsub',
223
- [semantic_conventions_1.SemanticAttributes.MESSAGING_OPERATION]: 'send',
224
- [semantic_conventions_1.SemanticAttributes.MESSAGING_DESTINATION]: this.topic.name,
225
- [semantic_conventions_1.SemanticAttributes.MESSAGING_DESTINATION_KIND]: 'topic',
226
- [semantic_conventions_1.SemanticAttributes.MESSAGING_MESSAGE_ID]: message.messageId,
227
- [semantic_conventions_1.SemanticAttributes.MESSAGING_PROTOCOL]: 'pubsub',
228
- [semantic_conventions_1.SemanticAttributes.MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES]: (_a = message.data) === null || _a === void 0 ? void 0 : _a.length,
229
- 'messaging.pubsub.ordering_key': message.orderingKey,
230
- };
231
- const span = (0, opentelemetry_tracing_1.createSpan)(`${this.topic.name} send`, api_1.SpanKind.PRODUCER, spanAttributes);
232
- // If the span's context is valid we should pass the span context special attribute
233
- if ((0, api_1.isSpanContextValid)(span.spanContext())) {
234
- if (message.attributes &&
235
- message.attributes['googclient_OpenTelemetrySpanContext']) {
236
- console.warn('googclient_OpenTelemetrySpanContext key set as message attribute, but will be overridden.');
237
- }
238
- if (!message.attributes) {
239
- message.attributes = {};
240
- }
241
- message.attributes['googclient_OpenTelemetrySpanContext'] =
242
- JSON.stringify(span.spanContext());
214
+ if (message.parentSpan) {
215
+ return message.parentSpan;
216
+ }
217
+ const span = tracing.PubsubSpans.createPublisherSpan(message, this.topic.name, caller);
218
+ // If the span's context is valid we should inject the propagation trace context.
219
+ if (span && (0, api_1.isSpanContextValid)(span.spanContext())) {
220
+ tracing.injectSpan(span, message, enabled);
243
221
  }
244
222
  return span;
245
223
  }