---
title: Logging Configuration
slug: logging-configuration
docTags: 
createdAt: 2026-03-19T02:13:42.066Z
---

Logging for Activate is controlled via an XML configuration stored in the //Resources/Configuration/LoggingConfiguration parameter. This configuration defines how log files are created, sized, and retained across the platform.  This configuration is available from version 8.3.8.

### Example configuration

```xml
<configuration memorise="false">
  <files>
    <file name="Activate.Azure.log"
          maxSizeBytes="1024"
          keepLast="10"
          filename="Activate.Azure.log" />

    <file name="Activate.Orchestrator.log"
          maxSizeBytes="1024"
          keepLast="5"
          filename="Activate.Orchestrator.log" />

    <file name="Activate.Scheduler.Log"
          maxSizeBytes="1024"
          keepLast="0"
          filename="Activate.Scheduler.Log" />
  </files>
</configuration>
```

### Configuration behaviour

**memorise**

- Controls whether the logging configuration is cached in memory.&#x20;
- true (default): Configuration is cached. Changes require a service restart to take effect.&#x20;
- false: Disables caching, allowing configuration changes to be picked up dynamically (useful for debugging or tuning).&#x20;
- This setting itself is cached, so switching between true and false still requires a restart.&#x20;

**files / file entries**

- Each \<file> element defines configuration for a specific log file.&#x20;
- If a log file is not explicitly defined, default behaviour applies:&#x20;
  - maxSizeBytes: Falls back to the value defined in the ProvisioningFileWriter.&#x20;
  - keepLast: Defaults to 0 (no historical files retained).&#x20;

**maxSizeBytes**

- Specifies the maximum size of the log file before rotation occurs.&#x20;
- Overrides the value provided in the ProvisioningFileWriter constructor if present.&#x20;
- If not specified, the constructor value is used.&#x20;

**keepLast**

- Defines how many historical log files to retain.&#x20;
- 0 means no history is kept (files are overwritten).&#x20;

### ProvisioningFileWriter interaction

If no maxSizeBytes is defined in the logging configuration, the value provided when the log writer is instantiated will apply:

:::BlockQuote
using (ProvisioningFileWriter log = new ProvisioningFileWriter("Activate\_MyLog.log", 512))
:::

In this example, the log file will use a maximum size of 512 bytes unless overridden by the XML configuration.

### Usage notes

- Reducing keepLast will immediately remove any existing log files beyond the new limit. Back up logs if retention is required.&#x20;
- Use memorise="false" only during troubleshooting or configuration changes. For normal operation, caching should remain enabled to avoid unnecessary overhead.&#x20;

