LogLocations - System Parameter
LogLocations tells the Logging Service where to place the files of each new Log Database: data, image data, index, primary, and transaction log, on one or several disks. With several configurations, the Logging Service rotates through them round-robin. It is one of the System Parameters applied in How a new Log Database is created.
At a Glance
| Property | Value |
|---|---|
| Key | LogLocations |
| Data type | json |
| Default | Empty (null): SQL Server default locations apply |
| Read by | Logging Service |
| Takes effect | Within about 15 seconds; no restart needed. Applies to the next Log Database the Logging Service creates. |
| Status | ✅ Active |
| Since | Nodinite 4.3.0.26; renamed from ImLogLocations in Nodinite 7 |
How It Works
SQL Server's own settings only hold one default folder for data files and one for log files.

SQL Server Database Settings hold only the DATA, LOG, and Backup default locations.
A Nodinite Log Database has more file groups, and LogLocations lets you put each on its own disk to spread the read and write load:
| File group | JSON property | Holds |
|---|---|---|
| Data | CustomPathData |
The main tables |
| ImageData | CustomPathImagedata |
Message payloads, kept apart from the event tables to reduce fragmentation |
| Index | CustomPathIndex |
Clustered and other indexes |
| Primary | DefaultPath |
The SQL Server primary file (not used for Nodinite data) |
| Log | DefaultPathLog |
The transaction log |
The recovery model of the new Log Database is set by LogDatabaseRecovery, not by this parameter.
When the value is empty, SQL Server places every file in its default locations. When it holds configurations, the Logging Service picks one for each new Log Database, creates the files in its folders, and updates LastOrderDeployed so the next Log Database uses the next configuration, wrapping back to the first.
set?"} B -- No --> C["fa:fa-folder SQL Server default locations"] B -- Yes --> D["fa:fa-list-ol Next configuration
by Order"] D --> E["fa:fa-hard-drive Files created in its folders"] E --> F["fa:fa-rotate LastOrderDeployed updated"]
Diagram: how the Logging Service chooses file locations for a new Log Database.
Value Format
| Property | Type | Default | Meaning |
|---|---|---|---|
Configurations |
array | – | One entry per disk layout; the Logging Service rotates through them. |
Configurations[].CustomPathData |
string | – | Folder for the Data file group. |
Configurations[].CustomPathImagedata |
string | – | Folder for the ImageData file group. |
Configurations[].CustomPathIndex |
string | – | Folder for the Index file group. |
Configurations[].DefaultPath |
string | – | Folder for the primary file. |
Configurations[].DefaultPathLog |
string | – | Folder for the transaction log. |
Configurations[].Order |
integer | – | Zero-based position of the configuration in the rotation. |
LastOrderDeployed |
integer | 0 |
Rotation position; the Logging Service updates it, so set it to 0 when you start. |
Paths are folders on the SQL Server host. In JSON, write each backslash twice.
Example: One Disk Instead of the SQL Server Defaults
All files go to disk H:.
{
"Configurations": [
{
"CustomPathData": "H:\\MSSQLSERVER\\DATA\\",
"CustomPathImagedata": "H:\\MSSQLSERVER\\DATA\\",
"CustomPathIndex": "H:\\MSSQLSERVER\\DATA\\",
"DefaultPath": "H:\\MSSQLSERVER\\DATA\\",
"DefaultPathLog": "H:\\MSSQLSERVER\\LOG\\",
"Order": 0
}
],
"LastOrderDeployed": 0
}
Example: Four Disks in Three Rotating Configurations
Data, image data, and index rotate over K:, L:, and M:; the primary file and the transaction log stay on N:.
{
"Configurations": [
{
"CustomPathData": "K:\\MSSQLSERVER\\DATA\\",
"CustomPathImagedata": "L:\\MSSQLSERVER\\DATA\\",
"CustomPathIndex": "M:\\MSSQLSERVER\\DATA\\",
"DefaultPath": "N:\\MSSQLSERVER\\DATA\\",
"DefaultPathLog": "N:\\MSSQLSERVER\\LOG\\",
"Order": 0
},
{
"CustomPathData": "M:\\MSSQLSERVER\\DATA\\",
"CustomPathImagedata": "K:\\MSSQLSERVER\\DATA\\",
"CustomPathIndex": "L:\\MSSQLSERVER\\DATA\\",
"DefaultPath": "N:\\MSSQLSERVER\\DATA\\",
"DefaultPathLog": "N:\\MSSQLSERVER\\LOG\\",
"Order": 1
},
{
"CustomPathData": "L:\\MSSQLSERVER\\DATA\\",
"CustomPathImagedata": "M:\\MSSQLSERVER\\DATA\\",
"CustomPathIndex": "K:\\MSSQLSERVER\\DATA\\",
"DefaultPath": "N:\\MSSQLSERVER\\DATA\\",
"DefaultPathLog": "N:\\MSSQLSERVER\\LOG\\",
"Order": 2
}
],
"LastOrderDeployed": 0
}

A LogLocations value that overrides the SQL Server default locations for new Log Databases.
Choosing a Value
- Leave it empty when the SQL Server default locations are fine.
- Create the folders on the SQL Server host first, and make sure the SQL Server service account can write to them.
- Agree on the disk layout with your DBA; see SQL Server Sysadmin Requirements for coordinating file locations with DBA policy.
- Size each disk for at least one full Log Database (SizeToSplitDatabaseOn).