@message-queue-toolkit/kafka 0.2.3 → 0.3.1
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.
- package/dist/AbstractKafkaConsumer.js +16 -8
- package/dist/AbstractKafkaConsumer.js.map +1 -1
- package/dist/AbstractKafkaPublisher.js +6 -5
- package/dist/AbstractKafkaPublisher.js.map +1 -1
- package/dist/AbstractKafkaService.d.ts +9 -5
- package/dist/AbstractKafkaService.js +23 -9
- package/dist/AbstractKafkaService.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -39,10 +39,12 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
39
39
|
},
|
|
40
40
|
});
|
|
41
41
|
const logDetails = { origin: this.constructor.name, groupId: this.options.groupId };
|
|
42
|
+
/* v8 ignore start */
|
|
42
43
|
this.consumer.on('consumer:group:join', (_) => this.logger.debug(logDetails, 'Consumer is joining a group'));
|
|
43
44
|
this.consumer.on('consumer:rejoin', (_) => this.logger.debug(logDetails, 'Consumer is re-joining a group after a rebalance'));
|
|
44
45
|
this.consumer.on('consumer:group:leave', (_) => this.logger.debug(logDetails, 'Consumer is leaving the group'));
|
|
45
46
|
this.consumer.on('consumer:group:rebalance', (_) => this.logger.debug(logDetails, 'Group is rebalancing'));
|
|
47
|
+
/* v8 ignore stop */
|
|
46
48
|
}
|
|
47
49
|
async init() {
|
|
48
50
|
if (this.consumerStream)
|
|
@@ -52,6 +54,12 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
52
54
|
throw new Error('At least one topic must be defined');
|
|
53
55
|
try {
|
|
54
56
|
const { handlers, ...consumeOptions } = this.options; // Handlers cannot be passed to consume method
|
|
57
|
+
// https://github.com/platformatic/kafka/blob/main/docs/consumer.md#my-consumer-is-not-receiving-any-message-when-the-application-restarts
|
|
58
|
+
await this.consumer.joinGroup({
|
|
59
|
+
sessionTimeout: consumeOptions.sessionTimeout,
|
|
60
|
+
rebalanceTimeout: consumeOptions.rebalanceTimeout,
|
|
61
|
+
heartbeatInterval: consumeOptions.heartbeatInterval,
|
|
62
|
+
});
|
|
55
63
|
this.consumerStream = await this.consumer.consume({ ...consumeOptions, topics });
|
|
56
64
|
}
|
|
57
65
|
catch (error) {
|
|
@@ -75,6 +83,7 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
75
83
|
// message.value can be undefined if the message is not JSON-serializable
|
|
76
84
|
if (!message.value)
|
|
77
85
|
return this.commitMessage(message);
|
|
86
|
+
const messageProcessingStartTimestamp = Date.now();
|
|
78
87
|
const handler = this.handlerContainer.resolveHandler(message.topic, message.value);
|
|
79
88
|
// if there is no handler for the message, we ignore it (simulating subscription)
|
|
80
89
|
if (!handler)
|
|
@@ -89,9 +98,9 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
89
98
|
message: stringValueSerializer(message.value),
|
|
90
99
|
});
|
|
91
100
|
this.handleMessageProcessed({
|
|
92
|
-
|
|
93
|
-
message: message.value,
|
|
101
|
+
message: message,
|
|
94
102
|
processingResult: { status: 'error', errorReason: 'invalidMessage' },
|
|
103
|
+
messageProcessingStartTimestamp,
|
|
95
104
|
});
|
|
96
105
|
return this.commitMessage(message);
|
|
97
106
|
}
|
|
@@ -110,16 +119,16 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
110
119
|
} while (retries < MAX_IN_MEMORY_RETRIES);
|
|
111
120
|
if (consumed) {
|
|
112
121
|
this.handleMessageProcessed({
|
|
113
|
-
|
|
114
|
-
message: validatedMessage,
|
|
122
|
+
message: message,
|
|
115
123
|
processingResult: { status: 'consumed' },
|
|
124
|
+
messageProcessingStartTimestamp,
|
|
116
125
|
});
|
|
117
126
|
}
|
|
118
127
|
else {
|
|
119
128
|
this.handleMessageProcessed({
|
|
120
|
-
|
|
121
|
-
message: validatedMessage,
|
|
129
|
+
message: message,
|
|
122
130
|
processingResult: { status: 'error', errorReason: 'handlerError' },
|
|
131
|
+
messageProcessingStartTimestamp,
|
|
123
132
|
});
|
|
124
133
|
}
|
|
125
134
|
this.transactionObservabilityManager?.stop(transactionId);
|
|
@@ -144,9 +153,8 @@ export class AbstractKafkaConsumer extends AbstractKafkaService {
|
|
|
144
153
|
await message.commit();
|
|
145
154
|
}
|
|
146
155
|
catch (error) {
|
|
147
|
-
if (error instanceof ResponseError)
|
|
156
|
+
if (error instanceof ResponseError)
|
|
148
157
|
return this.handleResponseErrorOnCommit(error);
|
|
149
|
-
}
|
|
150
158
|
throw error;
|
|
151
159
|
}
|
|
152
160
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractKafkaConsumer.js","sourceRoot":"","sources":["../lib/AbstractKafkaConsumer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EACL,aAAa,EAEb,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAEL,QAAQ,EAIR,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oBAAoB,EAAyB,MAAM,2BAA2B,CAAA;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AAIpF,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAiBtE,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,kBAAkB;IAClB,iBAAiB;IACjB,qBAAqB;CACtB,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAE/B,MAAM,OAAgB,qBAGpB,SAAQ,oBAAwF;IAC/E,QAAQ,CAA0C;IAC3D,cAAc,CAAiD;IAEtD,+BAA+B,CAAiC;IAChE,gBAAgB,CAAuD;IACvE,gBAAgB,CAAkB;IAEnD,YACE,YAAuC,EACvC,OAA6D,EAC7D,gBAAkC;QAElC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,IAAI,CAAC,+BAA+B,GAAG,YAAY,CAAC,+BAA+B,CAAA;QACnF,IAAI,CAAC,gBAAgB,GAAG,IAAI,qBAAqB,CAC/C,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,gBAAgB,CACzB,CAAA;QACD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QAExC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC3B,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;YACrB,GAAG,IAAI,CAAC,OAAO;YACf,UAAU,EAAE,KAAK,EAAE,4BAA4B;YAC/C,aAAa,EAAE;gBACb,GAAG,EAAE,kBAAkB;gBACvB,KAAK,EAAE,oBAAoB;gBAC3B,SAAS,EAAE,kBAAkB;gBAC7B,WAAW,EAAE,kBAAkB;aAChC;SACF,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QACnF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,6BAA6B,CAAC,CAC7D,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,kDAAkD,CAAC,CAClF,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,sBAAsB,EAAE,CAAC,CAAC,EAAE,EAAE,CAC7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,+BAA+B,CAAC,CAC/D,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,0BAA0B,EAAE,CAAC,CAAC,EAAE,EAAE,CACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,sBAAsB,CAAC,CACtD,CAAA;
|
|
1
|
+
{"version":3,"file":"AbstractKafkaConsumer.js","sourceRoot":"","sources":["../lib/AbstractKafkaConsumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,6 +54,7 @@ export class AbstractKafkaPublisher extends AbstractKafkaService {
|
|
|
54
54
|
this.isInitiated = false;
|
|
55
55
|
}
|
|
56
56
|
async publish(topic, message, requestContext, options) {
|
|
57
|
+
const messageProcessingStartTimestamp = Date.now();
|
|
57
58
|
const schemaResult = this.schemaContainers[topic]?.resolveSchema(message);
|
|
58
59
|
if (!schemaResult)
|
|
59
60
|
throw new Error(`Message schemas not found for topic: ${topic}`);
|
|
@@ -66,14 +67,14 @@ export class AbstractKafkaPublisher extends AbstractKafkaService {
|
|
|
66
67
|
...options?.headers,
|
|
67
68
|
[this.resolveHeaderRequestIdField()]: requestContext?.reqId ?? '',
|
|
68
69
|
};
|
|
69
|
-
|
|
70
|
-
await this.producer
|
|
71
|
-
messages: [
|
|
70
|
+
const kafkaMessage = { ...options, topic, value: parsedMessage, headers };
|
|
71
|
+
await this.producer?.send({
|
|
72
|
+
messages: [kafkaMessage],
|
|
72
73
|
});
|
|
73
74
|
this.handleMessageProcessed({
|
|
74
|
-
message:
|
|
75
|
+
message: kafkaMessage,
|
|
75
76
|
processingResult: { status: 'published' },
|
|
76
|
-
|
|
77
|
+
messageProcessingStartTimestamp,
|
|
77
78
|
});
|
|
78
79
|
}
|
|
79
80
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractKafkaPublisher.js","sourceRoot":"","sources":["../lib/AbstractKafkaPublisher.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AbstractKafkaPublisher.js","sourceRoot":"","sources":["../lib/AbstractKafkaPublisher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type CommonLogger, type ErrorReporter } from '@lokalise/node-core';
|
|
2
|
-
import
|
|
3
|
-
import type
|
|
2
|
+
import type { MakeRequired, MayOmit } from '@lokalise/universal-ts-utils/node';
|
|
3
|
+
import { type HandlerSpy, type HandlerSpyParams, type MessageMetricsManager, type MessageProcessingResult, type PublicHandlerSpy } from '@message-queue-toolkit/core';
|
|
4
|
+
import type { BaseOptions, Message } from '@platformatic/kafka';
|
|
4
5
|
import type { KafkaConfig, KafkaDependencies, SupportedMessageValues, TopicConfig } from './types.ts';
|
|
5
6
|
export type BaseKafkaOptions = {
|
|
6
7
|
kafka: KafkaConfig;
|
|
@@ -15,10 +16,12 @@ export type BaseKafkaOptions = {
|
|
|
15
16
|
handlerSpy?: HandlerSpy<object> | HandlerSpyParams | boolean;
|
|
16
17
|
logMessages?: boolean;
|
|
17
18
|
} & Omit<BaseOptions, keyof KafkaConfig>;
|
|
19
|
+
type ProcessedMessage = MayOmit<Pick<Message<string, object, string, string>, 'topic' | 'value' | 'timestamp'>, 'timestamp'>;
|
|
18
20
|
export declare abstract class AbstractKafkaService<TopicsConfig extends TopicConfig[], KafkaOptions extends BaseKafkaOptions> {
|
|
19
21
|
protected readonly errorReporter: ErrorReporter;
|
|
20
22
|
protected readonly logger: CommonLogger;
|
|
21
|
-
protected readonly
|
|
23
|
+
protected readonly messageMetricsManager?: MessageMetricsManager<SupportedMessageValues<TopicsConfig>>;
|
|
24
|
+
protected readonly options: MakeRequired<KafkaOptions, 'messageIdField'>;
|
|
22
25
|
protected readonly _handlerSpy?: HandlerSpy<SupportedMessageValues<TopicsConfig>>;
|
|
23
26
|
constructor(dependencies: KafkaDependencies, options: KafkaOptions);
|
|
24
27
|
abstract init(): Promise<void>;
|
|
@@ -28,9 +31,10 @@ export declare abstract class AbstractKafkaService<TopicsConfig extends TopicCon
|
|
|
28
31
|
protected resolveMessageId(message: SupportedMessageValues<TopicsConfig>): string | undefined;
|
|
29
32
|
protected resolveHeaderRequestIdField(): string;
|
|
30
33
|
protected handleMessageProcessed(params: {
|
|
31
|
-
message:
|
|
34
|
+
message: ProcessedMessage;
|
|
32
35
|
processingResult: MessageProcessingResult;
|
|
33
|
-
|
|
36
|
+
messageProcessingStartTimestamp: number;
|
|
34
37
|
}): void;
|
|
35
38
|
protected handlerError(error: unknown, context?: Record<string, unknown>): void;
|
|
36
39
|
}
|
|
40
|
+
export {};
|
|
@@ -4,12 +4,14 @@ import { resolveHandlerSpy, } from '@message-queue-toolkit/core';
|
|
|
4
4
|
export class AbstractKafkaService {
|
|
5
5
|
errorReporter;
|
|
6
6
|
logger;
|
|
7
|
+
messageMetricsManager;
|
|
7
8
|
options;
|
|
8
9
|
_handlerSpy;
|
|
9
10
|
constructor(dependencies, options) {
|
|
10
11
|
this.logger = dependencies.logger;
|
|
11
12
|
this.errorReporter = dependencies.errorReporter;
|
|
12
|
-
this.
|
|
13
|
+
this.messageMetricsManager = dependencies.messageMetricsManager;
|
|
14
|
+
this.options = { ...options, messageIdField: options.messageIdField ?? 'id' };
|
|
13
15
|
this._handlerSpy = resolveHandlerSpy(options);
|
|
14
16
|
}
|
|
15
17
|
get handlerSpy() {
|
|
@@ -23,26 +25,38 @@ export class AbstractKafkaService {
|
|
|
23
25
|
return message[this.options.messageTypeField];
|
|
24
26
|
}
|
|
25
27
|
resolveMessageId(message) {
|
|
26
|
-
|
|
27
|
-
return undefined;
|
|
28
|
+
// @ts-expect-error
|
|
28
29
|
return message[this.options.messageIdField];
|
|
29
30
|
}
|
|
30
31
|
resolveHeaderRequestIdField() {
|
|
31
32
|
return this.options.headerRequestIdField ?? 'x-request-id';
|
|
32
33
|
}
|
|
33
34
|
handleMessageProcessed(params) {
|
|
34
|
-
const { message, processingResult
|
|
35
|
-
const messageId = this.resolveMessageId(message);
|
|
36
|
-
this.
|
|
35
|
+
const { message, processingResult } = params;
|
|
36
|
+
const messageId = this.resolveMessageId(message.value);
|
|
37
|
+
const messageType = this.resolveMessageType(message.value);
|
|
38
|
+
this._handlerSpy?.addProcessedMessage({ message: message.value, processingResult }, messageId);
|
|
37
39
|
if (this.options.logMessages) {
|
|
38
40
|
this.logger.debug({
|
|
39
|
-
message: stringValueSerializer(message),
|
|
40
|
-
topic,
|
|
41
|
+
message: stringValueSerializer(message.value),
|
|
42
|
+
topic: message.topic,
|
|
41
43
|
processingResult,
|
|
42
44
|
messageId,
|
|
43
|
-
messageType
|
|
45
|
+
messageType,
|
|
44
46
|
}, `Finished processing message ${messageId}`);
|
|
45
47
|
}
|
|
48
|
+
if (this.messageMetricsManager) {
|
|
49
|
+
this.messageMetricsManager.registerProcessedMessage({
|
|
50
|
+
message: message.value,
|
|
51
|
+
processingResult,
|
|
52
|
+
queueName: message.topic,
|
|
53
|
+
messageId: messageId ?? 'unknown',
|
|
54
|
+
messageType: messageType ?? 'unknown',
|
|
55
|
+
messageTimestamp: message.timestamp ? Number(message.timestamp) : undefined,
|
|
56
|
+
messageProcessingStartTimestamp: params.messageProcessingStartTimestamp,
|
|
57
|
+
messageProcessingEndTimestamp: Date.now(),
|
|
58
|
+
});
|
|
59
|
+
}
|
|
46
60
|
}
|
|
47
61
|
handlerError(error, context = {}) {
|
|
48
62
|
this.logger.error({ ...resolveGlobalErrorLogObject(error), ...context });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractKafkaService.js","sourceRoot":"","sources":["../lib/AbstractKafkaService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjC,OAAO,EAGL,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"AbstractKafkaService.js","sourceRoot":"","sources":["../lib/AbstractKafkaService.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { QueueDependencies } from '@message-queue-toolkit/core';
|
|
|
2
2
|
import type { ConnectionOptions } from '@platformatic/kafka';
|
|
3
3
|
import type { ZodSchema } from 'zod';
|
|
4
4
|
import type z from 'zod/v3';
|
|
5
|
-
export type KafkaDependencies =
|
|
5
|
+
export type KafkaDependencies = QueueDependencies;
|
|
6
6
|
export type KafkaConfig = {
|
|
7
7
|
bootstrapBrokers: string[];
|
|
8
8
|
clientId: string;
|