Page Contents

During operation, FarmBot will generate logs. Logs are short messages that FarmBot will send to the web app server and your web browser so you can monitor operation and investigate when things have gone wrong.

Log types

There are several log types, each with their own color, that indicate the type of message being sent.

Log Type Meaning
SUCCESS FarmBot has successfully completed a task.
Example: Synced
BUSY FarmBot is busy working on a task.
Example: Syncing
WARN A situation may require your attention or make FarmBot unresponsive.
Example: Emergency locking and powering down
ERROR An error or emergency stop has occurred.
Example: Movement failed
INFO General information about what FarmBot is doing.
Example: Starting Water All Plants Sequence
FUN Logs that are just for fun :rabbit:
DEBUG Verbose information relevant to software development and troubleshooting.
Example: Network interface needs configuration: wlan0
ASSERTION Results of ASSERTION commands. (advanced)

Verbosity and filtering

FarmBot sends logs for nearly every action it takes. Sometimes seeing all of the logs can be helpful, for example when trying out new features or when debugging your system. Other times seeing only the most important “high level” logs is desirable, such as when you leave your FarmBot to work for a few weeks and you just periodically check in.

Every log that FarmBot sends has a verbosity of 1, 2, or 3, which can be loosely associated with how important the log is and the level of detail that it reveals about how your FarmBot is operating. A more verbose log (verbosity 3) is usually “lower level” and less important. A less verbose log (verbosity 1) is usually “higher level” and more important.

You can filter logs by clicking FILTER (or, when log filters are currently active, FILTERS ACTIVE). The verbosity sliders allow you to choose to see more verbose or less verbose logs.

Setting a verbosity slider to 0 means you will not see any logs of that type in the logs table or in the status ticker. Setting a slider to 1 means you will see only the most important “high level” logs of that type. 2 means you will see most logs of that type including the most important “high level” logs as well as semi-important “medium level” logs. A setting of 3 means you will see every log of that type, many of which may be unimportant during normal operation.

The PRESETS for NORMAL and MAX set all log types to verbosity level 1 and 3 respectively.

Screen Shot 2019-07-10 at 4.06.29 PM.png

Logs settings menu

You can customize whether or not FarmBot sends some types of logs or not by using the options in the menu. Each option is described in the tooltip shown when the icon is clicked.

Screen Shot 2019-07-10 at 4.05.39 PM.png

Warning

The firmware sends a high volume of messages during normal FarmBot OS communication. Logging these messages may slow down the web app considerably. It is recommended to use this toggle sparingly and disable Received logs when you are done.

Log limits

In order to provide the best possible web application experience to all users, we have implemented the following limitations to the number of logs a FarmBot can store to the web app within a given time period.

Time Period Max Number of Logs
1 minute 250
1 hour 5,000
1 day 25,000

If a log limit is reached, a cooldown period will begin where log storage and display is suspended until the next time period. For example, if the 1 minute limit is reached, logs will be suspended until the next minute. A warning log and toast notification will be displayed, indicating the suspension:

Screen Shot 2018-08-15 at 12.23.33 PM.png

You still have control

Even when log storage and display is suspended, you can still control the FarmBot from the web application (manual movements, E-STOP, etc). FarmBot will also continue to execute scheduled events, take photos, etc while logs are suspended.

Once the cooldown period has ended, logs will resume being stored and displayed in the web application. An informational log and toast notification will indicate this:

Screen Shot 2018-08-15 at 12.23.42 PM.png

Don't fret

We do not expect average users to ever experience these limits. Instead, they are designed to minimize the disruption that an incorrectly configured FarmBot or a malicious attacker can have on our systems.