<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[TGH Software Solutions]]></title><description><![CDATA[TGH Software Solutions]]></description><link>https://tghinsights.hashnode.dev</link><image><url>https://cdn.hashnode.com/uploads/logos/699ca72ccf5def0f6abd2a8d/fbaea924-fa68-4986-9b13-ab1e2a29b996.jpg</url><title>TGH Software Solutions</title><link>https://tghinsights.hashnode.dev</link></image><generator>RSS for Node</generator><lastBuildDate>Fri, 13 Nov 2026 22:14:42 GMT</lastBuildDate><atom:link href="https://tghinsights.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Understanding MuleSoft Tracing Module: Improve Logging and Monitoring with MDC]]></title><description><![CDATA[The MuleSoft Tracing Module provides useful capabilities for managing logging context, tracking correlation IDs, and improving application visibility]]></description><link>https://tghinsights.hashnode.dev/understanding-mulesoft-tracing-module-improve-logging-and-monitoring-with-mdc</link><guid isPermaLink="true">https://tghinsights.hashnode.dev/understanding-mulesoft-tracing-module-improve-logging-and-monitoring-with-mdc</guid><category><![CDATA[MuleSoft Partner]]></category><category><![CDATA[MuleSoft Consulting]]></category><category><![CDATA[MuleSoft Tracing Module]]></category><category><![CDATA[#MuleSoft development]]></category><category><![CDATA[MDC Logging in MuleSoft]]></category><dc:creator><![CDATA[TGH Software Solutions]]></dc:creator><pubDate>Thu, 12 Nov 2026 11:38:29 GMT</pubDate><content:encoded><![CDATA[<p>In modern enterprise integration environments, tracking application events and identifying issues across multiple systems can be challenging. Effective logging and monitoring are essential for maintaining reliable integrations and troubleshooting application issues.</p>
<p>The <strong>MuleSoft Tracing Module</strong> helps developers enhance logging by adding, removing, and clearing variables from the logging context of a Mule event. It also allows developers to modify the correlation ID during flow execution.</p>
<p>For businesses looking to build reliable integration solutions, working with an experienced <a href="https://techygeekhub.com/mulesoft-partner/"><strong>MuleSoft partner</strong></a> can help simplify implementation, improve application visibility, and optimize enterprise integration workflows.</p>
<h2>What Is the MuleSoft Tracing Module?</h2>
<p>The Tracing Module in MuleSoft improves logging by leveraging MDC (Mapped Diagnostic Context). MDC allows contextual information to be attached to log entries associated with a Mule event, making application logs more informative and easier to analyze.</p>
<p>By default, Mule logs two MDC entries:</p>
<ul>
<li><strong>Processor:</strong> Identifies the location of the current event.</li>
<li><strong>Event:</strong> Displays the correlation ID associated with the event.</li>
</ul>
<p>This logging context exists throughout the execution of the corresponding event.</p>
<h2>Why Is MDC Logging Important in MuleSoft?</h2>
<p>MDC logging helps developers understand what is happening during Mule application execution. It provides additional context to log entries, making it easier to trace requests and troubleshoot integration issues.</p>
<p>With MDC logging, developers can:</p>
<ul>
<li>Track individual Mule events using correlation IDs.</li>
<li>Add custom logging variables.</li>
<li>Remove unnecessary logging information.</li>
<li>Clear all custom logging variables.</li>
<li>Improve application monitoring and troubleshooting.</li>
</ul>
<p>These capabilities are particularly useful when managing complex enterprise integration environments involving multiple APIs and interconnected applications.</p>
<h2>Key Operations of the MuleSoft Tracing Module</h2>
<p>The Tracing Module provides several operations to manage logging context:</p>
<p><strong>1. Set Logging Variable</strong></p>
<p>Allows developers to add custom variables to the event logging context. For example, developers can add order IDs, customer IDs, or other business-related information to logs.</p>
<p><strong>2. Remove Logging Variable</strong></p>
<p>Removes a specific logging variable from the event logging context without affecting other variables.</p>
<p><strong>3. Clear Logging Variables</strong></p>
<p>Clears all custom logging variables currently associated with the event logging context.</p>
<p><strong>4. With Correlation ID</strong></p>
<p>Allows developers to modify the correlation ID during the execution of a particular scope in a Mule flow.</p>
<h2>How to Configure MDC Logging in MuleSoft</h2>
<p>To use MDC logging, developers need to add the Tracing Module to their Mule project and configure the Log4j2 logging pattern.</p>
<h3>Step 1: Add the Tracing Module</h3>
<p>Add the Tracing Module to your Mule project using Anypoint Studio.</p>
<h3>Step 2: Configure the Log4j2 Pattern Layout</h3>
<p>Open the <code>log4j2.xml</code> file available in the <code>src/main/resources</code> directory.</p>
<p>Replace the existing pattern:</p>
<p><code>[processor: %X{processorPath}; event: %X{correlationId}]</code></p>
<p>With:</p>
<p><code>[%MDC]</code></p>
<p>This configuration instructs Mule to include the MDC context in the application logs, including the correlation ID and processor path.</p>
<h3>Step 3: Configure Console Logging</h3>
<p>Add Console logging in the Appenders tag and reference it in the AsyncRoot tag. This allows developers to view logging information directly in the console.</p>
<h3>Step 4: Implement and Verify Logging</h3>
<p>Create a new Mule project and add an HTTP Listener component.</p>
<p>Configure the listener with the following details:</p>
<ul>
<li>Host: All interfaces (0.0.0.0)</li>
<li>Port: 8081</li>
<li>Path: /tracing</li>
</ul>
<p>Add a Logger component to display the default correlation ID generated for the Mule event.</p>
<h2>Modifying Correlation IDs During Flow Execution</h2>
<p>The With Correlation ID scope allows developers to change the correlation ID during flow execution.</p>
<p>For example, configure the scope with a custom correlation ID such as <code>123</code> and place Logger and Transform Message components inside it.</p>
<p>When the flow executes, the processors inside the scope use the updated correlation ID.</p>
<p>When an HTTP request is received, Mule checks for the <code>X-Correlation-Id</code> header:</p>
<ul>
<li>If the header is present, the HTTP Connector uses its value as the correlation ID.</li>
<li>If the header is not present, a correlation ID is randomly generated.</li>
</ul>
<p>For example, if Postman sends <code>karthik@123</code> as the custom correlation ID, the With Correlation ID scope can replace it with <code>123</code> for the processors inside that scope.</p>
<h2>Configuring Logging Variables</h2>
<p>The Tracing Module also allows developers to manage custom logging variables during flow execution.</p>
<h3>Setting Logging Variables</h3>
<p>The Set Logging Variable operation adds custom variables to the logging context.</p>
<p>For example, developers can configure:</p>
<ul>
<li>Variable name: <code>orderId</code></li>
<li>Variable value: <code>100</code></li>
</ul>
<p>Another logging variable can be created:</p>
<ul>
<li>Variable name: <code>customerId</code></li>
<li>Variable value: <code>200</code></li>
</ul>
<p>After executing the flow, both variables can be viewed in the console logs.</p>
<h3>Removing Logging Variables</h3>
<p>The Remove Logging Variable operation removes a specific variable from the logging context.</p>
<p>For example, if the <code>customerId</code> variable is no longer required, developers can configure the Remove Logging Variable component with the variable name <code>customerId</code>.</p>
<p>After execution, the customerId variable will no longer appear in the console logs.</p>
<h3>Clearing Logging Variables</h3>
<p>The Clear Logging Variables operation removes all custom logging variables from the current event logging context.</p>
<p>For example, if the <code>orderId</code> variable is still present after removing <code>customerId</code>, executing Clear Logging Variables removes the remaining custom logging variables.</p>
<p><strong>Important Note:</strong> Clearing logging variables does not remove the correlation ID or the current event processor because these values are managed by the Mule runtime engine.</p>
<h2>Why Choose the Right MuleSoft Consulting Partner?</h2>
<p>Implementing and managing enterprise integration solutions requires technical expertise, proper architecture planning, and an understanding of business requirements.</p>
<p>Working with an experienced <a href="https://techygeekhub.com/mulesoft-partner/"><strong>MuleSoft consulting partner</strong></a> helps organizations design, develop, implement, and optimize integration solutions.</p>
<p>TGH Software Solutions provides MuleSoft consulting and integration expertise to help businesses connect enterprise applications, streamline workflows, and improve integration efficiency.</p>
<p>Our MuleSoft capabilities include:</p>
<ul>
<li>MuleSoft Consulting and Implementation</li>
<li>Enterprise Application Integration</li>
<li>API Development and Management</li>
<li>Integration Architecture and Design</li>
<li>EDI and B2B Integration</li>
<li>Integration Migration and Modernization</li>
<li>Ongoing Integration Support</li>
</ul>
<p>With the right integration strategy, organizations can improve application connectivity, simplify complex workflows, and build scalable enterprise integration environments.</p>
<h2>Conclusion</h2>
<p>The MuleSoft Tracing Module provides useful capabilities for managing logging context, tracking correlation IDs, and improving application visibility. By using MDC logging, developers can make Mule application logs more informative and simplify troubleshooting across integration workflows.</p>
<p>Whether you are implementing new integrations or optimizing existing applications, choosing the right <strong>MuleSoft partner</strong> can make a significant difference in your enterprise integration journey.</p>
<p><strong>Looking for expert MuleSoft consulting services?</strong></p>
<p>Connect with TGH Software Solutions to explore how our MuleSoft integration expertise can help simplify your enterprise connectivity and support your digital transformation goals.</p>
]]></content:encoded></item><item><title><![CDATA[How to Generate Multipart/Form-Data in Boomi Using Message Shape and Groovy Script]]></title><description><![CDATA[TGH Software Solutions, a Boomi Partner, delivers Boomi Integration Services to connect applications, streamline data exchange & simplify API integrations.]]></description><link>https://tghinsights.hashnode.dev/how-to-generate-multipart-form-data-in-boomi-using-message-shape-and-groovy-script</link><guid isPermaLink="true">https://tghinsights.hashnode.dev/how-to-generate-multipart-form-data-in-boomi-using-message-shape-and-groovy-script</guid><category><![CDATA[Boomi Partner]]></category><category><![CDATA[Boomi Data Process Shape]]></category><category><![CDATA[Boomi Groovy Script,]]></category><category><![CDATA[Multipart Form-Data]]></category><category><![CDATA[Enterprise Integration ]]></category><dc:creator><![CDATA[TGH Software Solutions]]></dc:creator><pubDate>Thu, 05 Nov 2026 10:24:09 GMT</pubDate><enclosure url="https://cdn.hashnode.com/uploads/covers/699ca72ccf5def0f6abd2a8d/a8ddc83e-7f15-4bc4-89a5-d8e679eedf9e.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Modern businesses frequently exchange files between applications, APIs and enterprise systems. Whether the requirement involves uploading PDFs, spreadsheets, images or multiple documents, APIs need a reliable way to transfer different types of data within a single request.</p>
<p>In Boomi integration services, Multipart/Form-Data is a useful approach for handling file-based API communication. Boomi provides multiple ways to construct multipart payloads, including the Message Shape and Groovy scripting within a Data Process Shape.</p>
<p><strong>Understanding Multipart/Form-Data</strong></p>
<p>Multipart/Form-Data is an HTTP encoding format commonly used to transfer files and additional form fields through POST requests. It separates individual data elements using a unique boundary string.</p>
<p><strong>A typical multipart request contains:</strong></p>
<p>Content-Type: Identifies the request format as multipart/form-data.</p>
<p>Boundary: Separates individual sections of the request body.</p>
<p>Content-Disposition: Specifies the form field name and file name.</p>
<p>Content-Type of each part: Identifies the format of the individual file or data element.</p>
<p>Closing Boundary: Indicates the end of the multipart payload.</p>
<p>This structure allows applications to send multiple files and different data types within one HTTP request.</p>
<p>Creating Multipart/Form-Data in Boomi</p>
<p>There are two practical approaches to generating multipart payloads in Boomi:</p>
<ol>
<li><strong>Using the Boomi Message Shape</strong></li>
</ol>
<p>The Message Shape can construct a multipart request by combining the boundary, headers, file content and closing delimiter.</p>
<p>A typical process involves:</p>
<p>Receiving file details through API request headers.</p>
<p>Using Set Properties to configure the file name and directory path.</p>
<p>Retrieving the required file through a Disk Connector.</p>
<p>Constructing the multipart payload using the Message Shape.</p>
<p>Returning the generated document through a Return Documents step.</p>
<p>This approach is suitable for straightforward scenarios where the file structure and content length are known in advance.</p>
<p>However, it can introduce challenges when handling files of different sizes and formats. Static content-length values may require manual updates, while complex multipart structures can become difficult to maintain.</p>
<ol start="2">
<li><strong>Using Groovy Script in the Data Process Shape</strong></li>
</ol>
<p>For more dynamic file-handling requirements, a Groovy Script within the Data Process Shape provides another approach.</p>
<p>The process can retrieve multiple files, identify their extensions, determine MIME types and construct the multipart payload programmatically.</p>
<p>A typical implementation includes:</p>
<p>Capturing file names from incoming API headers.</p>
<p>Splitting the input payload when multiple file names are provided.</p>
<p>Setting file names and directory properties.</p>
<p>Retrieving the files using a Disk Connector.</p>
<p>Using Groovy 2.4 to generate multipart sections dynamically.</p>
<p>Calculating the payload length.</p>
<p>Adding the closing boundary and returning the output.</p>
<p>The script can determine common MIME types, including PDF, JSON, XML, CSV, DOCX, XLSX, PPTX, JPEG and PNG.</p>
<p>It also calculates the payload length based on the generated content rather than relying on a manually maintained value.</p>
<p>Important implementation consideration: Binary file content should be handled carefully. Converting arbitrary binary data into strings using ISO-8859-1 is a workaround that requires byte-preserving handling. For production implementations, a byte-oriented multipart construction approach is preferable. The generated payload should also use a unique boundary and correct HTTP headers.</p>
<p><strong>Message Shape vs. Groovy Script: Which Approach Should You Choose?</strong></p>
<p>Comparison</p>
<p>Message Shape</p>
<p>Groovy Script</p>
<p>Configuration</p>
<p>Template-based</p>
<p>Programmatic</p>
<p>Content length</p>
<p>May require manual configuration</p>
<p>Can be calculated dynamically</p>
<p>Multiple file formats</p>
<p>More complex to maintain</p>
<p>Can determine MIME types dynamically</p>
<p>Flexibility</p>
<p>Suitable for simpler structures</p>
<p>Better for complex requirements</p>
<p>Maintenance</p>
<p>Easier for basic payloads</p>
<p>Requires scripting knowledge</p>
<p>The right approach depends on file size, payload complexity, integration requirements and maintainability.</p>
<p><strong>Conclusion</strong></p>
<p>Generating Multipart/Form-Data in Boomi can be achieved using both the Message Shape and Groovy scripting. While the Message Shape is useful for straightforward scenarios, Groovy scripting offers greater flexibility when dealing with multiple files, different formats and dynamically generated payloads.</p>
<p>Choosing the right implementation can help create more adaptable API integrations and improve file exchange between enterprise applications.</p>
<p>Looking to simplify complex API and file-based integrations? As a <a href="https://techygeekhub.com/boomi-partners/">Boomi Partner</a>, TGH Software Solutions delivers expert Boomi Integration Services to help businesses connect applications, streamline data exchange and build scalable enterprise integration solutions that support evolving business needs.</p>
]]></content:encoded></item><item><title><![CDATA[Agentic AI in Enterprise Automation: Why Workflows, APIs, and MCP Matter]]></title><description><![CDATA[Enterprise AI is moving beyond generating text and answering questions. Businesses are exploring how AI systems can interact with tools, access relevant…]]></description><link>https://tghinsights.hashnode.dev/agentic-ai-in-enterprise-automation-why-workflows-apis-and-mcp-matter</link><guid isPermaLink="true">https://tghinsights.hashnode.dev/agentic-ai-in-enterprise-automation-why-workflows-apis-and-mcp-matter</guid><dc:creator><![CDATA[TGH Software Solutions]]></dc:creator><pubDate>Sat, 17 Oct 2026 11:45:41 GMT</pubDate><enclosure url="https://cdn.hashnode.com/uploads/covers/699ca72ccf5def0f6abd2a8d/cb142b29-176b-4622-bcab-c73ffb408931.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Enterprise AI is moving beyond generating text and answering questions. Businesses are exploring how AI systems can interact with tools, access relevant information, and support multi-step workflows across their technology environments. Making these capabilities useful in production, however, requires more than an AI model. It requires reliable integrations, clearly defined permissions, workflow orchestration, and appropriate human oversight.</p>
<p>These challenges were particularly relevant during WorkatoHack: Agentic India 2026, held in Hyderabad on October 10–11. TGH Software Solutions participated in the 24-hour hackathon and received first prize in Enterprise Agentic Workflows and third prize in MCP Ecosystem Builder.</p>
<p>Beyond the results, the event highlighted an important question for enterprise technology teams: how can AI capabilities work reliably with the applications and processes businesses already depend on?</p>
<ol>
<li>What Makes an AI Workflow Agentic?</li>
</ol>
<p>Traditional automation generally follows predefined rules and sequences. When a specific condition is met, the workflow executes its configured actions.</p>
<p>Agentic AI introduces the possibility of systems that can interpret context, select from permitted tools, and work through multiple steps towards a defined objective. Depending on the implementation, an agent may retrieve information, call an API, evaluate a result, and determine the next permitted action.</p>
<p>Consider an illustrative business scenario: an order-processing workflow receives a request, retrieves relevant order information, checks inventory through an approved service, and prepares a recommendation for the operations team.</p>
<p>A conventional workflow can handle predefined steps effectively. An AI-enabled approach may help interpret less structured requests or determine which permitted action is appropriate. Critical business rules, access controls, and approval requirements should remain explicit.</p>
<p>The distinction matters because adding an AI model does not automatically make a process more reliable or more autonomous.</p>
<ol>
<li>Why Integration Remains Essential</li>
</ol>
<p>Enterprise applications rarely operate in isolation. Customer relationship management systems, ERP platforms, data warehouses, ticketing tools, and internal applications each hold different parts of a business process.</p>
<p>Without integration, an AI application may lack the context required to provide a useful response or initiate an appropriate action.</p>
<p>APIs provide structured ways for applications to exchange information and invoke services. Integration platforms can help coordinate those connections, manage data movement, and orchestrate workflows across multiple systems.</p>
<p>For AI-enabled automation, these capabilities help establish a controlled path between a model's output and the business systems that perform the actual work.</p>
<p>A practical architecture should consider:</p>
<p>Context: Does the system have access to the information needed for the task?</p>
<p>Permissions: Which tools, records, and actions is the AI application allowed to access?</p>
<p>Validation: Are inputs and outputs checked before consequential actions occur?</p>
<p>Reliability: What happens when an API fails, data is incomplete, or a workflow times out?</p>
<p>Oversight: Which decisions require human review or approval?</p>
<p>These questions are as important as the model selection itself.</p>
<ol>
<li>Where the Model Context Protocol Fits</li>
</ol>
<p>The Model Context Protocol (MCP) is an open protocol that standardizes how compatible AI applications connect with external tools and context providers.</p>
<p>Rather than requiring every AI application to implement a separate integration pattern for each supported tool, MCP provides a common interaction model. Depending on the implementation, MCP servers can expose tools, resources, or prompts to compatible clients.</p>
<p>For example, an AI application might use an MCP-connected tool to retrieve permitted information from a service. The application can then use that context to help answer a question or support a larger workflow.</p>
<p>MCP and enterprise workflow automation address related but different concerns:</p>
<p>MCP standardizes interactions between compatible AI clients and external capabilities.</p>
<p>APIs expose application functionality and data through defined interfaces.</p>
<p>Workflow orchestration coordinates business activities, conditions, and system interactions.</p>
<p>Governance controls establish which actions are allowed and how they are monitored.</p>
<p>These components can complement one another, but MCP alone does not guarantee secure access, correct results, or successful end-to-end automation. Authentication, authorization, input validation, tool permissions, and monitoring still need to be designed appropriately.</p>
<ol>
<li>What Teams Should Consider Before Deploying Agentic Workflows</li>
</ol>
<p>A successful prototype is only the beginning. Moving an AI-enabled workflow into an enterprise environment requires a clear understanding of its operating boundaries.</p>
<p>Start with a specific business problem. Identify the process bottleneck, the expected outcome, and the tasks that genuinely benefit from AI assistance.</p>
<p>Define permitted actions. Give the system only the tools and permissions required for its intended purpose. Use approval gates for sensitive or consequential operations.</p>
<p>Design for failure. Account for unavailable services, unexpected model outputs, duplicate requests, and incomplete data. Establish appropriate retry, recovery, and escalation mechanisms.</p>
<p>Evaluate outcomes. Measure task completion, error rates, processing time, exception frequency, and the need for human intervention. Compare results with the existing process instead of assuming that AI automatically improves performance.</p>
<p>Keep humans involved where necessary. High-impact decisions and irreversible actions may require explicit approval, depending on the business context and applicable requirements.</p>
<p>These practices help teams evaluate solutions on operational usefulness rather than novelty alone.</p>
<ol>
<li>Lessons from WorkatoHack: Agentic India 2026</li>
</ol>
<p>WorkatoHack brought participants together to explore enterprise automation and AI-related challenges within a demanding 24-hour timeframe.</p>
<p>For TGH Software Solutions, receiving first prize in Enterprise Agentic Workflows and third prize in MCP Ecosystem Builder was a significant team achievement. The two tracks reflected complementary areas of interest: coordinating AI-enabled workflows and connecting AI applications with external capabilities.</p>
<p>The experience also reinforced the value of rapid experimentation, collaborative problem-solving, and evaluating how emerging technologies might address practical enterprise needs.</p>
<p>As a <a href="https://techygeekhub.com/workato-partner/">Workato partner</a>, TGH works within the broader enterprise integration and automation ecosystem. The event was an opportunity to engage with ideas that are increasingly relevant as organizations consider how AI can work alongside their existing applications and business processes.</p>
<ol>
<li>Moving from Experimentation to Enterprise Value</li>
</ol>
<p>Agentic AI, MCP, APIs, and workflow orchestration should not be treated as interchangeable technologies. Each addresses a different part of the broader challenge of building connected, useful, and controllable systems.</p>
<p>The opportunity lies in combining them appropriately: AI can help interpret context and select permitted actions, integration connects the relevant systems, workflow orchestration coordinates execution, and governance establishes the boundaries.</p>
<p>For technology teams, the next step is not simply to automate more tasks. It is to identify where intelligent capabilities can improve a measurable business outcome while preserving reliability, security, and accountability.</p>
<p>WorkatoHack: Agentic India 2026 was one opportunity to explore these questions through practical experimentation. The wider challenge and opportunity is turning promising prototypes into dependable enterprise solutions.</p>
<p>The takeaway: Enterprise AI delivers its greatest potential when intelligent capabilities are connected to real business processes, supported by reliable integrations, and deployed with clear operational controls.</p>
]]></content:encoded></item></channel></rss>