Logging
Console logs and errors from running your server-side code will appear in the logs section of the Planetary Processing website.
Creating Logs
While your game is running with the latest deployed version, Planetary Processing will log any errors or print() functions triggered by your server-side Lua code.
-- called when this entity receives a message
local function message(self, msg)
-- print the message sent to this entity to logs
print(msg)
endLogs will also be automatically created for any uncaught errors in the server-side code.
Deleting Logs
Logs can be accessed for 1 week before being automatically deleted.
Monitoring Logs
The full list of logs is the located in the logs section of the web panel. Log entries are contained in batches called log groups. Entries and groups can be filtered by game, dimension, time period, and chunk. You can also use a keyword, to search for specific entries.

Groups
Log groups are used to batch display logs from the same source together. The most recent log group will display at the top of the table. A log group will show the date and time of its first and last log entry. You can click on a log group's ID to view individual log entries.

Entries
Each entry will record the time it occurred; the dimension and chunk it occurred in; and the printed message or error itself.
The most recent log entry will appear at the bottom of the table. While a log group is still active, the entries can be refreshed by clicking the word 'refresh' below the table.

Messages
Messages contain any information sent to logs using print() function. Because the logging process is asynchronous, messages will not always arrive in the logs in the exact order they are sent.
Where possible variables will be printed in a pretty format:
Printed entities will display their individual field values, space-separated, including their ID; X, Y, Z positions; Type; and Data table.
Some tables nested within other tables will only show their memory address rather than being prettified.
Tables and certain type-sensitive fields can be concatenated using a comma (
,) instead of a double full stop/period (..). Messages combined with a comma are automatically space-separated.Very large numbers will be displayed using scientific 'e' notation.
Any individual messages greater than 512B in length will be truncated.

Live Logs
A live stream of log messages can be found in the Editor section of the web panel. This stream only shows the message from the most recent log group.
Because the logging process is asynchronous, even for the live logs, messages will not always arrive in the exact order they are sent.

Errors
Errors and their stack traces are displayed in the logs section of the web panel, in the same way as other entries.
The error() function can be used to log custom error messages, with a stack trace. However, most API functions will send an error message automatically, if there is a problem.
Significant errors will also be visible directly from the panel map. Chunks which are failing or contain erroring entities will be coloured red on the map. Clicking on these chunks will show an information icon 🛈 with the error causing the failure.
Log Limit
A game has the potential to produce large quantities of log entries, since each entity can be printing or sending errors every game tick. If the game detects too many logs in the same second, it will display this message:
Rate limit exceeded [40/s]Last updated

