Skip to content

Add Event-Driven Request-Reply with Azure Event Hub#215

Open
aashikam wants to merge 4 commits intowso2:mainfrom
aashikam:kafka-docs
Open

Add Event-Driven Request-Reply with Azure Event Hub#215
aashikam wants to merge 4 commits intowso2:mainfrom
aashikam:kafka-docs

Conversation

@aashikam
Copy link
Copy Markdown

@aashikam aashikam commented Jan 5, 2026

Purpose

$title

Summary by CodeRabbit

  • Documentation
    • Added comprehensive guide for implementing request-reply messaging patterns with Azure Event Hub and Kafka integration, covering architecture design, configuration setup, Azure resource provisioning, Kafka producer/consumer implementation, and troubleshooting guidance.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 5, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

A new documentation file was added detailing the implementation of a request–reply messaging pattern using Azure Event Hub with Kafka in WSO2 Integrator. The guide covers architecture, configuration steps, service implementation, and troubleshooting procedures.

Changes

Cohort / File(s) Summary
Documentation: Request-Reply Messaging with Azure Event Hub
en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md
New comprehensive guide documenting the request-reply messaging pattern implementation using Azure Event Hub with Kafka, including architecture overview, JAAS/SASL_SSL configuration, service setup, flow logic implementation, and troubleshooting steps.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 A new path through the clouds so blue,
Request and reply, now shining through,
Kafka's dance with Azure's might,
Documentation gleams so bright,
Integrations flow with joy and ease! 🎯

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description is incomplete, containing only the Purpose section with a placeholder variable. All other required sections (Goals, Approach, User stories, Release note, Documentation, Training, Certification, Marketing, Automation tests, Security checks, Samples, Related PRs, Migrations, Test environment, Learning) are missing. Complete the pull request description by filling out all required template sections with appropriate details about the documentation changes, or explain why certain sections don't apply.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: adding documentation for event-driven request-reply messaging with Azure Event Hub.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Fix all issues with AI Agents 🤖
In
@en/docs/integration-guides/event-integration/kafka/request-reply-with-azure-event-hub.md:
- Line 208: Replace bolded step headers that use **Step X.Y: ...** with proper
markdown heading syntax by converting them to level-3 headings (e.g., change
"**Step 3.1: Create a resource group**" to "### Step 3.1: Create a resource
group"); apply the same replacement for other bold step headers in this document
(for example any occurrences of "**Step 3.2:**", "**Step 3.3:**", etc.) so the
sections are real headings and will be picked up by TOC and accessibility
tooling.
🧹 Nitpick comments (2)
en/docs/integration-guides/event-integration/kafka/request-reply-with-azure-event-hub.md (2)

273-273: Specify language for code blocks to enable proper syntax highlighting.

Code blocks throughout the document are missing language specifications (e.g., ```json, ```bash). Add appropriate language identifiers after the opening backticks for better readability.

Examples requiring fixes:

  • Line 273: JSON output → ```json
  • Line 563, 581: Command output → ```text
  • Line 598, 606, 613: Logs/responses → ```text
  • Line 630: JAAS config → ```properties or ```text

Also applies to: 563-563, 581-581, 598-598, 606-606, 613-613, 630-630


437-437: Fix inline code formatting in string examples.

Lines with string value examples have spaces between string and the backtick, creating awkward formatting. Combine them into single inline code blocks:

Change from: string [Example text]
Change to: `string `[Example text] ``

Apply to:

  • Line 437: Message parameter
  • Line 445: Response variable expression
  • Line 460: Log message
  • Line 501: Log message
  • Line 548: Log message

Also applies to: 445-445, 460-460, 501-501, 548-548

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a2f4ca5 and 75812ce.

📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/request-reply-with-azure-event-hub.md
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
en/docs/integration-guides/event-integration/kafka/request-reply-with-azure-event-hub.md

66-66: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


67-67: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


158-158: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


168-168: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


174-174: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


188-188: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


200-200: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


208-208: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


210-210: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


216-216: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


218-218: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


226-226: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


228-228: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


236-236: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


238-238: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


248-248: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


261-261: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


273-273: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


273-273: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


284-284: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


294-294: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


294-294: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


371-371: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


371-371: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


437-437: Spaces inside code span elements

(MD038, no-space-in-code)


445-445: Spaces inside code span elements

(MD038, no-space-in-code)


452-452: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


460-460: Spaces inside code span elements

(MD038, no-space-in-code)


501-501: Spaces inside code span elements

(MD038, no-space-in-code)


507-507: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


514-514: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


548-548: Spaces inside code span elements

(MD038, no-space-in-code)


556-556: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


563-563: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


563-563: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


574-574: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


581-581: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


581-581: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


590-590: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


598-598: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


598-598: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


606-606: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


606-606: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


613-613: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


613-613: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


630-630: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


630-630: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


666-666: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


678-678: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

🔇 Additional comments (1)
en/docs/integration-guides/event-integration/kafka/request-reply-with-azure-event-hub.md (1)

1-50: Comprehensive documentation with solid technical content.

The tutorial effectively covers the request-reply pattern with Azure Event Hub. Architecture is clearly explained, prerequisites are thorough, and step-by-step instructions are detailed. The inclusion of both CLI and portal approaches, troubleshooting section, and cleanup guidance demonstrates good documentation practices.

@aashikam aashikam marked this pull request as ready for review January 6, 2026 04:44
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI Agents
In
@en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md:
- Line 210: Replace all bold step headers like "**Step X.Y: ...**" with proper
markdown headings using appropriate levels (e.g., use "### Step 3.1: Create a
resource group" instead of bold text) and convert every header below level 1 to
sentence case (capitalize only the first word and proper nouns). Specifically
update the occurrences similar to "Step 3.1: Create a resource group" and the
other step headers at the commented lines (218, 228, 238, 259, 282 and any other
"**Step X.Y: ...**" instances) and apply sentence case fixes to all headers
listed in the comment (e.g., change "What You'll Learn" → "What you'll learn",
"Architecture Overview" → "Architecture overview", "Request-Reply Pattern" →
"Request-reply pattern", "Step 4: Get Connection String" → "Step 4: Get
connection string", "Step 5: Verify Your Setup" → "Step 5: Verify your setup",
plus the additional line numbers provided). Ensure heading level syntax (##,
###) replaces bold formatting so TOC and screen readers can parse the structure.
🧹 Nitpick comments (2)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md (2)

275-275: Add language specifications to fenced code blocks.

Several code blocks are missing language identifiers, reducing syntax highlighting and readability:

  • Line 275: Connection string output (use text or leave unlabeled for plaintext)
  • Line 296: Table output (use text)
  • Line 373: JAAS config (use text)
  • Line 567, 585, 602, 610, 617: Service output logs (use text)
  • Line 634: JAAS config example (use text)

For command outputs and plaintext, use ```text instead of just ```.

🔎 Example fixes for missing language specs
-Endpoint=sb://kafka-eventhub-demo.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123…
+```text
+Endpoint=sb://kafka-eventhub-demo.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123…
+```

-```
-[
+```text
+[

Also applies to: 296-296, 373-373, 567-567, 585-585, 602-602, 610-610, 617-617, 634-634


441-441: Review spacing in inline code expressions (potential false positive).

Linting flagged spaces inside inline code spans at lines 441, 449, 464, 505, 552 (e.g., `[content]`). However, these appear to be intentional Ballerina string interpolation syntax (template literals) rather than markdown code formatting violations. Verify that these are formatted as intended and not actual spacing issues.

Also applies to: 449-449, 464-464, 505-505, 552-552

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 75812ce and aea2e71.

⛔ Files ignored due to path filters (7)
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/1-create-reply-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/2-create-kafka-producer-connection.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-2-create-kafka-event-handler.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/4-add-foreach-block.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/architecture-diagram.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2025-11-12T05:34:19.589Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/network-level-security.md:1-20
Timestamp: 2025-11-12T05:34:19.589Z
Learning: In the wso2/docs-bi repository documentation files, using h3 (###) subsection headings directly under h1 (#) titles is an intentional style choice, even though it violates standard markdown heading increment rules.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
📚 Learning: 2025-11-12T05:34:18.459Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/os-level-security.md:1-25
Timestamp: 2025-11-12T05:34:18.459Z
Learning: In the WSO2 docs-bi repository, specifically in deployment best practices documentation files under en/docs/deploy/deployment-best-practices/, using h3 (###) headings directly after h1 titles (instead of h2) is intentional and should not be flagged.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🪛 markdownlint-cli2 (0.18.1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md

68-68: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


69-69: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


160-160: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


170-170: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


176-176: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


190-190: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


202-202: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


210-210: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


212-212: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


218-218: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


220-220: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


228-228: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


230-230: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


238-238: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


240-240: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


250-250: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


263-263: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


275-275: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


275-275: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


286-286: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


296-296: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


296-296: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


373-373: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


373-373: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


441-441: Spaces inside code span elements

(MD038, no-space-in-code)


449-449: Spaces inside code span elements

(MD038, no-space-in-code)


456-456: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


464-464: Spaces inside code span elements

(MD038, no-space-in-code)


505-505: Spaces inside code span elements

(MD038, no-space-in-code)


511-511: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


518-518: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


552-552: Spaces inside code span elements

(MD038, no-space-in-code)


560-560: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


567-567: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


567-567: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


578-578: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


585-585: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


585-585: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


594-594: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


602-602: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


602-602: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


610-610: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


610-610: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


617-617: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


617-617: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


634-634: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


634-634: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


670-670: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


682-682: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Fix all issues with AI Agents
In
@en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md:
- Line 275: Update the fenced code blocks listed to include appropriate language
identifiers for syntax highlighting: add ```bash (or similar) to the connection
string output block referenced at line 275 and the AWS output block at line 296;
add ```plaintext (or ```bash) to the JAAS config block at line 373; and add
```bash or ```plaintext to the output blocks at lines 567, 585, 602, 610, 617,
and 634 so each fenced block declares its language and enables proper
highlighting.
- Line 210: Replace the bold step header "**Step 3.1: Create a resource group**"
with a proper markdown heading using sentence case, e.g. "### Step 3.1: Create a
resource group", and apply the same conversion to the other bold step headers in
the file (the lines containing "**Step 3.2: ...**", "**Step 3.3: ...**", "**Step
3.4: ...**") so TOC generators and screen readers can parse them correctly.
- Line 441: Remove the extra spaces inside the inline code spans for the message
string literals: change occurrences like `` `[Reply Service] Received request:
${requestContent}` `` to ```[Reply Service] Received request:
${requestContent}``` (i.e., remove the space after the opening backtick so the
code span contains `string` instead of `` `string ` ``); apply the same fix for
the other affected inline code spans on the listed lines (the other message
literals at the same pattern on lines 449, 464, 505, and 552).
- Line 5: Convert all headers below Level 1 to sentence case; update each
occurrence of the specified header strings to the sentence-case variants (e.g.,
change "What You'll Learn" → "What you'll learn", "Architecture Overview" →
"Architecture overview", "Request-Reply Pattern" → "Request-reply pattern", "How
it Works" → "How it works", "Key Components" → "Key components", "In this
Example" → "In this example", "What You'll Build" → "What you'll build",
"Technology Stack" → "Technology stack", "Setting Up Azure Event Hub" → "Setting
up Azure Event Hub", "Step 4: Get Connection String" → "Step 4: Get connection
string", "Step 5: Verify Your Setup" → "Step 5: Verify your setup", "Building
the Reply Service" → "Building the reply service", "Step 5: Create the Response
Listener" → "Step 5: Create the response listener", "Running the Services" →
"Running the services", "Step 2: Start the Request Service" → "Step 2: Start the
request service", "Step 3: Send a Test Request" → "Step 3: Send a test request",
"Authentication Failed" → "Authentication failed", "No Messages Received" → "No
messages received", "Cleanup: Delete Azure Resources" → "Cleanup: Delete Azure
resources", "Option 1: Delete Using Azure CLI (Recommended)" → "Option 1: Delete
using Azure CLI (recommended)", and "Next Steps" → "Next steps"); locate and
edit these header lines in the markdown so only the first word and proper nouns
remain capitalized while preserving punctuation and numbering.
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between aea2e71 and 05a6fd4.

⛔ Files ignored due to path filters (12)
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/1-create-reply-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/2-create-kafka-producer-connection.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-2-create-kafka-event-handler.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/4-add-foreach-block.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/5-deserialize-request-message.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/6-log-request.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/7-create-response-variable.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/8-send-response.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/9-log-response.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/architecture-diagram.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-11-12T05:34:19.589Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/network-level-security.md:1-20
Timestamp: 2025-11-12T05:34:19.589Z
Learning: In the wso2/docs-bi repository documentation files, using h3 (###) subsection headings directly under h1 (#) titles is an intentional style choice, even though it violates standard markdown heading increment rules.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🪛 markdownlint-cli2 (0.18.1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md

68-68: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


69-69: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


160-160: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


170-170: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


176-176: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


190-190: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


202-202: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


210-210: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


212-212: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


218-218: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


220-220: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


228-228: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


230-230: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


238-238: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


240-240: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


250-250: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


263-263: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


275-275: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


275-275: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


286-286: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


296-296: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


296-296: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


373-373: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


373-373: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


441-441: Spaces inside code span elements

(MD038, no-space-in-code)


449-449: Spaces inside code span elements

(MD038, no-space-in-code)


456-456: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


464-464: Spaces inside code span elements

(MD038, no-space-in-code)


505-505: Spaces inside code span elements

(MD038, no-space-in-code)


511-511: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


518-518: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


552-552: Spaces inside code span elements

(MD038, no-space-in-code)


560-560: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


567-567: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


567-567: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


578-578: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


585-585: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


585-585: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


594-594: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


602-602: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


602-602: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


610-610: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


610-610: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


617-617: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


617-617: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


634-634: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


634-634: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


670-670: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


682-682: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

🔇 Additional comments (1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md (1)

68-69: Fix unordered list indentation.

Lines 68–69 use 4 spaces for nested list items; should use 2 spaces per markdown convention.

   - Publish-subscribe messaging patterns
-    - Apache Kafka concepts (topics, producers, consumers)
+  - Apache Kafka concepts (topics, producers, consumers)
⛔ Skipped due to learnings
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 175
File: en/docs/deploy/deployment-best-practices/runtime-security.md:25-29
Timestamp: 2025-11-13T07:02:39.808Z
Learning: In the wso2/docs-bi repository, nested list items should use 4-space indentation because MkDocs (Python-Markdown) requires 4 spaces for proper rendering. The markdownlint MD007 rule should be configured to accept 4-space indentation rather than the default 2 spaces.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI Agents
In
@en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md:
- Around line 1-724: The document has lingering formatting issues: convert title
and major headings from Title Case to sentence case (e.g., change "# Kafka
Request-Reply Pattern with Azure Event Hub" and headings like "## What You'll
Learn", "### Step 1: Install Azure CLI" to sentence case); replace bolded step
headers (e.g., the "**Step 3.1: Create a resource group**" style) with proper
Markdown headings (use ###/#### as appropriate) rather than bold text; add
language identifiers to all fenced code blocks that are missing them (e.g., use
```bash, ```json, ```ballerina where applicable) and ensure inline code spans
use backticks with single spaces removed around code (fix instances like `
$ConnectionString ` → `$ConnectionString`), updating occurrences such as JAAS
config examples and configuration tables; review and normalize header casing and
inline code spacing across sections like "Setting Up Azure Event Hub", "Building
the Reply Service", and code examples that reference symbols like
`sasl.jaas.config`, `requestProducer`, `responseProducer`, `onConsumerRecord`,
and the JAAS config line to ensure consistency with WSO2 doc standards.
- Line 5: Convert all Markdown headers below the top-level header in
kafka-request-reply-pattern-with-azure-event-hub.md from Title Case to sentence
case (only capitalize the first word and proper nouns). Locate the headers
referenced in the review (occurrences at lines 12, 21, 25, 32, 46, 52, 71, 81,
259, 282, 333, 527, 556, 584, 592, 631, 650, 672, 676, 708) plus any other
non-Level-1 headers, and edit each header text to use sentence case while
preserving punctuation and Markdown header markers; do not change Level 1
heading(s) or alter header anchors/IDs beyond the text content. Ensure
consistency across the file after edits.
🧹 Nitpick comments (1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md (1)

497-499: Fix inconsistent list indentation.

Line 499 has misaligned indentation relative to the surrounding list items at the same level. Ensure consistent spacing.

🔎 Proposed fix for list indentation
 4. Add a resource:
      - Method: `POST`
      - Path: `/request`
-    - Payload: `string`
+     - Payload: `string`
📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 05a6fd4 and 43387f7.

⛔ Files ignored due to path filters (23)
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/1-create-reply-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/10-create-request-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/11-2-create-http-service.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/11-create-http-service.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/12-log-request.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/13-send-to-kafka.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/14-return-response.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-2-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-3-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-4-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/16-log-received-response.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/2-create-kafka-producer-connection.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-2-create-kafka-event-handler.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/4-add-foreach-block.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/5-deserialize-request-message.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/6-log-request.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/7-create-response-variable.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/8-send-response.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/9-log-response.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/architecture-diagram.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2025-11-12T05:34:18.459Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/os-level-security.md:1-25
Timestamp: 2025-11-12T05:34:18.459Z
Learning: In the WSO2 docs-bi repository, specifically in deployment best practices documentation files under en/docs/deploy/deployment-best-practices/, using h3 (###) headings directly after h1 titles (instead of h2) is intentional and should not be flagged.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
📚 Learning: 2025-11-12T05:34:19.589Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/network-level-security.md:1-20
Timestamp: 2025-11-12T05:34:19.589Z
Learning: In the wso2/docs-bi repository documentation files, using h3 (###) subsection headings directly under h1 (#) titles is an intentional style choice, even though it violates standard markdown heading increment rules.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
📚 Learning: 2025-11-13T07:02:39.808Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 175
File: en/docs/deploy/deployment-best-practices/runtime-security.md:25-29
Timestamp: 2025-11-13T07:02:39.808Z
Learning: In the wso2/docs-bi repository, nested list items should use 4-space indentation because MkDocs (Python-Markdown) requires 4 spaces for proper rendering. The markdownlint MD007 rule should be configured to accept 4-space indentation rather than the default 2 spaces.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🪛 markdownlint-cli2 (0.18.1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md

68-68: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


69-69: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


160-160: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


170-170: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


176-176: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


190-190: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


202-202: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


210-210: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


212-212: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


218-218: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


220-220: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


228-228: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


230-230: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


238-238: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


240-240: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


250-250: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


263-263: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


275-275: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


275-275: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


286-286: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


296-296: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


296-296: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


373-373: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


373-373: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


441-441: Spaces inside code span elements

(MD038, no-space-in-code)


449-449: Spaces inside code span elements

(MD038, no-space-in-code)


456-456: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


464-464: Spaces inside code span elements

(MD038, no-space-in-code)


499-499: Inconsistent indentation for list items at the same level
Expected: 5; Actual: 4

(MD005, list-indent)


508-508: Spaces inside code span elements

(MD038, no-space-in-code)


514-514: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


521-521: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


562-562: Spaces inside code span elements

(MD038, no-space-in-code)


570-570: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


577-577: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


577-577: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


588-588: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


595-595: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


595-595: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


604-604: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


612-612: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


612-612: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


620-620: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


620-620: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


627-627: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


627-627: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


644-644: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


644-644: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


680-680: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


692-692: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md (1)

1-1: Consider simplifying the filename for clarity.

Per a previous review comment, the filename could be more concise. Current: kafka-request-reply-pattern-with-azure-event-hub.md. Since the file already resides in /kafka/, the "kafka-" prefix is somewhat redundant. Consider shortening to request-reply-pattern-with-azure-event-hub.md or similar for improved clarity and consistency with other documentation.

📜 Review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 43387f7 and 3f25716.

⛔ Files ignored due to path filters (23)
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/1-create-reply-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/10-create-request-service-project.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/11-2-create-http-service.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/11-create-http-service.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/12-log-request.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/13-send-to-kafka.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/14-return-response.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-2-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-3-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-4-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/15-create-response-listener.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/16-log-received-response.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/2-create-kafka-producer-connection.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-2-create-kafka-event-handler.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/3-create-kafka-event-handler.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/4-add-foreach-block.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/5-deserialize-request-message.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/6-log-request.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/7-create-response-variable.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/8-send-response.gif is excluded by !**/*.gif
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/9-log-response.png is excluded by !**/*.png
  • en/docs/assets/img/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub/architecture-diagram.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2025-11-12T05:34:19.589Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/network-level-security.md:1-20
Timestamp: 2025-11-12T05:34:19.589Z
Learning: In the wso2/docs-bi repository documentation files, using h3 (###) subsection headings directly under h1 (#) titles is an intentional style choice, even though it violates standard markdown heading increment rules.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
📚 Learning: 2025-11-12T05:34:18.459Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 169
File: en/docs/deploy/deployment-best-practices/os-level-security.md:1-25
Timestamp: 2025-11-12T05:34:18.459Z
Learning: In the WSO2 docs-bi repository, specifically in deployment best practices documentation files under en/docs/deploy/deployment-best-practices/, using h3 (###) headings directly after h1 titles (instead of h2) is intentional and should not be flagged.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
📚 Learning: 2025-11-13T07:02:39.808Z
Learnt from: dulajdilshan
Repo: wso2/docs-bi PR: 175
File: en/docs/deploy/deployment-best-practices/runtime-security.md:25-29
Timestamp: 2025-11-13T07:02:39.808Z
Learning: In the wso2/docs-bi repository, nested list items should use 4-space indentation because MkDocs (Python-Markdown) requires 4 spaces for proper rendering. The markdownlint MD007 rule should be configured to accept 4-space indentation rather than the default 2 spaces.

Applied to files:

  • en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md
🪛 markdownlint-cli2 (0.18.1)
en/docs/integration-guides/event-integration/kafka/kafka-request-reply-pattern-with-azure-event-hub.md

68-68: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


69-69: Unordered list indentation
Expected: 2; Actual: 4

(MD007, ul-indent)


160-160: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


170-170: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


176-176: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


190-190: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


202-202: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


210-210: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


212-212: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


218-218: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


220-220: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


228-228: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


230-230: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


238-238: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


240-240: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


250-250: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


263-263: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


275-275: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


275-275: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


286-286: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


296-296: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


296-296: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


373-373: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


373-373: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


441-441: Spaces inside code span elements

(MD038, no-space-in-code)


449-449: Spaces inside code span elements

(MD038, no-space-in-code)


456-456: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


464-464: Spaces inside code span elements

(MD038, no-space-in-code)


499-499: Inconsistent indentation for list items at the same level
Expected: 5; Actual: 4

(MD005, list-indent)


508-508: Spaces inside code span elements

(MD038, no-space-in-code)


514-514: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


521-521: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


562-562: Spaces inside code span elements

(MD038, no-space-in-code)


570-570: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


577-577: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


577-577: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


588-588: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


595-595: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


595-595: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


604-604: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


612-612: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


612-612: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


620-620: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


620-620: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


627-627: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


627-627: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


644-644: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


644-644: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


680-680: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)


692-692: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

@Sachindu-Nethmin
Copy link
Copy Markdown
Contributor

Is there any way to navigate to the page? Can we add the page to the left-side navigation?

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

🧹 Nitpick comments (1)
en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md (1)

160-162: Resolve markdownlint MD046 by using the repo’s required code block style consistently.

There are repeated MD046 warnings across the file. Convert code blocks to the configured style so CI stays clean.

Also applies to: 170-172, 176-186, 190-196, 202-208, 212-216, 220-226, 230-236, 240-246, 250-257, 263-271, 275-277, 286-292, 296-301, 373-375, 456-458, 514-516, 521-523, 570-573, 577-582, 588-591, 595-600, 604-608, 612-614, 620-623, 627-630, 644-646

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
around lines 160 - 162, Multiple code blocks (e.g., the snippet showing "az
--version" and many other CLI/snippet blocks) are using a fence style that
triggers markdownlint MD046; update each code block to the repository's required
code-block style (replace the current backtick fences with the configured style
and add appropriate language tags where expected) so all instances such as the
"az --version" block and the other listed snippet groups use the same fenced
format; ensure consistency across functions/examples by scanning the file for
code fences and applying the repo-standard fence and language tag to every one.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`:
- Line 113: The README uses a raw URL as link text in the sentence "Download and
run the MSI installer from:
[https://aka.ms/installazurecliwindows](https://aka.ms/installazurecliwindows)";
replace the raw URL link text with a descriptive label such as "Azure CLI
installer for Windows" so the link becomes [Azure CLI installer for
Windows](https://aka.ms/installazurecliwindows) to follow the guideline to use
descriptive link text.
- Around line 521-523: Change the returned response text string so both examples
match the expected output "Request sent: ${payload}"; locate the Ballerina code
block that currently returns "Request sent successfully: ${payload}" and replace
that literal with "Request sent: ${payload}", and make the same replacement for
the other occurrence that currently differs (the string at the later example
block).
- Around line 1-3: The document inconsistently uses "Azure Event Hub" and
similar variants; standardize the product name to the correct Microsoft branding
"Azure Event Hubs" throughout the file (including the title line "Implementing
request–reply messaging using Azure Event Hub", body paragraphs, and any
service/handler references such as "Event Hub topic" or "Event Hub"
occurrences). Search for all occurrences of the singular form and replace with
"Azure Event Hubs" or adjust surrounding phrasing to use the plural brand name
(e.g., "Event Hubs topic(s)" → "Event Hubs topic(s)" or "Event Hubs" as
appropriate) so terminology is consistent in headings, body text, and examples.
- Around line 324-331: Replace all decorative arrow characters "→" in the
document with plain text separators or sub-steps (e.g., use "then", a hyphen, or
split into separate numbered/bulleted steps) so instructional steps and headings
read consistently and follow documentation guidelines; specifically update the
numbered step block that uses "Resource group: Create new →
`kafka-eventhub-demo-rg`", "Namespace name: `kafka-eventhub-demo` (must be
unique)", "Pricing tier: Standard (Basic doesn't support Kafka)" and other list
lines that contain the "→" symbol, and apply the same replacement to the other
occurrences flagged in the review (all instances of the "→" symbol in the file).
- Around line 499-500: The bullet "Payload: `string`" under the "Add a
resource." section is misindented compared to its sibling bullets (lines with
the same parent list); locate the "Add a resource." list and adjust the
indentation of the "Payload: `string`" line so it aligns with the other bullets
(match the same leading spaces/marker style as the sibling lines), ensuring
consistent list structure in the Markdown.

---

Nitpick comments:
In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`:
- Around line 160-162: Multiple code blocks (e.g., the snippet showing "az
--version" and many other CLI/snippet blocks) are using a fence style that
triggers markdownlint MD046; update each code block to the repository's required
code-block style (replace the current backtick fences with the configured style
and add appropriate language tags where expected) so all instances such as the
"az --version" block and the other listed snippet groups use the same fenced
format; ensure consistency across functions/examples by scanning the file for
code fences and applying the repo-standard fence and language tag to every one.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 48f0a8bb-2c79-4745-8b0c-355c8359738a

📥 Commits

Reviewing files that changed from the base of the PR and between 3f25716 and c6e1bef.

📒 Files selected for processing (1)
  • en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md

Comment on lines +1 to +3
# Implementing request–reply messaging using Azure Event Hub

In this tutorial, you will learn how to build a simple request-reply messaging pattern using Azure Event Hub with the Kafka event handler and WSO2 Integrator: BI. You'll create two services that communicate bidirectionally through Event Hub topics.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Standardize product terminology for Azure Event Hubs.

The doc mixes wording across sections (for example, singular “Azure Event Hub” in title/body versus service terminology elsewhere). Please use one consistent product name throughout to avoid ambiguity.

As per coding guidelines, "Always use correct and consistent product names and terminology in documentation."

Also applies to: 14-17, 50-50, 261-261

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
around lines 1 - 3, The document inconsistently uses "Azure Event Hub" and
similar variants; standardize the product name to the correct Microsoft branding
"Azure Event Hubs" throughout the file (including the title line "Implementing
request–reply messaging using Azure Event Hub", body paragraphs, and any
service/handler references such as "Event Hub topic" or "Event Hub"
occurrences). Search for all occurrences of the singular form and replace with
"Azure Event Hubs" or adjust surrounding phrasing to use the plural brand name
(e.g., "Event Hubs topic(s)" → "Event Hubs topic(s)" or "Event Hubs" as
appropriate) so terminology is consistent in headings, body text, and examples.


**Option B: Using MSI installer**

Download and run the MSI installer from: [https://aka.ms/installazurecliwindows](https://aka.ms/installazurecliwindows)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Use descriptive link text instead of a raw URL label.

At Line 113, change [https://aka.ms/installazurecliwindows](...) to descriptive text like [Azure CLI installer for Windows](https://aka.ms/installazurecliwindows).

As per coding guidelines, "Use descriptive link text instead of raw URLs (for example, Azure portal instead of https://portal.azure.com) in documentation."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
at line 113, The README uses a raw URL as link text in the sentence "Download
and run the MSI installer from:
[https://aka.ms/installazurecliwindows](https://aka.ms/installazurecliwindows)";
replace the raw URL link text with a descriptive label such as "Azure CLI
installer for Windows" so the link becomes [Azure CLI installer for
Windows](https://aka.ms/installazurecliwindows) to follow the guideline to use
descriptive link text.

Comment on lines +324 to +331
2. Click **Create a resource** → Search for **Event Hubs** → Click **Create**
3. Fill in:
- Resource group: Create new → `kafka-eventhub-demo-rg`
- Namespace name: `kafka-eventhub-demo` (must be unique)
- Pricing tier: **Standard** (Basic doesn't support Kafka)
4. Click **Review + create** → **Create**
5. After deployment, go to the namespace → **Event Hubs** → Create `requests` and `responses`
6. Go to **Shared access policies** → **RootManageSharedAccessKey** → Copy connection string
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Replace decorative symbols in instructional text.

Using in body steps conflicts with the documentation rule and also hurts scan/readability consistency. Replace with plain text separators (for example, “then”) or split into sub-steps.

As per coding guidelines, "Do NOT use decorative or special symbols (like ¶, →, ») in headings or text in documentation."

Also applies to: 424-432, 440-446, 454-454, 463-463, 546-554

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
around lines 324 - 331, Replace all decorative arrow characters "→" in the
document with plain text separators or sub-steps (e.g., use "then", a hyphen, or
split into separate numbered/bulleted steps) so instructional steps and headings
read consistently and follow documentation guidelines; specifically update the
numbered step block that uses "Resource group: Create new →
`kafka-eventhub-demo-rg`", "Namespace name: `kafka-eventhub-demo` (must be
unique)", "Pricing tier: Standard (Basic doesn't support Kafka)" and other list
lines that contain the "→" symbol, and apply the same replacement to the other
occurrences flagged in the review (all instances of the "→" symbol in the file).

Comment on lines +499 to +500
- Payload: `string`

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Fix list indentation under “Add a resource.”

Line 499 is misaligned with sibling bullets and triggers list-structure inconsistency. Align the indentation with Lines 497-498.

Suggested fix
 4. Add a resource:
      - Method: `POST`
      - Path: `/request`
-    - Payload: `string`
+     - Payload: `string`
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- Payload: `string`
4. Add a resource:
- Method: `POST`
- Path: `/request`
- Payload: `string`
🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 499-499: Inconsistent indentation for list items at the same level
Expected: 5; Actual: 4

(MD005, list-indent)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
around lines 499 - 500, The bullet "Payload: `string`" under the "Add a
resource." section is misindented compared to its sibling bullets (lines with
the same parent list); locate the "Add a resource." list and adjust the
indentation of the "Payload: `string`" line so it aligns with the other bullets
(match the same leading spaces/marker style as the sibling lines), ensuring
consistent list structure in the Markdown.

Comment on lines +521 to +523
```ballerina
string `Request sent successfully: ${payload}`
```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Align returned response text with the expected output example.

Line 522 returns Request sent successfully: ..., but Line 613 shows Request sent: .... Keep these identical to prevent confusion during verification.

Suggested fix
-    string `Request sent successfully: ${payload}`
+    string `Request sent: ${payload}`

Also applies to: 612-614

🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 521-521: Code block style
Expected: indented; Actual: fenced

(MD046, code-block-style)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@en/docs/integration-guides/event-integration/kafka/request-reply-messaging-with-azure-event-hub.md`
around lines 521 - 523, Change the returned response text string so both
examples match the expected output "Request sent: ${payload}"; locate the
Ballerina code block that currently returns "Request sent successfully:
${payload}" and replace that literal with "Request sent: ${payload}", and make
the same replacement for the other occurrence that currently differs (the string
at the later example block).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants