---
title: MQTT Logging Configuration
slug: uns/mqtt-logging-configuration
docTags: 
createdAt: 2026-03-27T14:47:46.081Z
---

The MQTT broker exposes two parameters in `values.yaml` to control log verbosity.

| Parameter            | Type    | Default | Description                      |
| -------------------- | ------- | ------- | -------------------------------- |
| `mqtt.logLevel`      | string  | `info`  | Controls the log verbosity level |
| `mqtt.mqttLogsDebug` | boolean | `false` | Enables deep packet tracing      |

Set log levels to return the following:

- `info` Standard operational messages and high-level events
- `error` Only critical failures and error messages
- `warn` All warning and error messages
- `debug` All events and connection details

Deep packet tracing is intended for advanced troubleshooting that includes information on QoS flows, subscription logic, and low-level connection operations. Only enable this parameter for deep debugging as the system generates a high volume of log data.

Set logging values in the following ways:

- Set values when you install
- Edit the `values.yaml` locally and install from the local Helm chart
- Apply changes to a running installation with `helm upgrade`

## Set Values at Install Time (OCI Registry)

Use `--set` flags to override values at install time without pulling the Helm chart.

To set the log level:

```bash
helm install uns oci://quay.io/litmusautomation/charts/litmus-uns \
  --version=1.3.4 --wait --namespace uns \
  --set "imagePullSecrets[0].name=litmusautomation-uns-centralportal-pull-secret" \
  --set "mqtt.logLevel=debug"
```

To enable deep packet tracing:

```bash
helm install uns oci://quay.io/litmusautomation/charts/litmus-uns \
  --version=1.3.4 --wait --namespace uns \
  --set "imagePullSecrets[0].name=litmusautomation-uns-centralportal-pull-secret" \
  --set "mqtt.logLevel=debug" \
  --set "mqtt.mqttLogsDebug=true"
```

## Edit values.yaml in a Local Chart

Edit the `values.yaml` locally and install from the local Helm chart

1. Pull the Helm chart.

:::CodeblockTabs{indent="2"}
```bash
helm pull oci://quay.io/litmusautomation/charts/litmus-uns --version=1.3.4 --untar
```
:::

2. Edit the `litmus-uns/values.yaml` file. Locate the `mqtt` section and update `logLevel` and `mqttLogsDebug` values.

:::CodeblockTabs{indent="2"}
```yaml
mqtt:
  logLevel: debug       # Options: error, warn, info, debug
  mqttLogsDebug: true   # Set to true only for deep troubleshooting
```
:::

3. Install from the local chart.

:::CodeblockTabs{indent="2"}
```bash
helm install uns path/to/litmus-uns --wait --namespace uns \
  --set "imagePullSecrets[0].name=litmusautomation-uns-centralportal-pull-secret"
```
:::

## Apply Changes to a Running Installation

Use `helm upgrade` with the same flags to update an existing deployment with the following command.

```bash
helm upgrade uns oci://quay.io/litmusautomation/charts/litmus-uns \
  --version=1.3.4 --wait --namespace uns \
  --set "imagePullSecrets[0].name=litmusautomation-uns-centralportal-pull-secret" \
  --set "mqtt.logLevel=debug" \
  --set "mqtt.mqttLogsDebug=true"
```

Alternatively, update with a local `values.yaml` override file.

```bash
helm upgrade uns path/to/litmus-uns --wait --namespace uns \
  --values my-overrides.yaml
```

## Reverting to Defaults

Reset to production default settings when troubleshooting is complete.

```bash
helm upgrade uns oci://quay.io/litmusautomation/charts/litmus-uns \
  --version=1.3.4 --wait --namespace uns \
  --set "imagePullSecrets[0].name=litmusautomation-uns-centralportal-pull-secret" \
  --set "mqtt.logLevel=info" \
  --set "mqtt.mqttLogsDebug=false"
```

