No output_log since 5.4?

Hi,

I was wondering if anyone else is having this problem. Ever since upgrading to 5.4 our standalone windows builds dont create an output_log.txt. The strange thing is that it doesnt happen on a teammates machine, with the same build.

I doublechecked and the folder is not readonly, and i have plenty of disk space. There is one other report like this, but its using the reverted forum so i cant reply there.

It’s in C:/users/UserName/AppData/LocalLow/CompanyName/ProductName on my computer.

2 Likes

Not sure this is relevant, but i think there’s a new feature that you can set whatever log level the game client generates (this is controlled from the player settings). Maybe, on your machine the logger is set to not output anything? (just a guess)

Thanks, my log is indeed there. There is no mention of this in the changelogs nor in the documentation.

It’s probably related to Low Integrity Mode (Designing Applications to Run at a Low Integrity Level | Microsoft Learn). If your app is running in low integrity mode, the application will write to

Registry

Low-integrity processes can write to and create subkeys under HKEY_CURRENT_USER\Software\AppDataLow

File system

Low-integrity processes can write and create subfolders under %USER PROFILE%\AppData\LocalLow.

Sorry for the missing docs, will fix that.

I’ve submitted a bug report about this, they said it was indeed a bug. Can you confirm, or is this intended?

Is there any way to know for certain? We often ask our users to attach a log file with a bugreport.

Can you paste the case number here?

#818601

Thank you for the quick response!

Well, the log says that your process is running in low integrity level, that’s why it puts the log in that path…

Can you do this - download Process Explorer - Sysinternals | Microsoft Learn

Right click on Company Name, and select Integrity Level, launch your player, and see what Integrity it contains, or better yet copy-paste the screenshot.


Sorry for the overload of information, but isnt that the weirdest. On the right you see our game running, and process explorer says its on High. On the left you see Verdun_Data which shows no output_log, i could find it it in Appdata/LocalLow/CompanyName. In the log it does say its in low integrity.

Its a Development build, perhaps that matters?

So yes, the bug is real… usually the applications will run in Medium integrity level, they inherit this from explorer, but as you saw your explorer is running in High integrity level, not sure why, maybe because UAC is disabled or you’re running in true administrator mode, it’s a bit unsafe, because that means all your programs (even downloaded from internet) are running with administrative privileges.

In any case, our code incorrectly assumes that High integrity level is Low integrity level, the bug doesn’t occur if application is running in Medium integrity level.

I’ll fix this, sorry for the inconvience

Thanks a ton! I do have UAC disabled, and i am an administrator. I like to live dangerously.

2 Likes

I have the same thing going on. This additionally effects the registry entry for the player prefs which are now in Software/AppDataLow/Software.

Please correct me if I am wrong, Unity will assume that it is running in Low Integrity mode in case that Explorer process is not running in Medium Integrity mode and will behave as if it is in Low Integrity?

This issue is found in Unity 5.4.0x? Was it fixed in 5.4.1 ?

Thank you.

In case above, explorer was running in High integrity mode. I checked the bug, it seems it will be fixed in 5.4.1p1

Thank you for your reply.

Is there an ETA on the 5.4.1p1 update?

It seems i

It seems it should happen today, keep an eye for https://unity3d.com/unity/qa/patch-releases?version=5.4

So it seems it was fixed in https://unity3d.com/unity/whats-new/unity-5.4.2

WindowsStandalone: Application launched with high integrity level will no longer act as low integrity application. (818601)

just in case anyone came across this (Like i) and was wondering if it actually got fixed.

Just ran into this issue with 5.5.0f3. Standalone build. No log file in either the data next to the .exe, or in the locallow folders. “Use player log” is checked.

If I run from the editor, then the log file appears in the data folder.

Does the standalone build need to have the “Developer” flag set as well for logging to be active?

Actually, if I run the app in admin mode, then the log file appears in the data folder.

Unity really needs to add a check to see if it has permissions to write to the data folder, and if not, fall back to the LocalLow folder instead.

1 Like