- 4 minutes to read

Custom Logging, FAQ, Troubleshooting, Storage Options, Pickup Service Custom Logging, storage, Azure Service Bus, file share, queue, database, RabbitMQ, MSMQ, intermediate storage What intermediate storage options work with Pickup Service? Learn about queues, file shares, databases, and cloud storage for asynchronous logging.

Intermediate Storage Options for Pickup Service

What intermediate storage options work with Pickup Service?

Pickup Service supports multiple intermediate storage types—choose based on your infrastructure (cloud vs on-premises), reliability requirements, and existing technology stack.

Supported Storage Options

Best for: Azure-hosted integrations, high-volume scenarios, cloud-native architectures

  • ✅ Highly available - 99.9% SLA, automatic failover
  • ✅ Scalable - handles millions of messages/day
  • ✅ Secure - built-in authentication, encryption at rest/in-transit
  • ✅ Dead-letter queue - automatically handles poison messages
  • ✅ No infrastructure management - fully managed PaaS

Configuration: Pickup Service connects via connection string, fetches JSON Log Events from queue.

Best for: On-premises deployments, simple setups, low-medium volume

  • ✅ Simple - no additional infrastructure (SMB/CIFS shares)
  • ✅ Local or network - local folders, Windows file shares, NAS devices
  • ✅ Auditable - files persist until Pickup Service processes them
  • ✅ Debuggable - manually inspect JSON files during troubleshooting

Configuration: Integrations write JSON files to shared folder, Pickup Service monitors folder, processes files.

Pattern: \\fileserver\nodinite-logs\integration-name\*.json

Databases (SQL Server, PostgreSQL, MySQL)

Best for: Integrations already using databases, transactional consistency requirements

  • ✅ Transactional - log events committed with business transactions
  • ✅ Queryable - inspect pending logs via SQL during troubleshooting
  • ✅ Existing infrastructure - reuse database servers

Configuration: Integrations INSERT JSON Log Events into table, Pickup Service polls table, processes rows, deletes/archives.

Table schema:

CREATE TABLE NodiniteLogEvents (
    Id INT IDENTITY PRIMARY KEY,
    JsonLogEvent NVARCHAR(MAX),
    CreatedDate DATETIME DEFAULT GETDATE()
)

RabbitMQ

Best for: Organizations already using RabbitMQ, multi-platform environments

  • ✅ Open-source - no licensing costs
  • ✅ Cross-platform - works on Linux, Windows, containers
  • ✅ Reliable - message persistence, acknowledgments
  • ✅ Flexible routing - exchanges, queues, bindings

Configuration: Integrations publish JSON Log Events to RabbitMQ queue, Pickup Service subscribes.

Azure Storage Queues

Best for: Cost-sensitive Azure deployments, simpler than Service Bus

  • ✅ Low cost - cheaper than Azure Service Bus
  • ✅ Simple - basic queue functionality
  • ✅ Scalable - millions of messages
  • ⚠️ No dead-letter queue - less sophisticated than Service Bus

Configuration: Integrations write to Azure Storage queue, Pickup Service polls queue.

MSMQ (Microsoft Message Queuing)

Best for: Legacy Windows environments, on-premises with existing MSMQ

  • ✅ Windows-native - built into Windows Server
  • ✅ Transactional - MSDTC support
  • ⚠️ Legacy technology - prefer Azure Service Bus or RabbitMQ for new deployments

Configuration: Integrations write to MSMQ queue, Pickup Service reads from queue.

Amazon SQS

Best for: AWS-hosted integrations, multi-cloud deployments

  • ✅ AWS-native - integrates with Lambda, EC2, ECS
  • ✅ Scalable - unlimited messages
  • ✅ Reliable - 99.9% availability SLA

Configuration: Integrations publish to SQS queue, Pickup Service polls via AWS SDK.

Choosing the Right Storage

Scenario Recommended Storage Why
Azure Functions, Azure Logic Apps Azure Service Bus Native integration, highly available
On-premises, low-medium volume File Shares Simple, no additional infrastructure
Transactional logging with database commits SQL Server / PostgreSQL Consistency with business transactions
Existing RabbitMQ infrastructure RabbitMQ Reuse existing message broker
AWS Lambda, ECS workloads Amazon SQS Native AWS integration
Cost-sensitive Azure Azure Storage Queues Lower cost than Service Bus
Legacy Windows environments MSMQ Already installed on Windows Server

Multiple Storage Types Simultaneously

Advanced: Configure multiple Pickup Service instances monitoring different storage types:

  • Pickup Service #1 - Monitors Azure Service Bus queue (cloud integrations)
  • Pickup Service #2 - Monitors file share (on-premises integrations)
  • Pickup Service #3 - Monitors SQL Server table (database-centric integrations)

All logs centralized in Nodinite regardless of storage type.

Configuration Steps

  1. Choose intermediate storage - Based on infrastructure and requirements
  2. Install Pickup Service - On Windows Server with access to storage
  3. Configure Pickup Service - Set connection strings, folder paths, database credentials
  4. Update integration logging code - Write JSON Log Events to chosen storage
  5. Monitor Pickup Service - Verify logs flowing into Nodinite

Related Topics:
Pickup Service Installation Guide
Pickup Service Configuration
Asynchronous Logging Architecture

See all FAQs: Troubleshooting Overview

Next Step

Back to Custom Logging Overview