MessageProcessingBatchSize - System Parameter
The MessageProcessingBatchSize System Parameter sets how many Log Events the Logging Service fetches from a Log Database in each batch when it processes messages. It mainly controls how much message data the Logging Service holds in memory at once.
At a Glance
| Property | Value |
|---|---|
| Key | MessageProcessingBatchSize |
| Data type | integer (number of Log Events per batch) |
| Default | 100 |
| Read by | Logging Service |
| Takes effect | On the next processing run; no restart needed |
| Status | ✅ Active |
| Since | Nodinite 3.0 |
How It Works
One message processing run fetches batches of up to MessageProcessingBatchSize Log Events until the backlog is empty, and processes each batch with at most 25 threads. The batch size therefore decides how much message data, payload and context, the Logging Service keeps in RAM at the same time; it has little effect on throughput. How often a run starts is fixed, see MessageProcessingTimerInterval. The full processing pipeline is described in the Logging Service Performance section.
Warning
An invalid value, or
0, is only written to the Logging Service log. The Logging Service then processes nothing, and unprocessed Log Events pile up in the Log Database until you correct the value.
Choosing a Value
- ✅ Keep the default
100. There is no minimum or maximum, but bigger batches are not much faster. - Raise the value only when your messages are small. With large messages, batch size × message size decides the memory use of the Logging Service, so a high value can exhaust RAM on the server.
- To protect the Logging Service from single very large messages, set MessageProcessingMaxBodySize instead.