- 3 minutes to read

MSMQ Configuration Example

Important

This feature has been deprecated in version 7.1.x and later. You must either migrate to a supported configuration type or continue using an older non-supported version.

Effortlessly integrate your enterprise systems by configuring the Nodinite Pickup Logging Service to fetch JSON Log Events directly from your MSMQ queues. This guide walks you through secure, scalable, and reliable log event collection using Microsoft Message Queuing.

✅ Seamless integration with MSMQ for real-time log event collection
✅ Secure and compliant long-term storage of log data
✅ Scalable configuration for enterprise environments
✅ Automated handling of invalid messages with backout queue support

graph TD subgraph "MSMQ" roS(" Queue") roBO(" Backout Queue") end subgraph "Nodinite instance" roPS(" Pickup Service") roPS -.->|Bad/invalid messages| roBO roS --> roPS roPS --> |Long term storage|roDB(" Log Database") end style roS fill:#87CEEB style roBO fill:#FF6B6B style roPS fill:#90EE90 style roDB fill:#90EE90

Diagram: MSMQ integration showing message flow from queue to Pickup Service, with color-coded components (blue=queue, green=healthy/active services, red=backout queue for failed messages). Invalid messages are routed to the Backout Queue for review.

MSMQs

The MSMQs section lets you manage all MSMQ queue sources for your log events.

You configure these sources in the Settings.json file, which uses JSON format. The default path is:

C:\Program Files\Nodinite\Logging Agent - Pickup Service\Settings.json
{
  ...
  "MSMQs": [
    {
      "Enabled": true,
      "LogApi": "https://localhost/Nodinite/Dev/LogAPI/",
      "UseConfigurationDatabase": false,
      "ConfigurationDatabaseConnectionString": null,
      "ActiveConsumers": 4,
      "Server": "localhost",
      "Queue": "Nodinite.LogAgent.PickupService.Test",
      "DeadLetterQueue": "Nodinite.LogAgent.PickupService.Test.DLQ",
      "ReplaceRules": [
        {
          "Name": "Fix Endpoint real customer id to {customerId}",
          "ReplaceName": false,
          "ReplaceUri": true,
          "Pattern": "/([0-9]{4,})$",
          "Group1Value": "{customerId}"
        }
      ]
    }
  ]
  ...                      
}

MSMQs is an array of MSMQ queue configurations. Each entry defines how the Log Agent connects to and processes messages from a specific MSMQ queue. This setup ensures your Nodinite JSON Log Events are reliably collected and managed.

Property Description Value Example Comment
ActiveConsumers Number of consumers the agent uses to collect messages 1-n A positive integer between 1 and 4 is recommended
Server Name of the Windows server with MSMQ
Queue Name of the MSMQ Queue to pick up JSON Log Event from NOTE: Only the queue name
DeadLetterQueue Name of the Dead Letter Queue for invalid or failed events
Enabled See the Shared Configuration section for more info
LogAPI See the Shared Configuration section for more info
UseConfigurationDatabase See the Shared Configuration section for more info
ConfigurationDatabaseConnectionString See the Shared Configuration section for more info
ReplaceRules See the shared Replace Rules section for more info

Important

When you are done editing the configuration, you must restart the Nodinite Pickup Logging Service for configuration changes to take effect.

Configuration file

Note

This section applies for older versions (<7.1.x) of the Nodinite Pickup Log Events Logging Service.

For configuration details in the Settings.json file format, please refer to the Shared Configuration section in the main configuration guide.


Next Step