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 NORMAL preset sets all log types to verbosity level 1, while the MAX sets all log types to verbosity level 3, removing all filters.

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.

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:

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:

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.