From 8f72318fec4f78a4279adc7d766d4da1ab58f516 Mon Sep 17 00:00:00 2001 From: ebarrios Date: Fri, 5 Mar 2021 16:54:13 +0100 Subject: [PATCH 1/3] Added lag column to the kafka plugin Signed-off-by: ebarrios --- .changeset/curvy-poems-cough.md | 5 +++++ .../ConsumerGroupOffsets/ConsumerGroupOffsets.tsx | 11 +++++++++++ 2 files changed, 16 insertions(+) create mode 100644 .changeset/curvy-poems-cough.md diff --git a/.changeset/curvy-poems-cough.md b/.changeset/curvy-poems-cough.md new file mode 100644 index 0000000000..6013404490 --- /dev/null +++ b/.changeset/curvy-poems-cough.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-kafka': patch +--- + +Added lag column in the plugin main table diff --git a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx index 7928393526..3d458194d6 100644 --- a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx +++ b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx @@ -57,6 +57,17 @@ const generatedColumns: TableColumn[] = [ return <>{row.groupOffset ?? ''}; }, }, + { + title: 'Lag', + field: 'lag', + render: (row: Partial) => { + let lag = undefined; + if (row.topicOffset && row.groupOffset) { + lag = +topicOffset - +groupOffset; + } + return <>{lag ?? ''}; + }, + }, ]; type Props = { From e15f7a6464657325d9134f7a436bcad394dbf670 Mon Sep 17 00:00:00 2001 From: ebarrios Date: Fri, 5 Mar 2021 17:02:50 +0100 Subject: [PATCH 2/3] Added missing row to variables Signed-off-by: ebarrios --- .../components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx index 3d458194d6..90a99be015 100644 --- a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx +++ b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.tsx @@ -63,7 +63,7 @@ const generatedColumns: TableColumn[] = [ render: (row: Partial) => { let lag = undefined; if (row.topicOffset && row.groupOffset) { - lag = +topicOffset - +groupOffset; + lag = +row.topicOffset - +row.groupOffset; } return <>{lag ?? ''}; }, From 0eac754a89ca048802e83c4f3d6aab87f54b8097 Mon Sep 17 00:00:00 2001 From: ebarrios Date: Mon, 8 Mar 2021 10:17:50 +0100 Subject: [PATCH 3/3] Added test case for lag field in the kafka plugin Signed-off-by: ebarrios --- .../ConsumerGroupOffsets/ConsumerGroupOffsets.test.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.test.tsx b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.test.tsx index 9cedc5e135..a34cbc9cbc 100644 --- a/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.test.tsx +++ b/plugins/kafka/src/components/ConsumerGroupOffsets/ConsumerGroupOffsets.test.tsx @@ -37,5 +37,10 @@ describe('ConsumerGroupOffsets', () => { expect(rendered.getByText(/consumer/)).toBeInTheDocument(); expect(rendered.getByText('topic1')).toBeInTheDocument(); expect(rendered.getByText('topic2')).toBeInTheDocument(); + + const lag = ( + +data.offsets[1].topicOffset - +data.offsets[1].groupOffset + ).toString(); + expect(rendered.getByText(lag)).toBeInTheDocument(); }); });