# Wrapper Log/ Log Level INFO

**URL:** <https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428>\
**Category:** Ignition\
**Created:** [November 25, 2025, 5:40pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428 "2025-11-25T17:40:25Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:40pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/1 "2025-11-25T17:40:25Z")

</div>

We are using solarwind to monitor the log file located in the installation folder ignition/logs/wrapper.

Unfortunately, regardless of the level that is configured for each log in the scripts (Ex. logger.error('this is an error') , the wrapper log will only show the level as INFO.

We noticed that the level of the log gets included in the message with the initial only (Ex. E this is an error). However, the actual field for the level is still showing INFO.

I looked at the Tanuki Software manual for the Java Service wrapper and got the idea to attempt the below changes in the config file.

I modified the config file to display only logs that are WARN or above, but no luck. Instead the logs stops displaying any new entries as its trying to filter out all the INFO logs. I did restart the gateway after every config file change was done.

# Log Level for log file output. (See docs for log levels)  
wrapper.logfile.loglevel=WARN

I also tried using the system.util.setLoggingLevel(loggerName, loggerLevel) to attempt to modify the log level for an existing logger and no luck either.

Finally, I tried to change the log levels at the gateway (Status/Logs / click the edit icon and list all the logs and modify each one manually.) No luck.

I tried this both in 8.1 and 8.3 and had the same result.

As a last instance, I was thinking of changing the format of the log by changing the below config to only display the message and try to find a way to only look at the first character of each entry (I=Info,W=warn,E=error).

Is there a way to make ignition log the correct level in the log level field rather than logging everything as info?

# Format of output for the console. (See docs for formats)  
wrapper.console.format=M

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 25, 2025, 5:45pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/2 "2025-11-25T17:45:00Z")

</div>

Tried setting `wrapper.logfile.format=M` in `ignition.conf`?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [November 25, 2025, 5:45pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/3 "2025-11-25T17:45:26Z")

</div>

No, because the wrapper is simply logging the stdout of the java process--it doesn't interpret the text from stdout at all. Any entries in the wrapper log that aren't INFO come from the **wrapper itself**.

You need to play with the **logback.xml** configuration file.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:46pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/4 "2025-11-25T17:46:40Z")

</div>

I did try it. THanks for the response.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 25, 2025, 5:46pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/5 "2025-11-25T17:46:58Z")

</div>

> [@pturmel](#):
>
> You need to play with the **logback.xml** configuration file.

This is how you would change the single letter levels used by the Ignition portion of the logs to something else.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:47pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/6 "2025-11-25T17:47:18Z")

</div>

Thank you Mr Turmel. Ill research this option.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:49pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/7 "2025-11-25T17:49:34Z")

</div>

I am not trying to change the single letters. My goal is to display the log levels, including Warn,Error, and Fatal. Right now everything is logged as INFO.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 25, 2025, 5:51pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/8 "2025-11-25T17:51:13Z")

</div>

Make the change I suggested to get rid of the service wrapper's own log levels and you'll be left with only the Ignition log levels.

Changes to ignition.conf won't be seen until you restart the Ignition Gateway.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:54pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/9 "2025-11-25T17:54:40Z")

</div>

I tried that. I do get the Initial of the log level type but its part of the message. By doing this I am hidding the log level and only displaying the message.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/c/dc50805682a1cfe0853b0e2eca0b27729b381adb.png)

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 25, 2025, 5:56pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/10 "2025-11-25T17:56:17Z")

</div>

The "Message" from the service wrapper is actually the entire logging statement from Ignition, with its own level, timestamp, message, etc...

The log level is that single letter. If you want it formatted differently you need to modify logback.xml.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:57pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/11 "2025-11-25T17:57:35Z")

</div>

Thank you both for the help.

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 5:59pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/12 "2025-11-25T17:59:28Z")

</div>

Do you have a sample code on how the xml file should look like to make it work that way?

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 25, 2025, 6:00pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/13 "2025-11-25T18:00:21Z")

</div>

Somewhere in that file there should be a pattern like this:

```python
<pattern>%.-1p [%-30c{1}] [%d{HH:mm:ss.SSS}] [%t]: %m %X%n)</pattern>

```

change it to:

```python
<pattern>%p [%-30c{1}] [%d{HH:mm:ss.SSS}] [%t]: %m %X%n)</pattern>

```

see [Chapter 6: Layouts](https://logback.qos.ch/manual/layouts.html#ClassicPatternLayout)

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 25, 2025, 6:21pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/14 "2025-11-25T18:21:53Z")

</div>

> [@Kevin.Herron](#):
>
> `<pattern>%p [%-30c{1}] [%d{HH:mm:ss.SSS}] [%t]: %m %X%n)</pattern>`

Thank you. It still only showing as part of the message but I think its getting me somewhere.

I could not make it show in the level field. Right now i am just using the M in the config file.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/8/8/889a6c0e16e370f130ef30990d44ac2676c44664.png)

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [November 25, 2025, 10:52pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/15 "2025-11-25T22:52:08Z")

</div>

I would skip the wrapper.log entirely.

Configure logback to write to a separate file entirely in whatever format you choose.

This post has some possible inspiration:

> [@Ignition Observability](https://forum.inductiveautomation.com/t/ignition-observability/110650):
>
> Overview Introduction / Motivation Ignition doesn’t run in a vacuum—it sits at the center of controllers, networks, databases, brokers, and other infrastructure and applications that all depend on each other. In IT operations, the way to keep that whole picture healthy is observability: a single place to see correlated traces, metrics, and logs across every layer so you can spot causes and effects quickly. At [4IR](https://www.4ir.cloud), we already monitor the rest of our ecosystem this way, but Ignition was the missin…

---

<div class="post-metadata">

**Author:** ![felipemvcab](https://avatars.discourse-cdn.com/v4/letter/f/53a042/32.png) [@felipemvcab](https://forum.inductiveautomation.com/u/felipemvcab)\
**Post date:** [November 26, 2025, 6:11pm UTC](https://forum.inductiveautomation.com/t/wrapper-log-log-level-info/112428/16 "2025-11-26T18:11:06Z")

</div>

THank you very much. Ill explore this option too. For now we were able to accomplish the goal by just modifying the xml file as suggested by kevin and turmel . By looking at the layout file, we modified the patter to look like this. Solarwind is now able to pick it up.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/0/00f1cb3b461282c69b0f514cd3eea11cbf5d487e.png)
