- 8 minutes to read

File Folder Configuration Example

Unlock seamless integration by configuring the Nodinite Pickup Logging Service to fetch JSON Log Events directly from your Windows File Folders or SMB network shares. This guide empowers you to set up secure, scalable, and reliable log event collection for your enterprise systems.

✅ Effortless integration with Windows File Folders and SMB shares
✅ Secure and reliable log event collection
✅ Scalable setup for enterprise environments
✅ Long-term storage and compliance-ready

graph TD subgraph "Folder" roS(fal:fa-folder-open Folder) roBO(fal:fa-trash-can Backout folder) end subgraph "Nodinite instance" roPS(fal:fa-truck-pickup Pickup Service) roPS -.->|Bad/invalid messages| roBO roS --> roPS roPS --> |Long term storage|roDB(fal:fa-database Log Database) end

The diagram above illustrates how the Pickup Service interacts with file folders, processes messages, and stores them in the Nodinite Log Database. Invalid files are routed to the Backout folder for further review.

Folders

The Folders section lets you manage all file folder sources (Windows File Folders and SMB shares) for your log events.

In the Remote Configuration GUI, navigate to the Folders tab. Here, you can add, edit, or remove folder configurations. Each configuration defines how the Nodinite Pickup Log Events Logging Service connects to and processes messages from a specific folder or SMB share.

Folders Configuration Tab
Example of the Folders configuration tab in the Remote Configuration GUI.

Click the Add button to create a new folder configuration. Fill in the required fields, such as folder path, backout folder location, and file filter pattern. You can also configure options for processing child folders and handling empty files.

Folder Configuration Accordion
Example of a Folder configuration accordion in the Remote Configuration GUI.

Expand the accordion for each folder configuration to access advanced settings, including Replace Rules for message processing. These rules allow you to modify message content before it's stored in Nodinite, ensuring consistency and compliance with your logging standards.

Important

Ensure that the folder path (local or SMB share) is accessible from the server where the Pickup Service runs. Verify permissions and network connectivity before enabling a configuration.

General tab

The General tab provides the fundamental settings for your folder configuration within the Remote Configuration GUI.
General Tab
The General tab allows you to enable/disable the configuration and provide a display name and description.

The following key fields are required:

Field Description Required Notes
Enabled Checkbox to activate or deactivate this folder configuration No When unchecked, the Pickup Service will skip this configuration
Display Name User-friendly name for this folder source configuration Yes Used in the GUI and logs for easy identification
Description Optional detailed description of the folder configuration No Helps document the purpose and details of this specific folder setup

Follow these guidelines when configuring the General tab:

  • Use descriptive names that clearly indicate the folder path and purpose (e.g., "Production Logs - Order Events")
  • In the Description field, note important details such as the folder's business purpose, owner contact, or any special processing notes
  • The Display Name appears throughout the Nodinite interface, so keep it concise yet meaningful
  • Leave the configuration disabled during initial setup if you're not ready to start collecting files

Source tab

The Source tab contains the folder path configuration and file processing settings.
Source Tab
The Source tab contains settings for connecting to the folder and configuring file handling options.

The following key fields must be configured for folder connectivity:

Field Description Required Notes
Folder Path The local or network path to monitor for log files Yes For network shares, use \\server\share format; ensure the path is accessible from the Pickup Service server
Backout Folder Destination folder for invalid or unparseable files Yes Use a dedicated backout folder separate from the main source folder to prevent reprocessing
Filter File pattern to match files for processing No Examples: *.json, *.log, order-*.txt; leave empty to process all files
Remove Empty Files Checkbox to automatically delete empty files No When checked, empty files are removed during processing
Include Child Folders Checkbox to recursively process subfolders No When checked, the Pickup Service will search all nested subfolders for matching files
Exclude Child Folders List of specific subfolders to skip during processing No Useful when Include Child Folders is enabled to prevent processing temporary or backup folders

Follow these guidelines when setting up the Source tab:

  • Ensure the folder path is accessible from the server running the Pickup Service (test connectivity before enabling)
  • For network shares, verify SMB/CIFS permissions and ensure the service account has read access
  • Use a descriptive Filter pattern that matches your log file naming convention (e.g., app-*.json)
  • Always configure a Backout Folder separate from your source folder to prevent infinite reprocessing loops
  • Enable Include Child Folders only if you have subfolders containing log events
  • If using Include Child Folders, carefully configure Exclude Child Folders to skip temporary, cache, or backup directories
  • For large folder structures, test with a single folder before scaling to multiple sources

To exclude specific child folders, click the Add Exclude Folder button and provide the full path of each folder to skip.
Exclude Child Folders Configuration
Example of configuring excluded child folders in the Source tab.

Destination tab

The Destination tab configures where processed log events are stored. By default, events are sent to the Nodinite Log API where they are written to the Log Database for long-term storage and analysis.
Destination Tab
The Destination tab contains settings for connecting to the Log API and authentication options.

The following key fields are required for destination configuration:

Field Description Required Notes
Use Log API Checkbox to enable sending events to the Log API Yes When checked, processed events are written to the Log Database through the Log API
Log API Base URL Base URL for your Log API instance Yes Example: http://{host}:{port}/LogAPI/
Protected Checkbox to enable OAuth 2.0 authentication No Check this if you are using an authenticated Log API
Client ID Public identifier for your application (issued by IDP) Conditional Required when Protected is checked
Client Secret Confidential key for application authentication Conditional Required when Protected is checked; keep this secure
Scope Space-separated list of access permissions Conditional Required when Protected is checked (e.g., read write)
IDP Token Endpoint URL where authentication requests are sent Conditional Required when Protected is checked; this is where the client obtains access tokens

Follow these guidelines for the Destination tab:

  • Always ensure Use Log API is checked to maintain proper log event storage
  • For local/development environments, use unprotected Log API URLs (e.g., http://localhost:40002/LogAPI/)
  • For production environments with authentication, check the Protected checkbox and provide valid OAuth 2.0 credentials
  • When using Protected authentication, ensure your Client ID, Client Secret, and Scope are correctly configured with your identity provider (IDP)
  • The IDP Token Endpoint must be accessible from the Pickup Service instance
  • Keep Client Secret values secure and never commit them to version control

Replace Rules

Read about Replace Rules in the shared configuration section. Replace Rules allow you to modify message content before it's stored in Nodinite, ensuring consistency and compliance with your logging standards. Replace Rules Tab
The Replace Rules tab allows you to configure rules for modifying message content.

Configuration file

Note

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

C:\Program Files\Nodinite\Logging Agent - Pickup Service\Settings.json
{
  ...
  "Folders": [
    {
      "Enabled": true,
      "LogApi": "https://localhost/Nodinite/Dev/LogAPI/",
      "UseConfigurationDatabase": false,
      "ConfigurationDatabaseConnectionString": null,
      "Folder": "C:\\Temp\\Nodinite.LogAgent.PickupService.Test",
      "BackoutFolder": "C:\\Temp\\BackoutFiles",
      "RemoveEmptyFiles": true,
      "Filter": "*.json",
      "IncludeChildFolders": false,
      "ExcludeChildFolders": [
        {
          "Name": "C:\\Temp\\Nodinite.LogAgent.PickupService.Test\\NotMe"
        }
      ],
      "ReplaceRules": [
        {
          "Name": "Fix Endpoint real customer id to {customerId}",
          "ReplaceName": false,
          "ReplaceUri": true,
          "Pattern": "/([0-9]{4,})$",
          "Group1Value": "{customerId}"
        }
      ]
    }
  ]
  ...                      
}

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

Property Description Value Example Comment
Folder The folder to look for log files For a network share, use \\server\share in the JSON configuration Use \\ to escape \ in JSON
BackoutFolder The folder for invalid log files For a network share, use \\server\theothershare Do not use a child folder if IncludeChildFolders is enabled unless you have a proper exclude configuration
RemoveEmptyFiles When true, the system removes empty files true, false Empty files should not exist
Filter A file filter to match files *.log or *.json Can use wildcards (* and ?)
IncludeChildFolders Search for JSON Log Event in subfolders true or false
ExcludeChildFolders Array of child folders to exclude if IncludeChildFolders is true Provide the full path
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

You must restart the Nodinite Pickup Log Events Logging Service for configuration changes to take effect.

Next Step