debugging_complex_programs
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
debugging_complex_programs [2018/12/26 11:12] – [Running backup on the new device] emozolyak | debugging_complex_programs [2021/01/19 13:55] – [Project initialization] emozolyak | ||
---|---|---|---|
Line 2: | Line 2: | ||
===== Project initialization ===== | ===== Project initialization ===== | ||
+ | ===== Proper commenting ===== | ||
+ | Use commenting you will understand next time you or someone will see you code. | ||
+ | <code lua> | ||
+ | ----------------------------------------CALC. DAY ECONOMY -------------------------------------------------- | ||
+ | LimitMonthDayYesterday = GetReg(" | ||
+ | HeatEnergyDay= GetReg(" | ||
+ | WriteReg(" | ||
+ | ------------------------------------------------------------------------------------------------------------ | ||
+ | </ | ||
+ | |||
==== Non - volatile registers ==== | ==== Non - volatile registers ==== | ||
Line 46: | Line 56: | ||
===== Debug messages ===== | ===== Debug messages ===== | ||
- | It is desirable after the key moments of logic or calculations in scripts to immediately put the functions INFO, ERROR, DEBUG, TRACE, with respectve values at this point, script' | + | It is desirable after the key moments of logic or calculations in scripts to immediately put the functions INFO, ERROR, DEBUG, TRACE, with respectve values at this point, script' |
+ | |||
+ | When there is a lot of records in the communication log, you can filter out unneccerary output from scripts with this [[http:// | ||
+ | |||
+ | In the script editor, there is a debugging console, which always prints out the functions INFO, DEBUG, ERROR, TRACE regardless of the system log level settings. If the output changes too quickly to analize, you can slow down the script by changging in execution type to " | ||
+ | |||
+ | There are also messaging functions like [[ http:// | ||
+ | |||
+ | ===== Modular principle ===== | ||
- | When there is a lot of records in the communication log, you can filter out unneccerary output from scripts | + | It is recommended that you split complex |
- | In the script editor, there is a debugging console, which always prints out the functions INFO, DEBUG, ERROR, TRACE regardless of the system log level settings. | ||
- | However, in a large system with many interrelated scripts, when there is a lot of debugging data, it becomes inconvenient to look for the necessary data, especially if you need to track a specific chain of execution of several scripts that can not be called at specific moments, not in each scan. | ||
- | In addition, filtering unnecessary information in logs is also useful from the point of view of performance, | ||
- | You can proceed as follows - assign your debugging function, which will be called only if the debug printing of this script is allowed. For example, you can write the ids of the scripts in the ' | ||
debugging_complex_programs.txt · Last modified: 2022/01/15 20:50 by 127.0.0.1