AMP Panel Gmod Server Instance Console - Not Outputting everything

OS Name/Version: Windows 10 Pro

Product Name/Version: AMP Release “Callisto” v2.5, built 22/03/2024 17:32

Problem Description:
We’re debugging LUA scripts on our server, the instance console does not output everything a srcds should output.
Is there some configuration I have to do to make that console output EVERYTHING?

Steps to reproduce:

  1. Run server
  2. Test some lua scripts that give errors
  3. No Errors in AMP Instance Console.

Actions taken to resolve so far:
Checked all of configuration, found nothing so far.

You’d have to use Docker mode so that the Linux version of the server is in use. Gmod uses a fake console on Windows that isn’t readable by other applications so AMP relies on the srdcs UDP logger plus RCON instead.

I moved to a linux server, and It still doesn’t show everything.

For example here’s the output from Instance console:

03/30/2024 - 11:24:27: Lua Error: [ERROR] gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error! gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error! lua/includes/extensions/table.lua:106: bad argument #1 to 'pairs' (table expected, got nil) 1. error - [C]:-1 2. Execute - gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572 3. Create - gamemodes/helix/gamemode/core/libs/sh_character.lua:88 4. func - gamemodes/helix/gamemode/core/libs/sh_character.lua:997 5. unknown - lua/includes/extensions/net.lua:38
11:27:46
03/30/2024 - 11:27:46: Lua Error: [ERROR] gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error! gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error! lua/includes/extensions/table.lua:106: bad argument #1 to 'pairs' (table expected, got nil) 1. error - [C]:-1 2. Execute - gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572 3. Create - gamemodes/helix/gamemode/core/libs/sh_character.lua:88 4. func - gamemodes/helix/gamemode/core/libs/sh_character.lua:997 5. unknown - lua/includes/extensions/net.lua:38

And here’s one from an SSH Console:

[LOG] test test used command '/PlyWhitelist test overwatch'.
[LOG] test test used command '/PlyWhitelist test metropolice'.
[LOG] test test used command '/PlyWhitelist test administrator'.
Created character '2' for Oisou.
[LOG] Oisou created the character 'UU-C11://CP.UNION-RCT.08358'
L 03/30/2024 - 11:27:46: Lua Error:
[ERROR] gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
lua/includes/extensions/table.lua:106: bad argument #1 to 'pairs' (table expected, got nil)


  1. error - [C]:-1
   2. Execute - gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572
    3. Create - gamemodes/helix/gamemode/core/libs/sh_character.lua:88
     4. func - gamemodes/helix/gamemode/core/libs/sh_character.lua:997
      5. unknown - lua/includes/extensions/net.lua:38



[ERROR] gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
lua/includes/extensions/table.lua:106: bad argument #1 to 'pairs' (table expected, got nil)


  1. error - [C]:-1
   2. Execute - gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572
    3. Create - gamemodes/helix/gamemode/core/libs/sh_character.lua:88
     4. func - gamemodes/helix/gamemode/core/libs/sh_character.lua:997
      5. unknown - lua/includes/extensions/net.lua:38

03/30/2024 - 11:27:46: Lua Error:
[ERROR] gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572: [mysql] SQL Callback Error!
lua/includes/extensions/table.lua:106: bad argument #1 to 'pairs' (table expected, got nil)


  1. error - [C]:-1
   2. Execute - gamemodes/helix/gamemode/core/libs/thirdparty/sv_mysql.lua:572
    3. Create - gamemodes/helix/gamemode/core/libs/sh_character.lua:88
     4. func - gamemodes/helix/gamemode/core/libs/sh_character.lua:997
      5. unknown - lua/includes/extensions/net.lua:38
[LOG] Oisou loaded the character 'UU-C11://CP.UNION-RCT.08358'
[LOG] UU-C11://CP.UNION-RCT.08358 entered observer.
[LOG] UU-C11://CP.UNION-RCT.08358 exited observer at their location.
[LOG] UU-C11://CP.UNION-RCT.08358 used command '/CharSetLanguage UNION english give'.
[LOG] [ENGLISH - IC] UU-C11://CP.UNION-RCT.08358: Hi.
[LOG] UU-C11://CP.UNION-RCT.08358 entered observer.
[LOG] UU-C11://CP.UNION-RCT.08358 exited observer at their location.
[LOG] UU-C11://CP.HELIX-SqL.72425 used command '/CharSetName UU-C11://CP.UNION-RCT.0835 UU-C11://CP.HELIX-SqL.72425'.
[LOG] UU-C11://CP.HELIX-SqL.72425 used command '/Dispatch unrest procedure'.
[LOG] [ENGLISH - IC] UU-C11://CP.HELIX-SqL.72425: Hi.
[LOG] [ENGLISH - IC] UU-C11://CP.HELIX-SqL.72425: 1.

You can try using log 1 to show more log output, but lua messages not being logged properly is a bug in gmod itself.

Gmod like other source games uses a fake console which means applications that actually read the output as opposed to merely displaying it have a hard time. AMP uses the source UDP logger to get its data.

If you started the server outside of AMP and redirected the output (srcds ..... > output.txt) you would also find that the output file doesn’t contain those messages.

So there is no possible way to show every output from tmux in HTTP Instance console?

Because, like I’ve said, once I log into the amp user on Linux, do tmux a, it shows EVERYTHING related to the server, including but not limited to chat etc.

AMP Instance Console shows only some information (that Is also included in tmux)

It’s not I’m afraid because tmux multiplexes an entire terminal. So fake consoles are able to show their output but AMP can’t see it. Nor can applications that use redirection.

There may be a way around this using condebug but I’m not sure how that’ll work.

Meh, that’s unfortunate.
-condebug saves all of output to a txt file, we need to see everything in real time instead.

Maybe in the future we’ll see a terminal emulator of some sorts in AMP so it’ll make it possible.

Thank you for your help

Other panels work by continuously reading the console.txt file. There is a trick I can do using a FIFO stream with a matching name as a way to avoid polling and get data in real time.