Skip to content

Commit f13861a

Browse files
authored
tracing: add support for @confluentinc/kafka-javascript (#5489)
1 parent d6df5c1 commit f13861a

File tree

25 files changed

+1326
-26
lines changed

25 files changed

+1326
-26
lines changed

.github/workflows/plugins.yml

+41
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,47 @@ jobs:
245245
- run: yarn test:plugins:ci
246246
- uses: codecov/codecov-action@ad3126e916f78f00edff4ed0317cf185271ccc2d # v5.4.2
247247

248+
confluentinc-kafka-javascript:
249+
strategy:
250+
matrix:
251+
# using node versions matrix since this plugin testing fails due to install differences between node versions
252+
node-version: ['18', '20', '22']
253+
runs-on: ubuntu-latest
254+
services:
255+
kafka:
256+
image: apache/kafka-native:3.8.0-rc2
257+
env:
258+
KAFKA_PROCESS_ROLES: broker,controller
259+
KAFKA_NODE_ID: '1'
260+
KAFKA_LISTENERS: PLAINTEXT://:9092,CONTROLLER://:9093
261+
KAFKA_CONTROLLER_QUORUM_VOTERS: 1@127.0.0.1:9093
262+
KAFKA_CONTROLLER_LISTENER_NAMES: CONTROLLER
263+
KAFKA_CLUSTER_ID: r4zt_wrqTRuT7W2NJsB_GA
264+
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://127.0.0.1:9092
265+
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
266+
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
267+
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: '1'
268+
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: '0'
269+
ports:
270+
- 9092:9092
271+
- 9093:9093
272+
env:
273+
PLUGINS: confluentinc-kafka-javascript
274+
SERVICES: kafka
275+
steps:
276+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
277+
- uses: ./.github/actions/testagent/start
278+
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
279+
with:
280+
node-version: ${{ matrix.node-version }}
281+
- uses: ./.github/actions/install
282+
- run: yarn test:plugins:ci
283+
- if: always()
284+
uses: ./.github/actions/testagent/logs
285+
with:
286+
suffix: plugins-${{ github.job }}-${{ matrix.node-version }}
287+
- uses: codecov/codecov-action@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v5.3.1
288+
248289
cookie-parser:
249290
runs-on: ubuntu-latest
250291
env:

.github/workflows/system-tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
uses: DataDog/system-tests/.github/workflows/compute-workflow-parameters.yml@main
3232
with:
3333
library: nodejs
34-
scenarios_groups: essentials,appsec_rasp,debugger
34+
scenarios_groups: essentials,appsec_rasp,debugger,integrations
3535

3636
system-tests:
3737
runs-on: ${{ contains(fromJSON('["CROSSED_TRACING_LIBRARIES", "INTEGRATIONS"]'), matrix.scenario) && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}

docs/API.md

+2
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ tracer.use('pg', {
3030
<h5 id="aws-sdk-config"></h5>
3131
<h5 id="azure-functions"></h5>
3232
<h5 id="bunyan"></h5>
33+
<h5 id="confluentinc-kafka-javascript"></h5>
3334
<h5 id="couchbase"></h5>
3435
<h5 id="cucumber"></h5>
3536
<h5 id="dns"></h5>
@@ -111,6 +112,7 @@ tracer.use('pg', {
111112
* [couchbase](./interfaces/export_.plugins.couchbase.html)
112113
* [cucumber](./interfaces/export_.plugins.cucumber.html)
113114
* [bunyan](./interfaces/export_.plugins.bunyan.html)
115+
* [confluentinc-kafka-javascript](./interfaces/export_.plugins.confluentinc_kafka_javascript.html)
114116
* [cassandra-driver](./interfaces/export_.plugins.cassandra_driver.html)
115117
* [connect](./interfaces/export_.plugins.connect.html)
116118
* [dns](./interfaces/export_.plugins.dns.html)

docs/add-redirects.sh

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ declare -a plugins=(
2121
"cucumber"
2222
"bunyan"
2323
"cassandra_driver"
24+
"confluentinc_kafka_javascript"
2425
"connect"
2526
"dns"
2627
"elasticsearch"

docs/test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ tracer.use('bunyan');
296296
tracer.use('couchbase');
297297
tracer.use('cassandra-driver');
298298
tracer.use('child_process');
299+
tracer.use('confluentinc-kafka-javascript');
299300
tracer.use('connect');
300301
tracer.use('connect', httpServerOptions);
301302
tracer.use('cypress');

index.d.ts

+7
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ interface Plugins {
154154
"bunyan": tracer.plugins.bunyan;
155155
"cassandra-driver": tracer.plugins.cassandra_driver;
156156
"child_process": tracer.plugins.child_process;
157+
"confluentinc-kafka-javascript": tracer.plugins.confluentinc_kafka_javascript;
157158
"connect": tracer.plugins.connect;
158159
"couchbase": tracer.plugins.couchbase;
159160
"cucumber": tracer.plugins.cucumber;
@@ -1344,6 +1345,12 @@ declare namespace tracer {
13441345
* [child_process](https://nodejs.org/api/child_process.html) module.
13451346
*/
13461347
interface child_process extends Instrumentation {}
1348+
1349+
/**
1350+
* This plugin automatically instruments the
1351+
* [confluentinc-kafka-javascript](https://github.com/confluentinc/confluent-kafka-js) module.
1352+
*/
1353+
interface confluentinc_kafka_javascript extends Instrumentation {}
13471354

13481355
/**
13491356
* This plugin automatically instruments the

0 commit comments

Comments
 (0)