@nsshunt/stsappframework 3.0.17 → 3.0.19
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.
|
@@ -58,47 +58,72 @@ class IMKafkaManager {
|
|
|
58
58
|
console.error(`${_logPrefix}#Terminate: Error: [${error}]`.red);
|
|
59
59
|
}
|
|
60
60
|
};
|
|
61
|
+
async #OutputLogsToKafkaTopic(topic, logMessages) {
|
|
62
|
+
if (!this.#topics[topic]) {
|
|
63
|
+
console.log(`Setting up kafka topic: [${topic}] Starting`.yellow);
|
|
64
|
+
this.#topics[topic] = true;
|
|
65
|
+
const result = await this.#km.CreateTopic(topic, 1);
|
|
66
|
+
if (result) {
|
|
67
|
+
console.log(`Setting up kafka topic: [${topic}] Completed`.yellow);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
console.log(`Setting up kafka topic: [${topic}] Completed - topic already exists`.cyan);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
const messages = [];
|
|
74
|
+
logMessages.forEach((m) => {
|
|
75
|
+
messages.push({ key: topic, value: m });
|
|
76
|
+
});
|
|
77
|
+
// Don't wait for these to return ...
|
|
78
|
+
if (this.#producer) {
|
|
79
|
+
this.#producer.SendMessages(topic, messages);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
61
82
|
async OutputLogs(instrumentPayload) {
|
|
62
83
|
try {
|
|
63
84
|
if (this.#shuttingDown) {
|
|
64
85
|
return false;
|
|
65
86
|
}
|
|
66
87
|
let topic = '';
|
|
67
|
-
if (instrumentPayload.context.agentName) {
|
|
68
|
-
const { agentName, threadId, asyncRunnerId } = instrumentPayload.context;
|
|
69
|
-
if (asyncRunnerId) {
|
|
70
|
-
topic = `${agentName}_${threadId}_${asyncRunnerId}`.replace(/@/g, '_');
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
topic = `${agentName}_${threadId}`.replace(/@/g, '_');
|
|
74
|
-
}
|
|
75
|
-
topic = topic.replace(/\|/g, '_');
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
const { serviceInstanceId, serviceInstanceProcessId } = instrumentPayload.context;
|
|
79
|
-
topic = (serviceInstanceId + '_' + serviceInstanceProcessId).replace(/@/g, '_');
|
|
80
|
-
}
|
|
81
|
-
if (!this.#topics[topic]) {
|
|
82
|
-
console.log(`Setting up kafka topic: [${topic}] Starting`.yellow);
|
|
83
|
-
this.#topics[topic] = true;
|
|
84
|
-
const result = await this.#km.CreateTopic(topic, 1);
|
|
85
|
-
if (result) {
|
|
86
|
-
console.log(`Setting up kafka topic: [${topic}] Completed`.yellow);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
console.log(`Setting up kafka topic: [${topic}] Completed - topic already exists`.cyan);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
88
|
if (instrumentPayload.instruments[stsinstrumentation_1.Gauge.LOGGER]) {
|
|
93
89
|
const loggerMessages = [...instrumentPayload.instruments[stsinstrumentation_1.Gauge.LOGGER].val];
|
|
94
90
|
if (loggerMessages.length > 0) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
91
|
+
if (instrumentPayload.context.agentName) {
|
|
92
|
+
// Processing agent payload
|
|
93
|
+
const { agentName, threadId, asyncRunnerId } = instrumentPayload.context;
|
|
94
|
+
topic = '';
|
|
95
|
+
if (agentName && threadId && asyncRunnerId) {
|
|
96
|
+
// Output logs for a specific asyncRunnerId
|
|
97
|
+
topic = `${agentName}_${threadId}_${asyncRunnerId}`.replace(/@/g, '_');
|
|
98
|
+
topic = topic.replace(/\|/g, '_');
|
|
99
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
100
|
+
}
|
|
101
|
+
if (agentName && threadId) {
|
|
102
|
+
// Output logs for a specific thread (worker) within an agent
|
|
103
|
+
topic = `${agentName}_${threadId}`.replace(/@/g, '_');
|
|
104
|
+
topic = topic.replace(/\|/g, '_');
|
|
105
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
106
|
+
}
|
|
107
|
+
if (agentName) {
|
|
108
|
+
// Output logs for a specific thread (worker) within an agent
|
|
109
|
+
topic = `${agentName}`.replace(/@/g, '_');
|
|
110
|
+
topic = topic.replace(/\|/g, '_');
|
|
111
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// Processing service payload
|
|
116
|
+
const { serviceInstanceId, serviceInstanceProcessId, pid, ppid } = instrumentPayload.context;
|
|
117
|
+
if (serviceInstanceId && serviceInstanceProcessId && pid && ppid) {
|
|
118
|
+
// Output to the specific thread within an instance
|
|
119
|
+
topic = (serviceInstanceId + '_' + serviceInstanceProcessId).replace(/@/g, '_');
|
|
120
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
121
|
+
if (pid === ppid) {
|
|
122
|
+
// Output only to the main thread on the service, i.e. this is for O/A service logging
|
|
123
|
+
topic = serviceInstanceId.replace(/@/g, '_');
|
|
124
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
125
|
+
}
|
|
126
|
+
}
|
|
102
127
|
}
|
|
103
128
|
}
|
|
104
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IMKafkaManager.js","sourceRoot":"","sources":["../../src/kafka/IMKafkaManager.ts"],"names":[],"mappings":";;;AAEA,oEAAmD;AAEnD,iDAAkE;AAKlE,kDAA6C;AAC7C,MAAM,QAAQ,GAAG,IAAA,oBAAQ,GAAE,CAAA;AAE3B,MAAM,UAAU,GAAG,iBAAiB,CAAA;AAEpC,uDAAuD;AACvD,MAAa,cAAc;IACvB,aAAa,GAAY,KAAK,CAAC;IAC/B,SAAS,GAAyB,IAAI,CAAC;IAEvC,GAAG,CAAe;IAClB,OAAO,GAAe,EAAG,CAAA;IAEzB;QAEI,iBAAiB;QAEjB,MAAM,GAAG,GAAwB;YAC7B,QAAQ,EAAE,QAAQ,CAAC,cAAc;YACjC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC;YAC1C,SAAS,EAAE,QAAQ,CAAC,gBAAgB;YACpC,YAAY,EAAE,QAAQ,CAAC,mBAAmB;YAC1C,iBAAiB,EAAE,QAAQ,CAAC,wBAAwB;YACpD,QAAQ,EAAE,QAAQ,CAAC,eAAe;YAClC,MAAM,EAAE,QAAQ,CAAC,aAAa;YAC9B,cAAc,EAAE,QAAQ,CAAC,qBAAqB;SACjD,CAAA;QACD,IAAI,QAAQ,CAAC,aAAa,EAAE;YACxB,GAAG,CAAC,GAAG,GAAG;gBACN,kBAAkB,EAAE,QAAQ,CAAC,4BAA4B;gBACzD,MAAM,EAAE,QAAQ,CAAC,gBAAgB;gBACjC,YAAY,EAAE,QAAQ,CAAC,kBAAkB;gBACzC,OAAO,EAAE,QAAQ,CAAC,iBAAiB;aACtC,CAAA;SACJ;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,2BAAY,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,GAAG,CAAC;IACpB,CAAC;IAED,KAAK,GAAG,KAAK,IAAmB,EAAE;QAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC3C,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;IAClC,CAAC,CAAA;IAED,SAAS,GAAG,KAAK,IAAmB,EAAE;QAClC,IAAI;YACA,IAAI,IAAI,CAAC,aAAa,EAAE;gBACpB,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,MAAM,CAAC,CAAC;aACvF;iBAAM;gBACH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBACzC,IAAI,IAAI,CAAC,SAAS,EAAE;oBAChB,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;iBACrC;aACJ;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,GAAG,UAAU,uBAAuB,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;SACnE;IACL,CAAC,CAAA;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"IMKafkaManager.js","sourceRoot":"","sources":["../../src/kafka/IMKafkaManager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -71,6 +71,29 @@ export class IMKafkaManager {
|
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
async #OutputLogsToKafkaTopic(topic: string, logMessages: string[]) {
|
|
75
|
+
if (!this.#topics[topic]) {
|
|
76
|
+
console.log(`Setting up kafka topic: [${topic}] Starting`.yellow);
|
|
77
|
+
this.#topics[topic] = true;
|
|
78
|
+
const result = await this.#km.CreateTopic(topic, 1);
|
|
79
|
+
if (result) {
|
|
80
|
+
console.log(`Setting up kafka topic: [${topic}] Completed`.yellow);
|
|
81
|
+
} else {
|
|
82
|
+
console.log(`Setting up kafka topic: [${topic}] Completed - topic already exists`.cyan);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
const messages: JSONObject[] = [ ];
|
|
87
|
+
logMessages.forEach((m) => {
|
|
88
|
+
messages.push({key: topic, value: m})
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
// Don't wait for these to return ...
|
|
92
|
+
if (this.#producer) {
|
|
93
|
+
this.#producer.SendMessages(topic, messages as any);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
74
97
|
async OutputLogs(instrumentPayload: InstrumentPayload): Promise<boolean> {
|
|
75
98
|
try {
|
|
76
99
|
if (this.#shuttingDown) {
|
|
@@ -78,44 +101,46 @@ export class IMKafkaManager {
|
|
|
78
101
|
}
|
|
79
102
|
|
|
80
103
|
let topic: string = '';
|
|
81
|
-
|
|
82
|
-
if (instrumentPayload.context.agentName) {
|
|
83
|
-
const { agentName, threadId, asyncRunnerId } = instrumentPayload.context;
|
|
84
|
-
|
|
85
|
-
if (asyncRunnerId) {
|
|
86
|
-
topic = `${agentName}_${threadId}_${asyncRunnerId}`.replace(/@/g, '_');
|
|
87
|
-
} else {
|
|
88
|
-
topic = `${agentName}_${threadId}`.replace(/@/g, '_');
|
|
89
|
-
}
|
|
90
|
-
topic = topic.replace(/\|/g, '_')
|
|
91
|
-
} else {
|
|
92
|
-
const { serviceInstanceId, serviceInstanceProcessId } = instrumentPayload.context;
|
|
93
|
-
topic = (serviceInstanceId + '_' + serviceInstanceProcessId).replace(/@/g, '_');
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
if (!this.#topics[topic]) {
|
|
97
|
-
console.log(`Setting up kafka topic: [${topic}] Starting`.yellow);
|
|
98
|
-
this.#topics[topic] = true;
|
|
99
|
-
const result = await this.#km.CreateTopic(topic, 1);
|
|
100
|
-
if (result) {
|
|
101
|
-
console.log(`Setting up kafka topic: [${topic}] Completed`.yellow);
|
|
102
|
-
} else {
|
|
103
|
-
console.log(`Setting up kafka topic: [${topic}] Completed - topic already exists`.cyan);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
104
|
if (instrumentPayload.instruments[Gauge.LOGGER]) {
|
|
108
|
-
const loggerMessages = [ ...instrumentPayload.instruments[Gauge.LOGGER].val as string[] ]
|
|
105
|
+
const loggerMessages = [ ...instrumentPayload.instruments[Gauge.LOGGER].val as string[] ];
|
|
109
106
|
if (loggerMessages.length > 0) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
107
|
+
if (instrumentPayload.context.agentName) {
|
|
108
|
+
// Processing agent payload
|
|
109
|
+
const { agentName, threadId, asyncRunnerId } = instrumentPayload.context;
|
|
110
|
+
|
|
111
|
+
topic = '';
|
|
112
|
+
if (agentName && threadId && asyncRunnerId) {
|
|
113
|
+
// Output logs for a specific asyncRunnerId
|
|
114
|
+
topic = `${agentName}_${threadId}_${asyncRunnerId}`.replace(/@/g, '_');
|
|
115
|
+
topic = topic.replace(/\|/g, '_');
|
|
116
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
117
|
+
}
|
|
118
|
+
if (agentName && threadId) {
|
|
119
|
+
// Output logs for a specific thread (worker) within an agent
|
|
120
|
+
topic = `${agentName}_${threadId}`.replace(/@/g, '_');
|
|
121
|
+
topic = topic.replace(/\|/g, '_');
|
|
122
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
123
|
+
}
|
|
124
|
+
if (agentName) {
|
|
125
|
+
// Output logs for a specific thread (worker) within an agent
|
|
126
|
+
topic = `${agentName}`.replace(/@/g, '_');
|
|
127
|
+
topic = topic.replace(/\|/g, '_');
|
|
128
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
129
|
+
}
|
|
130
|
+
} else {
|
|
131
|
+
// Processing service payload
|
|
132
|
+
const { serviceInstanceId, serviceInstanceProcessId, pid, ppid } = instrumentPayload.context;
|
|
133
|
+
if (serviceInstanceId && serviceInstanceProcessId && pid && ppid) {
|
|
134
|
+
// Output to the specific thread within an instance
|
|
135
|
+
topic = (serviceInstanceId + '_' + serviceInstanceProcessId).replace(/@/g, '_');
|
|
136
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
137
|
+
|
|
138
|
+
if (pid === ppid) {
|
|
139
|
+
// Output only to the main thread on the service, i.e. this is for O/A service logging
|
|
140
|
+
topic = serviceInstanceId.replace(/@/g, '_');
|
|
141
|
+
this.#OutputLogsToKafkaTopic(topic, loggerMessages); // no need to await this ...
|
|
142
|
+
}
|
|
143
|
+
}
|
|
119
144
|
}
|
|
120
145
|
}
|
|
121
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IMKafkaManager.d.ts","sourceRoot":"","sources":["../../src/kafka/IMKafkaManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,OAAO,EAAE,YAAY,EAAuB,MAAM,gBAAgB,CAAA;AAWlE,qBAAa,cAAc;;;IAiCvB,IAAI,EAAE,IAAI,YAAY,CAErB;IAED,KAAK,QAAa,QAAQ,IAAI,CAAC,CAG9B;IAED,SAAS,QAAa,QAAQ,IAAI,CAAC,CAclC;
|
|
1
|
+
{"version":3,"file":"IMKafkaManager.d.ts","sourceRoot":"","sources":["../../src/kafka/IMKafkaManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,OAAO,EAAE,YAAY,EAAuB,MAAM,gBAAgB,CAAA;AAWlE,qBAAa,cAAc;;;IAiCvB,IAAI,EAAE,IAAI,YAAY,CAErB;IAED,KAAK,QAAa,QAAQ,IAAI,CAAC,CAG9B;IAED,SAAS,QAAa,QAAQ,IAAI,CAAC,CAclC;IAyBK,UAAU,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;CAwD3E"}
|