The properties that logd and friends react to are:

| Name  | Type   | Default | Description |
| :---- | :----: | :-----: | :---------- |
| ro.logd.auditd | bool | true | Enable selinux audit daemon. |
| ro.logd.auditd.dmesg | bool | true | selinux audit messages sent to dmesg. |
| ro.logd.auditd.main | bool | true | selinux audit messages sent to main. |
| ro.logd.auditd.events | bool | true | selinux audit messages sent to events. |
| persist.logd.security | bool | false | Enable security buffer. |
| ro.organization\_owned | bool | false | Override persist.logd.security to false. |
| ro.logd.kernel | bool | svelte+ | Enable klogd daemon |
| ro.debuggable | number |     | If not "1", ro.logd.kernel defaults to false.
| logd.logpersistd.enable | bool | auto | Safe to start logpersist daemon service. |
| logd.logpersistd | string | persist | Enable logpersist daemon, "logcatd" turns on logcat -f in logd context. Responds to logcatd, clear and stop. |
| logd.logpersistd.buffer | number | persist | logpersistd buffers to collect. |
| logd.logpersistd.size | number | persist | Max number of rotated logs. |
| logd.logpersistd.rotate\_kbytes | number | persist | logpersistd output file size in KB. |
| persist.logd.logpersistd | string | | Enable logpersist daemon, "logcatd" turns on logcat -f in logd context. |
| persist.logd.logpersistd.buffer | number | all | logpersistd buffers to collect. |
| persist.logd.logpersistd.size | number |  | Max number of rotated logs. |
| persist.logd.logpersistd.count | number | | Max number of rotated logs. |
| persist.logd.logpersistd.rotate\_kbytes | number | 2048 | logpersistd output file size in KB. |
| persist.logd.size | number | ro | Global default size of the buffer for all log ids at initial startup, at runtime use: logcat -b all -G \<value\> |
| ro.logd.size | number | svelte | Default for persist.logd.size. Larger platform default sizes than 256KB are known to not scale well under log spam pressure. Address the spam first, resist increasing the log buffer. |
| persist.logd.size.\<buffer\> | number | ro | Size of the buffer for \<buffer\> log. |
| ro.logd.size.\<buffer\> | number | svelte | Default for persist.logd.size.\<buffer\>. |
| ro.config.low\_ram | bool | false | If true, ro.logd.kernel defaults to false, and (if ro.debuggable is unset/false) logd.size is 64K instead of 256K. |
| persist.logd.filter | string | | Pruning filter to optimize content. At runtime use: logcat -P "\<string\>" |
| ro.logd.filter | string | `"\~! \~1000/!"` | Default for persist.logd.filter. This default means to prune the oldest entries of chattiest UID, and the chattiest PID of system (1000, or AID\_SYSTEM). |
| log.tag | string | persist | The global logging level, VERBOSE, DEBUG, INFO, WARN, ERROR, ASSERT or SILENT. Only the first character is the key character. |
| persist.log.tag | string | build | Default for log.tag. |
| log.tag.\<tag\>  | string | persist | The \<tag\> specific logging level. |
| persist.log.tag.\<tag\> | string | build | Default for log.tag.\<tag\> |
| logd.buffer\_type | string | (empty) | The log buffer type: 'simple' or 'serialized' (default: 'serialized'). |

NB
----
- auto - managed by /init
- svelte - see ro.config.low\_ram for details.
- svelte+ - If empty, default to true if `ro.config.low_ram == false && ro.debuggable == true`
- ro - \<base property\> temporary override, ro.\<base property\> platform default.
- persist - \<base property\> override, persist.\<base property\> platform default.
- build - VERBOSE for native, DEBUG for jvm isLoggable, or developer option.
- number - support multipliers (K or M) for convenience. Range is limited
  to between 64K and 256M for log buffer sizes. Individual log buffer ids
  such as main, system, ... override global default.
- Pruning filter rules are specified as UID, UID/PID or /PID. A '~' prefix indicates that elements
  matching the rule should be pruned with higher priority otherwise they're pruned with lower
  priority. All other pruning activity is oldest first. Special case ~! represents an automatic
  pruning for the noisiest UID as determined by the current statistics.  Special case ~1000/!
  represents pruning of the worst PID within AID\_SYSTEM when AID\_SYSTEM is the noisiest UID.
